שאלות חזרה למבחן

מסמכים קשורים
Comp. Arch. Lecture 1

מבוא לאסמבלי

תרגול מס' 1

מערכות הפעלה

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

מתכונת עיצוב 3013

מדינת ישראל סוג הבחינה: בגרות לבתי ספר על יסודיים משרד החינוך מועד הבחינה: קיץ תשע"ה, 2015 אין להעביר את הנוסחאון לנבחן אחר נספח לשאלון: נוסחאו

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

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

מבנה מחשבים ספרתיים

Homework Dry 3

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

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

בחן במערכות הפעלה

Microsoft PowerPoint - lecture4_handnotes_2013_2.ppt [Compatibility Mode]

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

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

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

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

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

בחן במערכות הפעלה

Microsoft PowerPoint - Lecture1

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

Slide 1

פתרון מבחן במיקרו בקרים תשעו

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

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

מבנה מחשבים ספרתיים

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

Microsoft PowerPoint - rec3.ppt

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

Microsoft Word B

PowerPoint Presentation

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

BIG DATA תיאור הקורס המונח Big Data הולך וצובר תאוצה בשנים האחרונות, הוא הופך למגמה רווחת בתעשייה. המשמעות הפרקטית של המונח Big Data הינה טכנולוגיות נ

מקביליות

PowerPoint Presentation

Slide 1

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

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

Limit

שעור 6

234114

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

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

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

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

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

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

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

Microsoft Word - moed_A_sol.doc

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

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

תאריך הבחינה 30

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

Slide 1

Slide 1

PRESENTATION NAME

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

מטלב לפיסיקאים שיעור 1

PowerPoint Presentation

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

מערכות הפעלה

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

Slide 1

מצגת של PowerPoint

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

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

PowerPoint Presentation

Untitled

PowerPoint Presentation

Slide 1

Slide 1

דוגמאות שהוצגו בהרצאה 10 בקורס יסודות מערכות פתוחות דוגמה 1 דוגמאות של פונקציות ב- awk שמראות שהעברת פרמטרים של משתנים פשוטים היא by value והעברת פרמט

Microsoft Word - c_SimA_MoedA2006.doc

