עמוד:347

ב . שגרות שירות DOS מספר - 25 h לשינוי תוכן תא בטבלת הפסיקות כדי לשנות ערך של תא בטבלת הפסיקות נשתמש בשגרת השירות . 25 h שגרת שירות זו מקבלת ערכים באוגרים הבאים : AL מכיל את מספר התא בטבלת הפסיקות שאת ערכו ברצוננו לשנות DS מכיל את מען המקטע שברצוננו להכניס לתא בטבלת הפסיקות DX מכיל את ההיסט שברצוננו להכניס לטבלת הפסיקות לדוגמה , נכתוב קטע קוד המכניס לתא מספר 5 בטבלת הפסיקות את מען השגרה nrora ) myProc ששגרה זו מוגדרת בתכנית . ( קביעת סוג שגרת השירות nynp mov ah , 25 h ; מספר תא בטבלת הפסיקות ; mov al , 5 דחיפת מען מקטע הקוד של השגרה למחסנית ; DS push seg myProc מכיל את כתובת מקטע של השגרה DS pop ds ; מכיל את ההיסט של השגרה mov dx , offset myProc ; קריאה לשגרת השירות ; int 21 h ניתן להשתמש באופרטור offset לקבוע באוגר לא רק את ההיסט של משתנה אלא גם את ההיסט של מען של שגרה . בהוראה mov dx , offset myProc תוצאת האופרטור offset הוא ההיסט של מען השגרה Dwinn myProc באוגר . dx באופן דומה תוצאת האופרטור nm seg push seg myProcnN היא מען מקטע הקוד בה נמצאת השגרה . myProc ג . כתיבת שגרת פסיקה שגרת פסיקה היא שגרה רחוקה FAR ובה אנו משתמשים בהוראת חזרה . IRET הוראת חזרה שולפת מהמחסנית לא רק את כתובת החזרה אלא גם את תוכן אוגר הדגלים . מבנה של שגרת פסיקה הוא name PROC FAR name ENDP iret

מטח : המרכז לטכנולוגיה חינוכית


לצפייה מיטבית ורציפה בכותר