·¢²¼Ê±¼ä : ÐÇÆÚËÄ ÎÄÕÂ΢»úÔÀíÓë½Ó¿Ú¼¼Êõ1-8Ï°Ìâ½â´ðÍõÓñÁ¼¸üÐÂÍê±Ï¿ªÊ¼ÔĶÁ
Æ÷ÖÐΪ16λÊý¾Ý¡£
(4)CMP A1£¬A2´í¡£Á½¸ö²Ù×÷ÊýA1ÓëA2²»ÄÜͬʱΪÄÚ´æ²Ù×÷Êý¡£
(5)MOV [BX]£¬1000´í¡£Á½²Ù×÷ÊýÀàÐͲ»Æ¥Å䣬[BX]Ö»¶¨ÒåÁËÒ»×Ö½Úµ¥Ôª£¬¶ø1000ÊÇ16λÊý¾Ý¡£
11£®8086»ã±àÓïÑÔ³ÌÐòÖжεÄÀàÐÍÓм¸ÖÖ?¸÷¶ÎÈçºÎ¶¨Òå?¶Î¶¨ÒåÓï¾äÖУ¬¶¨Î»ÀàÐÍ¡¢×éºÏÀàÐÍ¡¢Àà±ð¸÷Æðʲô×÷ÓÃ?¸÷ÓÐʲôº¬Òå?
½â 8086»ã±àÓïÑÔÖУ¬¶ÎµÄÀàÐÍÓÐÈýÖÖ£¬¼´´úÂë¶Î¡¢¶ÑÕ»¶Î¡¢Êý¾Ý¶Î(¸½¼ÓÊý¾Ý¶Î¿É¹éÊôÓÚÊý¾Ý¶Î)¡£¸÷¶Î¿ÉÓöζ¨ÒåÓï¾ä(SEGMENTÓëENDS)ºÍ¶ÎÃû¸³¸ø¶Î¼Ä´æÆ÷Óï¾ä(ASSUME)À´¶¨Òå¡£¶Î¶¨ÒåÓï¾äÖУ¬¶¨Î»ÀàÐͱíʾ´Ë¶ÎµÄÆðʼ±ß½çÒªÇ󣬿ÉÔÊÐí4ÖֶεÄÆðʼ±ß½ç£¬¼´PAGE¡¢PARA¡¢WORD»òBYTE¡£ËüÃÇ·Ö±ð±íʾ¶ÎµÄÆðʼֵΪÒÔÒ³¡¢½Ú¡¢×Ö¡¢×Ö½ÚΪ±ß½ç£¬Èô´ËÏîÊ¡ÂÔ£¬ÔòĬÈÏֵΪPARA¡£×éºÏÀàÐÍÓÃÀ´¸æËßÁ¬½Ó³ÌÐò±¾¶ÎÓëÆäËû¶ÎµÄ¹Øϵ£¬·Ö±ðΪNONE¡¢PUBLIC¡¢COMMON¡¢AT±í´ïʽ¡¢STACK»òMEMORY¡£Ã¿Ò»Öֵĺ¬ÒåÇë²Î¿´Ö÷½Ì²Ä¡£Àà±ðÊÇÁ¬½Ó³ÌÐò(LINK)ÐèÒªµÄ¡£Ëü¿ÉÒÔÊÇÈκκϷ¨µÄÃû³Æ£¬±ØÐëÓõ¥ÒýºÅÀ¨ÆðÀ´£¬Á¬½Ó³ÌÐòֻʹͬÀà±ðµÄ¶Î·¢Éú¹ØÁª¡£µäÐÍÀà±ðÈç¡®CODE¡¯¡¢'STACK'¡£
12£®Ê¹ÓÃDOS¹¦Äܵ÷ÓÃ0AH´Ó¼üÅÌÊäÈë40¸ö×Ö·ûµÄ×Ö·û´®²¢½«ÆäËÍÈëÒ»ÊäÈ뻺³åÇø¡£ÔÚ°´ÏÂEnter¼üºó£¬ÏÔʾÕâЩ×Ö·û¡£
½â
NAME KBDINPUT CODE SEGMENT
ASSUME CS£ºCODE£¬DS£ºCODE
ORG 100H
START£ºJMP BEGIN BUF
DB 41
NUMB DB £¿ CHARS DB 41 DUP(?)
MSG1 DB 'Type anything£¬followed by enter£®'£¬0DH£¬0AH£¬'$'
MSG2 DB 0DH£¬0AH£¬'Contents of the KBD input buf£º'£¬0DH£¬0AH£¬'$' BEGIN£ºMOV AX£¬CS
MOV DS£¬AX
MOV DX£¬OFFSET MSG1 MOV AH£¬9 INT 21H
MOV DX£¬OFFSET BUF MOV AH£¬0AH INT 21 H
MOV DX£¬OFFSET MSG2 MOV AH£¬9 INT 21H XOR BX£¬BX MOV BL£¬NUMB MOV CHARS[BX]£¬'$' MOV DX£¬OFFSET CHARS
MOV AH£¬9 INT 21H MOV AH£¬4CH INT 21H CODE ENDS
END START
˵Ã÷
±¾Ìâ°ÑÊý¾ÝÇø·ÅÔÚ´úÂë¶ÎÖУ¬Ã»Óе¥¶À¶¨ÒåÊý¾Ý¶Î¡£²¢ÇÒÓÃORG 100HÓï¾ä°Ñ³ÌÐòÆðʼµØÖ·µÄÆ«ÒÆÁ¿·ÅÔÚ100H¿ªÊ¼µÄµ¥Ôª£¬ÓÃJMP BEGINÖ¸ÁîÌø¹ýÊý¾ÝÇø£¬ÕâÑù¿ÉÒ԰ѸóÌÐò¾»ã±à¡¢Á¬½ÓºóµÄÖ´ÐгÌÐò(£®EXE)ÓÃEXE2BINÈí¼þÉú³É£®COMÎļþ¡£ »ò£º
DATA BUF
SEGMENT DB 41
NUMB DB £¿ CHARS DB 41 DUP(?)
MSG1 DB 'Type anything£¬followed by enter£®'£¬0DH£¬0AH£¬'$'
MSG2 DB 0DH£¬0AH£¬'Contents of the KBD input buf£º'£¬0DH£¬0AH£¬'$' DATA
ENDS
CODE SEGMENT
ASSUME CS£ºCODE£¬DS£ºDATA
START£ºMOV AX£¬DATA
MOV DS£¬AX
MOV DX£¬OFFSET MSG1 MOV AH£¬9 INT 21H
MOV DX£¬OFFSET BUF MOV AH£¬0AH INT 21 H
MOV DX£¬OFFSET MSG2 MOV AH£¬9 INT 21H XOR BX£¬BX MOV BL£¬NUMB MOV CHARS[BX]£¬'$' MOV DX£¬OFFSET CHARS MOV AH£¬9 INT 21H MOV AH£¬4CH INT 21H CODE ENDS
13£®Ä³Èí¼þ¹²¿É½ÓÊÕ10¸ö¼üÅÌÃüÁî(·Ö±ðΪA£¬B£¬C£¬¡£¬J)£¬Íê³ÉÕâ10¸öÃüÁîµÄ³Ì
END START