I am Very Good - Stage3 Pwned! מאת רונן שוסטין )Antartic( ופלג הדר )P( הקדמה במאמר זה נסקור טכניקות אנטי-דיבאגינג מסויימות. כרקע אנו ממליצים לקרוא את

Slide 1

Microsoft PowerPoint - lec2.ppt

Disclaimer מסמך זה הינו סיכום און-ליין של השיעור ולא עבר עריכה כלל. מצאת טעות? שלח/י לי מייל ואתקן: 07/05/2009 קורס: מערכות ה

Microsoft PowerPoint - L01-n.ppt

Microsoft Word - lec

Slide 1

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

<4D F736F F D20EEF9E5E5E0E5FA20E3E9F4F8F0F6E9E0ECE9E5FA2E646F63>

המדריך המהיר לכתיבה של וירוס פשוט מאת דן בומגרד Bomgard( )Dan תוכן העניינים הקדמה... 2 דרישות מהתוכנית... 3 כלים... 3 תכנון כללי( Design (High Level..

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

1 תבניות טקסט מהי תבנית טקסט? שימוש ב- Characters Meta שימוש ב- Expression Grouping שימוש ב- Quantifiers תת תבניות הפונקציה preg_match הפונקציה preg_m

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

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

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

המשימה תרגול מס' 5: קלט-פלט במערכות הפעלה שונות יש סימונים שונים עבור ירידת שורה :)newline( ב- UNIX/Linux )Line Feed( \n ב- Windows )Carriage Return +

ex1-bash

מבנים בדידים וקומבינטוריקה סמסטר אביב תשע"ט מספרי רמזי תרגול 11 הגדרה: (t R = R(s, הוא המספר הטבעי הקטן ביותר כך שבכל צביעה של צלעות הגרף וכחול(, קיים

Office 365 ProPlus בחינם לסטודנטים באוניברסיטת בן גוריון בנגב הוראות סטודנטים באוניברסיטת בן גוריון בנגב יכולים להוריד ולהתקין את חבילת התוכנה Office

תרגול 1

תמליל:

Computer Architecture and Assembly Language Practical Session 13 שאלות חזרה למבחן

שאלה 1 ADD dword [x], 0x10001 כמה גישות לזיכרון, במקרה הגרוע, אורך ה- op-code הוא 2 בתים? דרושות לביצוע הפקודה אם ידוע כי פתרון: Fetch אורך הקוד הבינארי 10 בתים 2 עבור,opcode 4 עבור הכתובת,x ועוד 4 עבור מהספר המיידי. קריאתם מהזיכרון דורשת 4 גישות לזיכרון לכל היותר Read יש לקרוא 4 בתים החל מהכתובת --< 2 גישות לזיכרון לכל היותר Write יש לכתוב 4 בתים, וזה דורש 2 גישות לזכרון במקרה הגרוע. בסה"כ 8 גישות לזיכרון

שאלה 2 נתונה הגדרת macro הבאה, וכן נתונים בזכרון: %macro print 3 pusha mov eax, 4 ; write mov, %1 ; file descriptor mov ecx, %2 ; address mov edx, %3 ; byte count int 0x80 popa %endmacro section.rodata File: dd 1 MJ: db Beat it, 10, 0 איזה מהשימושים הבאים במקרו יגרום לפעולה לא נכונה של התוכנית: a) mov, MJ print 1,, 9 b) print 1, MJ, 9 c) print dword [File], MJ, 9 d) mov edx, 9 print 1, MJ, edx

שאלה 2 נתונה הגדרת macro הבאה, וכן נתונים בזכרון: %macro print 3 pusha mov eax, 4 ; write mov, %1 ; file descriptor mov ecx, %2 ; address mov edx, %3 ; byte count int 0x80 popa %endmacro section.rodata File: dd 1 MJ: db Beat it, 10, 0 איזה מהשימושים הבאים במקרו יגרום לפעולה לא נכונה של התוכנית: a) mov, MJ print 1,, 9 b) print 1, MJ, 9 c) print dword [File], MJ, 9 d) mov edx, 9 print 1, MJ, edx

