אסמבלי x86/האוגרים: הבדלים בין גרסאות בדף

תוכן שנמחק תוכן שנוסף
אין תקציר עריכה
אין תקציר עריכה
שורה 8:
=== אוגרים כלליים ===
אוגרים אלו משמשים לרוב פעולות החישוב וההעברה לזכרון וממנו.
* AX - נקרא גם צובר (Accumulator register) - משמש בעיקר לפעולות חישוב,קלט פלט ופסיקות.
* BX - נקרא גם אוגר הבסיס (Base register) - משמש בעיקר כמצביע לכתובות זכרון.
* CX - נקרא גם מונה (Counter register) - משמש בעיקר כמונה לולאות.
* DX - נקרא גם אוגר הנתונים (Data register) - מתפקד כעוזר ל AX ולפעולות כפל וחילוק.
 
את כל לעיל ניתן לחלק לשני אוגרים בני 8 ביט. AX למשל, יתחלק ל AH (הביטים השמאליים) ו - AL (הביטים הימניים).
שורה 18:
=== אוגרי המקטע (Segment) ===
אוגרים אלו מכילים כתובת של מקטעי התכנית בלבד, והם נקבעים ע"י מערכת ההפעלה.
* CS - אוגר מקטע הקוד (Code Segment)- מכיל את הכתובת בזכרון המחשב לתחילת המקטע בו יושב קוד שפת המכונה - אינו ניתן לשינוי.
* DS - אוגר מקטע הנתונים (Data Segment) - מכיל את הכתובת לתחילת המקטע בו יושבים המשתנים שמשתמשים בהם בתכנית.
* ES - אוגר מקטע הנתונים הנוספים (Extra Segment) - מכיל את הכתובת לתחילת המקטע בו יושבים משתנים נוספים שמשתמשים בהם בתכנית (בעיקר משתני יעד לביצוע העברה או העתקה).
* SS - אוגר מקטע המחסנית (Stack Segment) - מכיל את הכתובת לתחילת המחסנית (ראה להלן).
הערה: את האוגרים הללו לא ניתן לחלק לשני חלקים של 8 ביט.
 
=== אוגרי המצביעים ===
אוגרים אלו מכילים כתובות יחסיות עבור אוגרי המקטע.
* SI - אוגר מצביע מקור (Source register) - עבור שימוש בקטע זכרון כמקור (יחסית ל DS).
* DI - אוגר מצביע יעד (Destination register) - עבור שימוש בקטע זכרון כיעד להעתקה או העברה (יחסית ל ES).
* SP - מצביע המחסנית (Stack Pointer register) - מצביע על המיקום האחרון במחסנית אליה הוזנו נתונים (יחסית ל SS). לא נועד לשינוי ידני.
* BP - מצביע הבסיס (Stack Base Pointer register) - מצביע על מקום כלשהו במחסנית (יחסית ל SS).
* IP - מצביע הפקודה (Instruction Pointer) - מצביע על הפקודה הבאה לביצוע (יחסית ל CS). לא נועד לשינוי ידני.
הערה: את האוגרים הללו לא ניתן לחלק לשני חלקים של 8 ביט.