|
עמוד:283
הערך השמור בזיכרון ( במשתנה ( LAST–DIGIT כערך התחלתי לפני ביצוע הלולאה . מאחר שבפעם הראשונה שום מקש עדיין לא נלחץ , אנו קובעים ערך התחלתי לתצוגה . 00 h האוגר BX מונה את מספר השורה הנסרקת . האוגר SI מונה את מספרו הסידורי של המקש בלוח המקשים . באוגר CH אנו משתמשים לשמור את הפלט הקובע איזו שורה יש לסרוק . בנוסף , אנו משתמשים באוגר CX בפרוצדורת ההשהיה . לכן , כדי לשמור על ערך CH כאשר אנו מזמנים את פרוצדורת ההשהיה , שומרים את ערך האוגר CX במחסנית ומשחזרים את ערכו לפני סיום הפרוצדורה . תוכנית הקולטת ספרה מלוח מקשים ומציגה אותו בתצוגת -7מקטעים : . MODEL SMALL . DATA . STACK 100 h משתנה עזר השומר את הספרה האחרונה שהוצגה LAST–DIGIT DB 0 h ; CODE–ALARM DW ? טבלת הקודים להצגת ספרות על תצוגת 7 המקטעים ; * 0 + D DB 40 H , 3 FH , 40 H , 40 H ; 7 8 9 C DB 7 H , 7 FH , 6 FH , 40 H ; 4 5 6 B DB 66 H , 06 DH , 7 DH , 40 H ; 1 2 3 A CODES–TABLE DB 6 H , 5 BH , 4 FH , 40 H ; . CODE פרוצדורת השהיה MOV CX , 0 FFFFh PUSH CX DELAY PROC ;
|
|