שאלה 3? 0 ל- )3 מה תחזיר הפונקציה Gloat ברגיסטר )עבור בין 2 2 בחזקת 2 ב( א( 0 בחזקת ג( כפול ד( Gloat: shl, 2 jmp [+Tab] Tab: dd F4 dd F3 dd F2 dd F1 F1: add, 4 F2: add, 4 F3: add, 4 F4: shr, 2 ret

שאלה 3? 0 ל- )3 מה תחזיר הפונקציה Gloat ברגיסטר )עבור בין 2 2 בחזקת 2 ב( א( 0 בחזקת ג( כפול ד( Gloat: shl, 2 jmp [+Tab] Tab: dd F4 dd F3 dd F2 dd F1 F1: add, 4 F2: add, 4 F3: add, 4 F4: shr, 2 ret = 0 shl 0,2 = 0 jmp [0+Tab] = jmp F4 shr 0, 2 = 0 = 0 = 2 shl 2,2 = 2*2*2 = 8 jmp [8+Tab] = jmp F2 F2: add 8, 4 = 12 F3: add 12, 4 = 16 shr 16, 2 = 16/2/2 = 4 = 4 = 1 shl 1,2 = 1*2*2 = 4 jmp [4+Tab] = jmp F3 F3: add 4, 4 = 8 shr 8, 2 = 8/2/2 = 2 = 2 = 3 shl 3,2 = 3*2*2 = 12 jmp [12+Tab] = jmp F1 F1: add 12, 4 = 16 F2: add 16, 4 = 20 F3: add 20, 4 = 24 shr 24, 2 = 24/2/2 = 6 = 6

שאלה 3? 0 ל- )3 מה תחזיר הפונקציה Gloat ברגיסטר )עבור בין 2 2 בחזקת 2 ב( א( 0 בחזקת ג( כפול ד( Gloat: shl, 2 jmp [+Tab] Tab: dd F4 dd F3 dd F2 dd F1 F1: add, 4 F2: add, 4 F3: add, 4 F4: shr, 2 ret = 0 shl 0,2 = 0 jmp [0+Tab] = jmp F4 shr 0, 2 = 0 = 0 = 2 shl 2,2 = 2*2*2 = 8 jmp [8+Tab] = jmp F2 F2: add 8, 4 = 12 F3: add 12, 4 = 16 shr 16, 2 = 16/2/2 = 4 = 4 = 1 shl 1,2 = 1*2*2 = 4 jmp [4+Tab] = jmp F3 F3: add 4, 4 = 8 shr 8, 2 = 8/2/2 = 2 = 2 = 3 shl 3,2 = 3*2*2 = 12 jmp [12+Tab] = jmp F1 F1: add 12, 4 = 16 F2: add 16, 4 = 20 F3: add 20, 4 = 24 shr 24, 2 = 24/2/2 = 6 = 6

L: dw 7 L1: dw 0xF7AC a) mov ax, [L] c) mov eax, [L1] mov bx, [L1] rol eax, 16 mov [L1], ax mov [L1], eax mov [L], bx שאלה 4 עלינו להחליף בין ערכי המשתנים L ו- L1 המוגדרים בצורה הבאה: אילו מקטעי הקוד הבאים לא יבצע את זאת כנדרש? RAM b) mov eax, [L] d) mov eax, [L] rol eax, 16 xor ax, [L1] mov [L], eax xor [L], ax xor [L1], ax a) mov ax, [L] ax = 0x00 0x07 mov bx, [L1] bx = 0xF7 0xAC mov [L1], ax [L1] = 0x07, [L1+1] = 0x00 mov [L], bx [L] = 0xAC, [L+1] = 0xF7 0x?? 0x?? 0xF7 0xAC 0x00 0x07 L1 L a) mov eax, [L] eax = 0xF7 0xAC 0x00 0x07 rol eax, 16 eax = 0x00 0x07 0xF7 0xAC mov [L], eax [L] = 0xAC, [L+1] = 0xF7, [L1] = 0x07, [L1+1] = 0x00 a) mov eax, [L1] eax = 0x?? 0x?? 0xF7 0xAC rol eax, 16 eax = 0xF7 0xAC 0x?? 0x?? mov [L1], eax [L1] = 0x??, [L1+1] = 0x?? a) mov eax, [L] eax = 0xF7 0xAC 0x00 0x07 xor ax, [L1] ax = 0x0007 xor 0xF7AC = 0xF7AB xor [L], ax [L] = 0x0007 xor 0xF7AB = 0xF7AC xor [L1], ax [L1] = 0xF7AC xor 0xF7AB = 0x0007

