|
עמוד:330
לשגרות השירות אין שם , במקום זאת הן ממוספרות . כדי לקרוא לשגרת שירות נבצע את הפעולות האלה : . 1 נשים באוגר AH את המספר של שגרת השירות ; . 2 נכניס את הערכים המתאימים הדרושים לשגרת השירות ; . 3 נזמן את הפסיקה . INT 21 h ההוראה INT 21 h ( בדומה להוראה ( CALL היא קריאה לשגרת השירות שהקוד שלה הוכנס לאוגר , AH אך כפי שנתאר בהמשך , מנגנון המימוש של שגרת השירות הוא שונה מימוש שגרת משתמשת שתוארה בפרק הקודם . תחילה נציג כמה שגרות שירות שימושיות למימוש הוראות פלט והוראות קלט . 9 . 2 . 1 שירות מס ' : 4 Ch לסיום תכנית שגרת שירות מסי 4 Ch לסיום התכנית היא שגרה שהשתמשנו בה בעבר . כפי שציינו במודל , SMALL תכנית המסיימת את פעולתה צריכה 'להחזיר את השרביט' למערכת ההפעלה . תיארנו שם את השיטה שבה התכנית מחזירה את הבקרה ל08- ס . לא ציינו שם בפירוש כי התיאור שהובא הציג את השימוש בשגרה 4 Ch של DOS כעת נרחיב קמעה את ההסבר על השגרה . השגרה 4 Ch של DOS מאפשרת להעביר , בסיום התכנית , מידע המציין אם התכנית הסתיימה בהצלחה . מידע זה מועבר דרך משתנה של מערכת הפעלה בשם . ERRORLEVEL מקובל כי הערך ERRORLEVEL = 0 מציין סיום מוצלח של תכנית , וערכים השונים מ0- מציינים קוד שגיאה ( ומכאן שם המשתנה . ( כדי להעביר את ערכו של קוד השגיאה , יש לשים ערך זה באוגר , AL לפני הקריאה לשגרה . 4 Ch יש לציין כי העברת קוד שגיאה אינה חובה . להלן קטע תכנית המציג את נוהל הקריאה לשגרה לסיום תכנית ולהעברת קוד שגיאה . העבר את קוד השגיאה ; mov al , 0 קבע את מספר שגרת השירות ; uu ; nx pr mov ah , 4 ch int 21 h ; / 7 nw , 7 n
|
|