תוכן עניינים:
הגדרה - מה המשמעות של מרשם לא נדיף?
פנקס לא נדיף הוא סוג של תוכן עם רישום שיש לשמור על שיחות תת-רוטיניות. בכל פעם שערך של פנקס לא נדיף משתנה בשגרה, יש לשמור את הערך הישן בערימה לפני שמשתנה את הקופה ויש להחזיר את הערך לפני החזרה. אוסטר דומה למשתנה, אלא שיש מספר קבוע של אוגרים. כל רישום הוא מיקום ייחודי במעבד בו נשמר ערך יחיד. פנקס הוא המקום היחיד בו ניתן לבצע פונקציות מתמטיות, כמו תוספת, כפל, חיסור וכו '. לרשומות יש לעתים קרובות עצות המתייחסות לזיכרון. העברת ערכים בין זיכרון לרישומים היא תופעה שכיחה.
Techopedia מסביר את הרישום הלא נדיף
להלן מספר דוגמאות לרישומים שאינם נדיפים:
- ebx : פנקס לא נדיף המשמש למטרות כלליות. בדרך כלל זה מוגדר לערך משותף דרך כל פונקציה להאצת החישובים.
- esi : פנקס לא נדיף המשמש למטרות כלליות. הוא משמש בדרך כלל כמצביע, במיוחד להוראות כיתת "חזרות" הדורשות מקור ויעד לנתונים. כאן, ה- ESI מצביע על המקור. Esi מחזיק בדרך כלל נתונים המשמשים כל דרך פונקציה מכיוון שהם אינם מועדים לשינויים.
- edi : עוד מרשם לא נדיף המשמש למטרות כלליות. זה משמש בדרך כלל כמצביע. אדי זהה ל- esi, למעט שהוא בדרך כלל מצביע על היעד.
- ebp : עוד מרשם לא נדיף המשמש כמרשם למטרות כלליות. יש לו שני שימושים ייחודיים המבוססים על הגדרות הידור. זהו אוסטר למטרות כלליות או מצביע מסגרת. אם הקומפילציה לא עברה אופטימיזציה או אם הקוד כתוב ביד, ebp עוקב אחר מיקום הערימה כשמתחילה פונקציה. מכיוון שהערמה משתנה בכל פונקציה, כאשר ה- ebp מוגדר לערך המקורי, ניתן להפנות בקלות למשתנים שנשמרו בערימה. אם התיאום עבר אופטימיזציה, ebp ישמש כמרשם למטרות כלליות לאחסון כל סוג של נתונים, בעוד שהחישובים עבור מצביע הערימה מתבצעים בהתאם לתנועתו.