L: dw 7 L1: dw 0xF7AC a) mov ax, [L] c) mov eax, [L1] mov bx, [L1] rol eax, 16 mov [L1], ax mov [L1], eax mov [L], bx שאלה 4 עלינו להחליף בין ערכי המשתנים L ו- L1 המוגדרים בצורה הבאה: אילו מקטעי הקוד הבאים לא יבצע את זאת כנדרש? RAM b) mov eax, [L] d) mov eax, [L] rol eax, 16 xor ax, [L1] mov [L], eax xor [L], ax xor [L1], ax a) mov ax, [L] ax = 0x00 0x07 mov bx, [L1] bx = 0xF7 0xAC mov [L1], ax [L1] = 0x07, [L1+1] = 0x00 mov [L], bx [L] = 0xAC, [L+1] = 0xF7 0x?? 0x?? 0xF7 0xAC 0x00 0x07 L1 L a) mov eax, [L] eax = 0xF7 0xAC 0x00 0x07 rol eax, 16 eax = 0x00 0x07 0xF7 0xAC mov [L], eax [L] = 0xAC, [L+1] = 0xF7, [L1] = 0x07, [L1+1] = 0x00 a) mov eax, [L1] eax = 0x?? 0x?? 0xF7 0xAC rol eax, 16 eax = 0xF7 0xAC 0x?? 0x?? mov [L1], eax [L1] = 0x??, [L1+1] = 0x?? a) mov eax, [L] eax = 0xF7 0xAC 0x00 0x07 xor ax, [L1] ax = 0x0007 xor 0xF7AC = 0xF7AB xor [L], ax [L] = 0x0007 xor 0xF7AB = 0xF7AC xor [L1], ax [L1] = 0xF7AC xor 0xF7AB = 0x0007

שאלה 5 דרוש לבצע חיבור של שני מספרים של BIT 32 על מעבד 68040 )רוחב BUS של.)BIT 32 פקודת חיבור שני אופרנדים בזכרון מותרת במעבד זה. ייצוג המספרים הוא,BIG ENDIAN וכל אופרנד באורך N חייב להתחיל בכתובת המתחלקת ב N.)alignment( המספרים נמצאים בזכרון בכתובת X ו Y, והתוצאה צריכה להיות ב )X Y. הוא משתנה שמשתרע על איזור X_HIGH וגם.)X_LOW איזו מהתוכניות הבאות תוכל לבצע את הנדרש? align 4 A: dw 0 X: X_HIGH: dw 5 ; dw reserves space for 2 byte variable X_LOW: dw 10 JUNK: dw 0 Y: dl 700 ; dl reserves space for 4 byte variable a) ADD.W X, Y ; add word at address X in ; memory into word at address Y ADDX.W X+2, Y+2 ; add word at X+2 in memory into ; word at Y+2 in memory with extend flag (like CF) b) ADD.W X+2, Y+2 ADDX.W X, Y c) MOVE.L X, D0 ; move longword (32 bits) at X to register D0 ADD.L D0, Y ; add D0 to Y d) ADD.L X, Y ; add longword X to Y

a) ADD.W X, Y ; add word at address X in ; memory into word at address Y שאלה 5 דרוש לבצע חיבור של שני מספרים של BIT 32 על מעבד 68040 )רוחב BUS של.)BIT 32 פקודת חיבור שני אופרנדים בזכרון מותרת במעבד זה. ייצוג המספרים הוא,BIG ENDIAN וכל אופרנד באורך N חייב להתחיל בכתובת המתחלקת ב N.)alignment( המספרים נמצאים בזכרון בכתובת X ו Y, והתוצאה צריכה להיות ב )X Y. הוא משתנה שמשתרע על איזור X_HIGH וגם.)X_LOW איזו מהתוכניות הבאות תוכל לבצע את הנדרש? align 4 a) Y_HIGH += X_HIGH b) Y_LOW + = X_LOW d) ADD.L is not legal by the A: dw 0 Y_LOW + = X_LOW + CF Y_HIGH += X_HIGH+ CF same reason as MOVE.L X: X_HIGH: dw 5 ; dw reserves space for 2 byte variable RAM 12 X_LOW: dw 10 0xBC JUNK: dw 0 700 d = 0x2BC 11 0x02 Y: dl 700 ; dl reserves space for 4 byte variable 10 0x00 ADDX.W X+2, Y+2 ; add word at X+2 in memory into ; word at Y+2 in memory with extend flag (like CF) b) ADD.W X+2, Y+2 ADDX.W X, Y c) MOVE.L X, D0 ; move longword (32 bits) at X to register D0 ADD.L D0, Y ; add D0 to Y d) ADD.L X, Y ; add longword X to Y c) MOVE.L is not legal since its X operand is in memory and of size L(longword = 4 bytes), so X should begin in memory at address that %4 = 0. X begins in memory at address with offset 2 from some address that is divided by 4, so X s address is not divided by 4. align 4 move to a closest address in appropriate memory section which is %4 = 0 9 8 7 6 5 4 3 2 1 0 0x00 0 0 0x0A 0x00 0x05 0x00 0 0 y A JUNK X_LOW X X_HIGH

