|
עמוד:135
בציון כתובת של משתנה , אנו רושמים רק את כתובת הבית התחתון ; בדוגמה הקודמת הכתובת היא . 100 h כאשר אנו קוראים משתנה זה , המעבד מתרגם את הכתובת היחסית שלו לכתובת פיזית ( תוך שימוש באוגר הבסיס ובאוגר המצביע , ( ובהתאם לטיפוס המשתנה הוא קורא את כל הבתים שהוקצו לו . לדוגמה , נציג את צורת האחסון של נתונים המוגדרים במקטע הנתונים הבא ו sum DB 28 h var 3 DW 1234 h var 2 DB OOh varl DB 10 h DATA var 6 DD 12345678 h char 2 DB 'H ' charl DB ' e ' var 5 DB ? var 4 DW 51 ABh אם נניח כי מקטע הנתונים מתחיל בכתובת , DS = OlOOOh נוכל לצייר מפת זיכרון ( איור ( 4 . 7 שתתאר את המיקום של כל אחד מהמשתנים שהגדרנו . נציין מספר הערות בקשר למפת הזיכרון המוצגת באיור : 4 . 7 מקומות בזיכרון המוקצים למשתנים נמצאים ברצף תאים החל מתחילת מקטע הנתונים . ההיסט של המשתנה הראשון מתחילת מקטע הנתונים הוא . 0 המשתנה השני מתחיל בתא העוקב לתא שבו הסתיים המשתנה הקודם . ההיסט של המשתנה השני הוא הסכום המתקבל ע"י חיבור ההיסט של המשתנה שקדם לו ומספר התאים שתפס המשתנה שקדם לו . משתנה בגודל מילה תופס שני תאים - בתא שכתובתו נמוכה נמצאות שתי הספרות הפחות משמעותיות ובתא שכתובתו עוקבת נמצאות שתי הספרות משמעותיות . משתנה בגודל מילה כפולה מאוחסן על פי אותו רעיון : הספרות הפחות משמעותיות נמצאות בכתובות הנמוכות .
|
|