הטכניון מכון טכנולוגי לישראל תורת הקומפילציה , סמסטר חורף תשע"ז מבחן סוף סמסטר מועד ב' מרצה אחראי: מתרגלים: ד ר אוהד שחם אבנר אליזרוב

מסמכים קשורים
הטכניון מכון טכנולוגי לישראל תורת הקומפילציה , סמסטר חורף תשע"ו מבחן סוף סמסטר מועד א' מרצה אחראי: מתרגלים: ד ר אוהד שחם אבנר אליזרוב

Microsoft Word Viewer - Winter0708-MoedC.doc

מבחן סוף סמסטר מועד ב 28/10/08 מרצה אחראית: דר שירלי הלוי גינסברג מתרגלים: גלעד קותיאל, גדי אלכסנדרוביץ הוראות: א. בטופס המבחן 6 עמודים (כולל דף זה) ו

מבחן סוף סמסטר מועד א 15/02/08 מרצה אחראית: דר שירלי הלוי גינסברג מתרגלים: גלעד קותיאל, דניאל גנקין הוראות: א. בטופס המבחן 7 עמודים ו 4 דפי נוסחאות. ב

אוניברסיטת חיפה החוג למדעי המחשב מרצה: שולי וינטנר מתרגלים: נעמה טוויטו, מחמוד שריף מבוא למדעי המחשב סמסטר א' תשע"ב בחינת סיום, מועד א', הנחי

מבוא למדעי המחשב - חובלים

אוניברסיטת חיפה החוג למדעי המחשב מרצה: שולי וינטנר מתרגלים: נעמה טוויטו, מחמוד שריף מבוא למדעי המחשב סמסטר א' תשע"ב בחינת סיום, מועד א', הנחי

אוניברסיטת חיפה החוג למדעי המחשב מבוא למדעי המחשב מועד א' סמסטר ב', תשע"ג, משך המבחן: שעתיים וחצי חומר עזר: אסור הנחיות: וודאו כי יש בידיכם

מבוא למדעי המחשב - חובלים

מהוא לתכנות ב- JAVA מעבדה 3

אוניברסיטת חיפה החוג למדעי המחשב.5.6 מבוא למדעי המחשב סמסטר א' תשע"ז בחינה סופית מועד א', מרצה: שולי וינטנר מתרגלים: סמאח אידריס, ראמי עילבו

מספר זהות: סמסטר ב' מועד א' תאריך: 11102/4// שעה: 9:22 משך הבחינה: 3 שעות חומר עזר: אין מותר השימוש במחשבון פשוט בחינה בקורס: מבני נתונים מרצה: הדר בי

אוניברסיטת בן גוריון בנגב תאריך המבחן: שקולניק אלכסנדר שם המרצה: מר בשפת JAVA מבוא לתכנות מבחן ב: מס' הקורס : הנדסת תעשיה וניהול מ

Microsoft Word B

Slide 1

מבוא למדעי המחשב