שאלה 6 נתון מבנה נתונים המוגדר באופן הבא: bla: dd bla + 8, bla + 16, bla + 24, bla + 32, bla + 24, 0, 0, 0, 0, 0 כמו כן נתון הקוד של פונקציה :Foo Foo: cmp, 0 jz End inc ecx push mov, dword [ + 4] call Foo pop mov, dword [] call Foo End: ret bla bla+4 מה יהיה ערכו של ecx וערכו של ecx היה 0? מה יהיה ערכו של ecx וערכו של ecx היה 0? לאחר קריאה ל- Foo לאחר קריאה ל- Foo כאשר ערכו של כאשר ערכו של לפני הקריאה היה לפני הקריאה היה.1.2

שאלה 6 תשובה נספור את פעולות ה- inc עבור ערכי EBX שונים. נשים לב כי ישנם 2 קריאות רקורסיביות. לכן, נדאג לכך שמספר פעולות ה- inc יחושב עבורם מוקדם יותר )כלומר נבצע את הסכימה מ"למטה למעלה"( ונוסיף לכך פעולת inc אחת המתבצעת בפונקציה, נמשיך באופן זה עד שנגיע לבעיה המקורית: foo(ebx=0) = 0 ; stop condition foo(ebx=bla+x) = 1 where X>=20 foo(ebx=bla+16) = foo(ebx=0) + foo(ebx=bla+24) + 1 = 2 foo(ebx=bla+12) = foo(ebx=bla+24) + foo(ebx=bla+32) + 1 = 3 foo(ebx=bla+8) = foo(ebx=bla+32) + foo(ebx=bla+24) + 1 = 3 foo(ebx=bla+4) = foo(ebx=bla+24) + foo(ebx=bla+16) + 1 = 5 foo(ebx=bla) = foo(ebx=bla+16) + foo(ebx=bla+8) + 1 = 6.ecx=5 מכאן שעבור סעיף ראשון ecx=6 ועבור סעיף שני

שאלה 7 ברצוננו לכתוב קוד לשימוש רב-פעמי, שמכפיל את ערך eax פי 3. מוצעות 2 אפשרויות: שימוש במקרו triple או קריאה לפונקציה :Triple %macro triple 0 mov, eax add eax, eax add eax, %endmacro Triple: mov, eax add eax, eax add eax, ret א( בזמן ריצה ל- 2 האפשרויות אותו זמן ביצוע. ב( השימוש ב- macro מהיר יותר, אבל דורש יותר זיכרון לקוד. ג( השימוש בפונקציה מהיר יותר, אבל דורש יותר זיכרון לקוד. ד( הפונקציה Triple לא יכולה לעבוד, כי היא לא מוציאה משתנים מהמחסנית

שאלה 7 ברצוננו לכתוב קוד לשימוש רב-פעמי, שמכפיל את ערך eax פי 3. מוצעות 2 אפשרויות: שימוש במקרו triple או קריאה לפונקציה :Triple %macro triple 0 mov, eax add eax, eax add eax, %endmacro Triple: mov, eax add eax, eax add eax, ret א( בזמן ריצה ל- 2 האפשרויות אותו זמן ביצוע. ב( השימוש ב- macro מהיר יותר, אבל דורש יותר זיכרון לקוד. ג( השימוש בפונקציה מהיר יותר, אבל דורש יותר זיכרון לקוד. ד( הפונקציה Triple לא יכולה לעבוד, כי היא לא מוציאה משתנים מהמחסנית