|
עמוד:346
9 . 4 קריאה ושינוי של פסיקה כדי לקרוא או לשנות תוכן של תא מטבלת הפסיקות , נשתמש בשגרות שירות של DOS א . עוגרוח שירות DOS מספר - 35 h לקריאת תוכן תא בטבלת הפסיקות כדי לקרוא ערך של תא בטבלת הפסיקות נשתמש בשגרת שירות DOS מספר . 35 h שגרת שירות זו מקבלת באתר AL מספר התא בטבלת הפסיקות ומחזירה באוגרים ES ( אוגר מקטע ) ו- BX את מען השגרה שמספרה הוכנס באוגר . AL האוגר ES יכיל את מען מקטע הקוד של השגרה והאוגר BX יכיל את ההיסט של השגרה המבוקשת . נסמן כתובת המוכלת בזוג אוגרים אלו בסימון . ES : DX לדוגמה , נכתוב קטע תכנית המחזיר באוגרים ES : BX את מען שגרת הפסיקה מס . 15 h mov ah , 35 5 mov al , int 21 h 1 דוגמה 9 . 4 הניחו שהכתובת האחרונה של שגרת הטיפול בפסיקה ( ראו דוגמה קודמת ) היא , C 6 D 3 h : 03 B 2 h ושכל הדגלים של ה8086- מאופסים . תארו את החזרה משגרת הטיפול בפסיקה לתכנית הראשית . פתרון ביצוע החזרה משגרת הטיפול בפסיקה מתואר באיור 9 . 4 שבעמוד הקודם . לפני ביצוע החזרה CS : IP = C 6 D 3 h : 03 B 3 h r ( הכתובת שלאחר הוראת החזרה מן השגרה , SP = 004 % , ( ואוגר הדגלים מאופס . בעת ביצוע החזרה , יוחלף התוכן של האוגר CS ושל האוגר IP בערכים שנשמרו במחסנית , והם יכילו את כתובת ההוראה הבאה בתכנית הראשית : , CS : IP = 00 BAh : 0624 h בדומה לחזרה משגרה רחוקה . נוסף על כך , ישוחזר מצבו של אוגר הדגלים , פרט לאוגרים Or- CF ערך האוגר SP יגדל ב6- ויחזור לערכו המקורי , כמו שהיה לפני ההיענות לבקשת הפסיקה . SP = 004 Fh
|
|