ViewWiki

שיעור 3 מתוך 4

אוגרים וה־ALU.

כ־25 דקות · 6 שאלות תרגול

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

שלב 1 מתוך 6 · לחבר

שלב 1 מתוך 6

לחבר

אוגר הוא תא אחסון קטן בתוך המעבד, קרוב לחלק שמחשב. לשבב הזה יש שניים, A ו־B. הALU, היחידה האריתמטית־לוגית, יושבת ביניהם ומחשבת כל הזמן את הסכום של מה שיש בהם. יחידת הבקרה מחליטה אם התשובה תגיע לאנשהו: בביצוע של ADD היא מדליקה פלט ALU וקלט A, והסכום חוזר אל A.

המספר הראשון הוא 100 והמספר השני 50. פעימת שעון עומדת על 5: שני המספרים כבר באוגרים.

לשאלה

שלב 2 מתוך 6

שמונה סיביות מתגלגלות

לאוגר יש שמונה סיביות, ולכן הוא מחזיק 0 עד 255. מה קורה כשהסכום גדול מזה? ה־ALU מחברת סיבית אחר סיבית, כמו בחיבור במאונך, עם נשא שעובר לסיבית הבאה. לסיבית העליונה אין סיבית הבאה באוגר: הנשא שלה יוצא לדגל הנשא, נורה קטנה שנדלקת על ה־ALU.

לשאלה

שלב 3 מתוך 6

לחשב את הגלישה

כשהסיבית התשיעית נשמטת, הסכום מאבד בדיוק 256. כך מחשבים מה נשאר באוגר: מחשבים את הסכום האמיתי, ואם הוא 256 או יותר, מחסרים 256. המכסה סגור; חשבו בעצמכם.

לשאלה

שלב 4 מתוך 6

לחסר

עכשיו בזיכרון תוכנית אחרת, עם SUB במקום ADD בכתובת 2. ה־ALU מחסרת עם אותו מסכם: היא הופכת כל סיבית של B, מוסיפה 1, ומחברת. חיבור של - B$ ואז השמטה של 256 זה בדיוק חיסור של B.

לשאלה

שלב 5 מתוך 6

מתחת לאפס

מה אם B גדול מ־A? באוגר אין סימן מינוס, ושמונה סיביות מתגלגלות כמו מד מרחק: צעד אחד מתחת ל־0 הוא 255, שני צעדים הם 254. מחשבים שצריכים מספרים שליליים מסכימים לקרוא את המספרים 128 עד 255 כשליליים; לשיטה הזו קוראים המשלים ל־2. השבב עצמו רק מתגלגל.

לשאלה

שלב 6 מתוך 6

דגל האפס

לצד הנשא יש ל־ALU דגל שני, אפס, שנדלק כשהתשובה האחרונה של ADD או SUB היא 0. דגל לא משנה אף מספר; הוא זוכר משהו על התשובה, כדי שהוראה מאוחרת יותר תוכל לשאול עליו. שני המספרים כאן שווים.

לשאלה

סצנה אינטראקטיבית

הגרסה האינטראקטיבית נטענת…

כל שלב מכין לכם את הסצנה, ובקר שמסומן „קבוע” נשאר במקומו בשלב הזה.

לניסוי

תרגול · נבאו, ואז הסתכלו

המספר הראשון הוא 100 והמספר השני 50, ושניהם כבר נטענו לאוגרים. מה יהיה באוגר A אחרי שה־ADD יתבצע, בפעימה 8?

לניסוי

תרגול · נבאו, ואז הסתכלו

עכשיו המספר הראשון הוא 200 והמספר השני 100. מה יהיה באוגר A אחרי ה־ADD?

לניסוי

תרגול · חשבו

המספר הראשון הוא 250 והמספר השני 10. המכסה סגור, ופעימת שעון עומדת על 8, הביצוע של ADD. מה יש באוגר A?

לניסוי

תרגול · נבאו, ואז הסתכלו

בזיכרון נטענה תוכנית אחרת: בכתובת 2 יש עכשיו SUB, שמחסרת את B מ־A. המספר הראשון הוא 90 והמספר השני 25. מה יהיה ב־A אחרי פעימה 8?

לניסוי

תרגול · חשבו

אותה תוכנית חיסור. המספר הראשון הוא 5 והמספר השני 8. המכסה סגור, ופעימת שעון עומדת על 8. מה יש באוגר A?

לניסוי

תרגול · נבאו, ואז הסתכלו

בתוכנית החיסור, המספר הראשון והמספר השני שניהם 37. מה יקרה כשה־SUB יתבצע?