מבחן 7002 פרטים כלליים מועד הבחינה: בכל זמן מספר השאלון: 1 משך הבחינה: 3 שעות חומר עזר בשימוש: הכל )ספרים ומחברות( המלצות: קרא המלצות לפני הבחינה ובדי

PowerPoint Presentation

שאלהIgal : מערכים דו מימדיים רקורסיה:

תרגול 1

מבוא לתכנות ב- JAVA תרגול 7

סדנת תכנות ב C/C++

תורת החישוביות תרגול הכנה לוגיקה ותורת הקבוצות מה יש כאן? בקורס תורת החישוביות נניח ידע בסיסי בתורת הקבוצות ובלוגיקה, והכרות עם מושגים בסיסיים כמו א"ב

Microsoft Word - c_SimA_MoedB2005.doc

תכנות מונחה עצמים א' – תש"ע

מקביליות

מקביליות

הגשה תוך שבוע בשעת התרגול

פתרון מוצע לבחינת מה"ט ב_שפת c מועד ב אביב תשע"ט, אפריל 2019 מחברת: גב' זהבה לביא, מכללת אורט רחובות שאלה מספר 1 מוגדרת מחרוזת המורכבת מהספרות 0 עד 9.

Slide 1

מקביליות

שאלהIgal : מערכים דו מימדיים רקורסיה:

אוניברסיטת בן גוריון בנגב תאריך המבחן: שם המרצה: מר אלכסנדר שקולניק, בשפת JAVA מבחן ב: מבוא לתכנות מס' הקורס : מיועד לתלמידי : הנד

שעור 6

תאריך פרסום: תאריך הגשה: מבנה נתונים תרגיל 5 )תיאורטי( מרצה ומתרגל אחראים: צחי רוזן, דינה סבטליצקי נהלי הגשת עבודה: -את העבודה יש לה

Microsoft PowerPoint - Lecture1

שבוע 4 סינטקס של HACK ASSEMBLY ניתן להשתמש בשלושה אוגרים בלבד:,A,D,M כולם בעלי 16 ביטים. M אינו אוגר ישיר- הוא מסמן את האוגר של ה RAM שאנחנו מצביעים ע

מבוא למדעי המחשב

Microsoft Word - Ass1Bgu2019b_java docx

שאלהIgal : מערכים דו מימדיים רקורסיה:

Microsoft PowerPoint - rec3.ppt

מבוא לתכנות ב- JAVA תרגול 11

תרגול מס' 1

תכנון אלגוריתמים עבודת בית 4: תכנון אלגוריתמים תאריך הגשה: 02: , בצהריים,תא מספר 66 בקומת כניסה של בניין 003 מתרגל אחראי: אורי 0

מספר נבחן / תשס"ג סמסטר א' מועד א' תאריך: שעה: 13:00 משך הבחינה: 2.5 שעות בחינה בקורס: מבחנים והערכה א' מרצה: ד"ר אבי אללוף חומר עזר

תורת הקומפילציה

Slide 1

Slide 1

תכנות דינמי פרק 6, סעיפים 1-6, ב- Kleinberg/Tardos סכום חלקי מרחק עריכה הרעיון: במקום להרחיב פתרון חלקי יחיד בכל צעד, נרחיב כמה פתרונות אפשריים וניקח

פקולטה: מחלקה: שם הקורס: קוד הקורס: מדעי הטבע מדעי המחשב ומתמטיקה מתמטיקה בדידה תאריך בחינה: _ 07/07/2015 משך הבחינה: 3 שעות סמ' _ב' מועד

Tutorial 11

הגשה תוך שבוע בשעת התרגול

Slide 1

Microsoft Word - ExamA_Final_Solution.docx

Microsoft Word - עבודת פסח לכיתה י 5 יחל.doc

Slide 1

מטלת מנחה (ממ"ן) 11 הקורס: חשבון אינפיניטסימלי II חומר הלימוד למטלה: יחידות 2,1 4 מספר השאלות: 7 משקל המטלה: נקודות סמסטר: ב 2007 מו

Slide 1

Microsoft PowerPoint - rec1.ppt

מבוא לאסמבלי

תיק משימטיקה מגרף הנגזרת לגרף הפונקציה להנגשה פרטנית נא לפנות: כל הזכויות שמורות

ex1-bash

מספר מחברת: עמוד 1 מתוך 11 ת"ז: תשע"א מועד ב סמסטר א' תאריך: 00:11 שעה: 0 שעות הבחינה: משך כל חומר עזר אסור בשימוש בחינה בקורס: מבוא למדעי ה

2013/14 אוניברסיטת חיפה מבוא למדעי מחשב, מעבדה מטרת המעבדה: לתרגל את המעבר מאלגוריתם לקוד C כמה שיותר. הוראות:.1.2 ניתן לעבוד ביחידים או בזוגות. (יש מ

פתרון 2000 א. טבלת מעקב אחר ביצוע האלגוריתם הנתון עבור הערכים : פלט num = 37, sif = 7 r האם ספרת האחדות של sif שווה ל- num num 37 sif 7 שורה (1)-(2) (

אנליזה מתקדמת

PowerPoint Presentation

תרגול 1

מבחן בפיתוח מערכות תוכנה בשפת Java ( )

PowerPoint Presentation

PowerPoint Presentation

Microsoft PowerPoint - lec10.ppt

תרגיל 9 מבוא ללוגיקה ותורת הקבוצות, סתיו תשע"ד 1. תהי L השפה בעלת סימן פונקצייה דו מקומי G, סימן פונקציה חד מקומי T, סימן יחס תלת מקומי.c, d וקבועים L

משימה תכנית המתרגמת קטעי טקסט לשפה אחרת הקלט: קובץ המכיל את קטעי הטקסט וכן את השפה אליה רוצים לתרגם תרגול מס' 4: המתרגם שימוש במחלקות קיימות תכנות מתק

פייתון

PowerPoint Presentation

הטכניון מכון טכנולוגי לישראל הפקולטה למדעי המחשב הוראות הגשה: ההגשה בזוגות. הוסיפו שמות, ת.ז., אי-מייל, תא אליו יש להחזיר את התרגיל ואת תשובותיכם לתרג

Microsoft Word - pitaron222Java_2007.doc

שיעור 1

תוכן העניינים

תוכן העניינים

פקולטה לחינוך מנהל סטודנטים Beit Berl College الكلية االكاديمية بيت بيرل 20/06/2016 י"ד/סיון/תשע"ו ייעוץ וירטואלי הרכבת מערכת )רישום לקורסים( באמצעות

Microsoft PowerPoint - T-10.ppt [Compatibility Mode]

290/402//3 המרתמשובשערעולמילקייםמתקןחדשלתקןקיים רקע: קיימיםארבעהמקורותאפשרייםלמיפוילמסרהמשוב: כשהמסרנקלט עלפיהסכימההמתוארתבמסמךהAPIשלכל מסרומסראליומתי

. שאלה 1: ה אי x] T : R 4[ x] R 4[ אופרטור ליניארי מוגדר על-ידי T( ax bx cx d) bx ax cx c )13 נק'( א( מצאו את הערכים העצמיים, המרחבים העצמיים

Microsoft Word - c_SimA_MoedA2006.doc

יוםראשון, 02 ליולי 2014 סמסטר סוף מבחן )236703( עצמים מונחה תכנות - א' מועד 2014, אביב סמסטר קמחי יחיאל ד"ר מרצה: מסינג מיטל עבדאלקאדר, כרם גלעד, ערן

תרגיל בית מספר 1#

<4D F736F F D20FAF8E2E5EC20E0ECE2E1F8E420EEF2E5F8E D F9E0ECE5FA2E646F63>

2019 שאלות מומלצות לתרגול מס' דיפרנציאביליות של פונקציה סקלרית )המשך(. כלל השרשרת. S = ( x, y, z) z = x + 3y על המשטח מצאו נקודה בה מישור משיק

תוכן העניינים: פרק צמצומים ומימושים של פונקציות בוליאניות... 2 צמצומים של פונקציות באמצעות מפת קרנו:...2 שאלות:... 2 תשובות סופיות:... 4 צמצום

PowerPoint Presentation

הטכניון מכון טכנולוגי לישראל אלגוריתמים 1 )443432( סמסטר חורף הפקולטה למדעי המחשב תרגול 9 מסלולים קלים ביותר תרגיל APSP - 1 עד כה דנו באלגור

דף נגזרות ואינטגרלים לשאלון 608 כללים למציאת נגזרת של פונקציה: n 1. y' n x n, y הנגזרת x.1 נכפול בחזקה )נרשום אותה משמאל ל- (. x א. נחסר אחד מהחזקה. ב

Microsoft Word - tutorial Dynamic Programming _Jun_-05.doc

מועד: א בחינה סופית במתמטיקה דיסקרטית משך הבחינה: 2 1 שעות מרצה: פרופ' תאופיק מנסור תאריך: סמסטר: א תשע"ח m 2 הוראות לנבחן: )1( הבחינה מו

מבוא למדעי המחשב

Microsoft Word - beayot hespek 4 pitronot.doc

תמליל:

28.02.2017 מבחן סוף סמסטר מועד ב' מרצה אחראי: מתרגלים: ד ר אוהד שחם אבנר אליזרוב מיכל בדיאן הילה פלג עידן שורץ הוראות: א. ב. ג. ד. ה. ו. ז. ח. ט. בטופס המבחן x עמודים מהם 4 דפי נוסחאות. בדקו שכל העמודים ברשותכם. משך המבחן שלוש שעות )180 דקות(. אסור כל חומר עזר פרט לדף הנוסחאות המצורף לבחינה. במבחן 5 שאלות. כל השאלות הינן חובה. משקל כל שאלה מופיע בראשיתה. )חלוקת המשקל בין הסעיפים בכל שאלה אינה בהכרח אחידה.( ניתן לציין לגבי סעיף או שאלה "לא יודע/ת". תשובה זו תזכה ב- 20% מהניקוד של הסעיף או השאלה. תשובות שגויות לא יזכו בניקוד. חובה לנמק כל תשובה. לא יינתן ניקוד על תשובות ללא נימוק. קראו את כל המבחן לפני שאתם מתחילים לענות על השאלות. אין צורך להגיש את הטופס בתום הבחינה. את התשובות לשאלות יש לרשום במחברת הבחינה בלבד. בהצלחה!

שאלה )12 1 נק'(:סיווג מאורעות int A[10]; int i = 0; scanf("%d",&x); נתון קטע הקוד הבא בשפת C: בסעיפים הבאים ישנה גישה שגויה למערך. נמקו בקצרה מהו השלב המוקדם ביותר שבו תתגלה הגישה השגויה. בתשובתכם התייחסו לשלבים לקסיקלי, תחבירי, סמנטי,אופטימיזציה וזמן ריצה. A[ i ].1 A[x].2 [ 9 ]ש 3. A[i+1.1].4 A[i+1).5 A(i).6 שאלה (28 2 נק'(: רשומות הפעלה אנו מעוניינים לבנות מנגנון רשומות הפעלה חדש כך שבכל שלב במהלך ריצת התוכנית לכל פונקציה תהיה לכל היותר רשומת הפעלה אחת. )12 נקודות( תארו כיצד הייתם בונים את מנגנון רשומות ההפעלה. התיאור יכול לכלול כל מבני נתונים העולה לרוחכם וחייב לכלול התייחסות מלאה לשלבי הקריאה לפונקציה והחזרה מפונקציה. בנוסף התיאור חייב לכלול התייחסות מלאה לגבי הגישה לפרמטרים ומשתנים מקומיים. )4 נקודות( הסבירו אילו תוכניות הנתמכות על ידי המנגנון המקורי לא יתמכו במנגנון החדש. הציעו אנליזה פשוטה ושמרנית לזיהוי סוג זה של תוכניות. )12 נקודות( הרחיבו את המנגנון החדש לתמיכה ב.dynamic scoping הסבירו מהם היתרונות בשימוש במנגנון זה לscoping dynamic מול שימוש במנגנון הקיים. במידה ואינכם רואים יתרונות והתמיכה המוצעת איננה יעילה יותר, שנו את המנגנון מסעיף 1 על מנת לקבל תמיכה יעילה יותר מבמנגנון המקורי. )2 נקודות( תנו דוגמא לשימוש ב.dynamic scoping.1.2.3.4

שאלה )23 3 נקודות( אופטימיזציה ו DFA )4 נקודות( תנו דוגמא למצב שבו לא נרצה לבצע את האופטימיזציות שנלמדו בכיתה )או חלקן( והסבירו מדוע. )6 נקודות( ענו על הסעיפים הבאים - א( ב( מה היתרון של ביצוע אופטימיזציות על קוד בשפת ביניים לעומת על קוד בשפת מכונה? מה היתרון של ביצוע אופטימיזציות על קוד בשפת מכונה לעומת על קוד בשפת ביניים? מה היתרון של ביצוע אופטימיזציות בזמן ריצה )JIT( לעומת בזמן קומפילציה?.a.b.c )13 נקודות( נתונה פקודה "סימון" חדשה מהצורה.tag(p,k) עבור פקודה זו, p הוא שם של משתנה ו k הוא גודל קבוע וידוע בזמן קומפילציה. כמו כן נתונה פקודת untag(m) כך ש- m הוא גודל קבוע וידוע בזמן קומפילציה. נאמר שמשתנה x עדיין מסומן לפני שורה מסוימת בתוכנית, אם הסימון האחרון של x על כל מסלול לשורה זו לא הוסר. סימון על מסלול כלשהו מוסר במקרים הבאים- a. פקודת untag(m) מוחקת סימון לכל המשתנים p במסלול כך שפקודת הסימון האחרונה שלהם על המסלול היא tag(p,k) ו-.k<m b. השמה מחדש למשתנה מוחקת את הסימון שלו. ג( למשל בקטע הקוד הבא: 1. b:=0 2. p:=3 3. tag(p,8) 4. tag(r,4) 5. if(b>0) goto 9 6. tag(p,30) 7. untag(20) 8. tag(r,30) 9. r:=2 10. print(a) לפני שורות 6 ו- 7 המשתנים p ו r מסומנים. לפני שורה 8 המשתנה p מסומן. לפני שורה 9 המשתנים r ו p מסומנים. לפני שורה 10 המשתנה p מסומן. הראו אנליזת DFA המחשבת לכל בלוק בסיסי את קבוצת המשתנים המסומנים לפניו. הערות: ניתן להגדיר שורה בודדת כבלוק בסיסי. יורדו נקודות על אי הגדרה מלאה של.DFA כלומר, יש לציין מהם פריטי המידע, האם האנליזה היא,must/may קדמית או אחורית, ושאר פרמטרי DFA שנלמדו בכיתה. - -

שאלה )22 4 נק'(: ניתוח תחברי או סמנטי בכל סעיפי השאלה, טרמינלים מסומנים באות קטנה ובקו תחתון, משתנים באות גדולה. נתון דקדוק Polish Notation עבור אריתמטיקה. ב- Notation,Polish מופיע קודם האופרטור, ורק אחריו האופרנדים לפי הסדר שלהם בהפעלה: E -> + E E E -> - E E E -> * E E E -> num כך ישוערך + 2 3 ל- 5, וכן + 1 1 3 * ל- 6. הניחו כי ל- E אין אף תכונה סמנטית, ול- num יש תכונה val המכילה את הערך המספרי של הלקסמה. א. האם הדקדוק הוא?LL(1) האם הוא?SLR נמקו את שתי התשובות. ב. נרצה לבצע את הבדיקה הסמנטית הבאה על ביטוי בשפה: עבור פעולת כפל בה קיים אופרנד שהוא אפס נרצה לתת שגיאה אם האופרנד השני הוא ביטוי מורכב. אם הוא מספר, אין שגיאה. למשל, הביטוי הבא תקין: אבל הביטוי הבא יגרום לשגיאה: * - 3 + 1 2 1 * - 3 + 1 2 + 5 6 האם ניתן לבצע בדיקה זו ללא מעבר נוסף על העץ? אם כן, הסבירו כיצד. אחרת, תארו את המניעה. יש להתייחס בתשובתכם לכל מחלקה אליה הראיתם שהדקדוק שייך בסעיף א', ואם התשובה שונה להסביר מדוע. אין צורך לענות עבור מחלקה אליה הדקדוק לא שייך. ג. )לא תלוי בסעיפים הקודמים( האם ייתכן אוטומט פרפיקסי עבור LR(1) בו מתקיים בדיוק המצב הבא? אם כן, הראו דקדוק בו המצב מופיע. אם לא, הפריכו את הקיום. A->b caa,a A->b caa,c

15( נקודות(: Backpatching שאלה 5 נתון מבנה הבקרה החדש: S skipto E1 do E2: L end L L 1 S S מבנה הבקרה מקבל מספר פקודות ב L.)statements( יש לבצע E2 פקודות אחת אחרי השנייה, החל מהפקודה מספר E1 )הספירה מתחילה מ 1 (. ניתן להניח ש E1 ו E2 הם מסוג.rvalue יש לצאת מהמבנה במידה ויש שגיאה מהצורה: E1\E2 שליליים או חורגים ממספר הפקודות ב L. דוגמת הרצה: עבור הקוד הבא- SkipTo 2 do 2: print( Backpatching ); print( is ); print( FUN ); end יודפס is FUN בלבד. א. ב. )5 נק'( הציעו פריסת קוד המתאימה לשיטת backpatching עבור מבנה הבקרה הנ"ל. על הקוד הנוצר להיות יעיל ככל האפשר.הסבירו מהן התכונות שאתם משתמשים לכל משתנה. )10 נק'( כתבו סכימת תרגום בשיטת backpatching המייצרת את פריסת הקוד שהצעתם בסעיף הקודם. על הסכימה להיות יעילה ככל האפשר, הן מבחינת זמן הריצה שלה והן מבחינת המקום בזיכרון שנדרש עבור התכונות הסמנטיות. בהצלחה!!

נוסחאות ואלגוריתמים כל ההגדרות מתייחסות לדקדוק( S.G = (V, T, P, first() = { t T * t (VT)* } Top Down follow(a) = { t T{$} S$ * At (VT)* (VT)*( $) } select(a) = first()follow(a) first() * otherwise הגדרה: דקדוק G הוא ( LL(1 אם ורק אם לכל שני כללים ב- G השייכים לאותו משתנה A מתקיים: select(a) select(a) = הגדרת טבלת המעברים P{error} M : V (T{$}) עבור דקדוק :LL(1) M[A, t] = A error t select(a ) t select(a ) for all A P Q.push(S) while!q.empty() do X = Q.pop() t = next token if X T then if X = t then SHIFT else ERROR else end if end while t = next token if t = $ then ACCEPT else ERROR // X V if M[X, t] = error then ERROR else REPLACE(X, t) אלגוריתם מנתח :LL(1)

Bottom Up פריט LR(0) הוא ) (A כאשר A P סגור )closure( על קבוצת פריטים I מוגדר באופן אינדוקטיבי:.closure(I) = I בסיס: o (B ) closure(i) גם,B P אז לכל,(A B) closure(i) צעד: אם o פונקציית המעברים של האוטומט: (I, X) = { closure(a X) (A X) I } פריט LR(1) הוא t) (A, כאשר t T{$},A P סגור )closure( על קבוצת פריטים I מוגדר באופן אינדוקטיבי:.closure(I) = I בסיס: o o צעד: אם closure(i),(a B, t) אז לכל B P ולכל first(t),x גם (B, x) closure(i) פונקציית המעברים של האוטומט: (I, X) = { closure(a X, t) (A X, t) I } SHIFTj (Ii,t) = Ij action[i, t] = REDUCEk rule k is A, (A ) Ii and t follow(a) ACCEPT (S S) Ii and t = $ ERROR otherwise הגדרת טבלת action למנתח :SLR SHIFTj (Ii,t) = Ij action[i, t] = REDUCEk rule k is A and (A, t) Ii ACCEPT (S S, $) Ii and t = $ ERROR otherwise הגדרת טבלת action למנתח :LR(1) הגדרת טבלת goto למנתח SLR ו- :LR(1) goto[i, X] = j error (Ii, X) = Ij otherwise

אלגוריתם מנתח :shift/reduce Q.push(0) // where 0 is the initial state of the prefix automaton while true do k = Q.top().state t = next token do action[k, t] end while ניתוח סמנטי :L-attributed procedure dfvisit(node n) : foreach child m of n in left-to-right order do evaluate the inherited attributes of m dfvisit(m) end evaluate the synthesized attributes of n אלגוריתם dfvisit לניתוח סמנטי עבור הגדרות ייצור קוד בשיטת Backpatching פונקציות: makelist(quad) merge(list1,list2) emit(code string) nextquad() backpatch(list, quad) newtemp() יוצרת רשימה ריקה עם איבר אחד )ה"חור".)quad מחזירה רשימה ממוזגת של הרשימות list1, list2 מדפיסה קוד בשפת הביניים ומאפשרת להדפיס פקודות קפיצה עם "חורים". מחזירה את כתובת הרביעיה )הפקודה( הבאה שתצא לפלט. מקבלת רשימת "חורים" list וכתובת,quad ו"מטליאה" את הרשימה כך שבכל החורים תופיע הכתובת.quad מחזירה שם של משתנה זמני חדש שאינו נמצא בשימוש בתכנית. משתנים סטנדרטיים: S: גוזר פקודות )statements( בשפה. תכונות: :nextlist רשימת כתובות של פקודות המכילות חור שיש להטליא בכתובת הפקודה הבאה o לביצוע אחרי הפקודה הנגזרת מ- S. B: גוזר ביטויים בוליאניים. תכונות: :truelist רשימת כתובות של פקודות המכילות חור שיש להטליא בכתובת אליה יש לקפוץ אם הביטוי הבוליאני מתקיים. o :falselist רשימת כתובות של פקודות המכילות חור שיש להטליא בכתובת אליה יש לקפוץ אם הביטוי הבוליאני אינו מתקיים. o E: גוזר ביטויים אריתמטיים. תכונות: :E.place שם המשתנה הזמני לתוכו מחושב הביטוי האריתמטי. o

קוד ביניים x := y op z x := op y x := y goto L if x relop y goto L param x call p, n return y x := y [ i ] x [ i ] := y x := addr y x := * y * x := y סוגי פקודות בשפת הביניים:. 1 משפטי השמה עם פעולה בינארית 2. משפטי השמה עם פעולה אונרית 3. משפטי העתקה 4. קפיצה בלתי מותנה 5. קפיצה מותנה 6. פרמטרים וקריאה לפרוצדורות indexed assignments.7 8. השמה של כתובות ומצביעים Data-Flow Analysis ההגדרות מתייחסות ל.G=(V,E):CFG in(b) (S,B) E out(b) f B out(s) in(b) in(b) הצורה הכללית של המשוואות בחישוב סריקה קדמית: או (S,B) E out(s) out(b) in(b) f (B,S) E B in(s) out(b) out(b) הצורה הכללית של המשוואות בחישוב סריקה אחורית: או (B,S) E in(s)