µÚËÄÕ αָÁî
»ã±àÓïÑÔÔ´³ÌÐòÓÉһϵÁÐÓï¾ä¹¹³É£¬ÕâЩÓï¾ä¼È¿ÉÒÔÊÇÖ¸ÁҲ¿ÉÒÔÊÇαָÁî¡£Ö¸ÁîÊÇÓÉCPU¸ºÔðÖ´Ðеģ¬Ã¿Ò»ÌõÖ¸Áî¶¼ºÍÒ»Ìõ»úÆ÷ÓïÑÔÏà¶ÔÓ¦¡£¶øÎ±Ö¸ÁîÊÇÓÉ»ã±à³ÌÐò¸ºÔðÖ´ÐУ¬Íê³ÉһЩÄÚ´æµ¥Ôª·ÖÅä¡¢¶ÎÖ®¼äµÄÁ¬½Ó¹ØÏµµÈ²Ù×÷£¬ËùÒÔαָÁî²¢²»»áÉú³É»úÆ÷Ö¸ÁҲ¾Í²»»á±»CPUÖ´ÐС£ÔÚ±¾ÕÂÖУ¬Öص㽲½âһЩ³£ÓõÄαָÁî¼°Æä¹¦ÄÜ¡£
4.1αָÁîµÄ·ÖÀ༰αָÁîÓï¾ä¸ñʽ
αָÁîÓÖ³ÆÎªÎ±²Ù×÷£¬ËüËäÈ»²»»á±»CPUÖ´ÐУ¬µ«È´¿ÉÒÔָʾ»ã±à³ÌÐò°´ÕÕÓû§µÄÒâͼ£¬Íê³ÉÊý¾ÝµÄ¶¨Òå¡¢´æ´¢Æ÷µÄ·ÖÅ䡢ָʾ³ÌÐò½áÊøµÈ¹¦ÄÜ¡£ËùÒÔαָÁîÔÚ»ã±àÓïÑÔ³ÌÐòÉè¼Æ¹ý³ÌÖоßÓÐÖØÒªµÄÒâÒ壬ϣÍû¶ÁÕßÔÚѧϰ¹ý³ÌÖÐÓ¦¸Ã¼ÓÒԸ߶ÈÖØÊÓ¡£
4.1.1 αָÁîµÄ·ÖÀà
8088/8086µÄαָÁî´óÖ¿ɷÖΪÒÔϰËÀࣺ ¡¤Êý¾Ý¶¨ÒåαָÁ ¡¤·ûºÅ¶¨ÒåαָÁ ¡¤¶Î¶¨ÒåαָÁ ¡¤¹ý³Ì¶¨ÒåαָÁ ¡¤½áÊøÎ±Ö¸Á ¡¤Ìõ¼þ»ã±àαָÁ
¡¤½á¹¹¡¢¼Ç¼¶¨ÒåαָÁ ¡¤ÆäËûαָÁî¡£
ÆäÖУ¬Ìõ¼þ»ã±àαָÁîÓë½á¹¹¡¢¼Ç¼¶¨ÒåαָÁÔÚµÚ°ËÕÂÓèÒÔ½éÉÜ¡£
4.1.2 αָÁîÓï¾ä¸ñʽ
αָÁîÓï¾ä¸ñʽһ°ãÓÉËIJ¿·Ö×é³É¡£
Óï¾ä¸ñʽ£º [±äÁ¿] αָÁîÖú¼Ç·û ²ÎÊý1£¬²ÎÊý2¡¤¡¤¡¤¡¤²ÎÊýn[£»×¢ÊÍ]
˵Ã÷£ºÎ±Ö¸ÁîÖú¼Ç·û¹æ¶¨ÁËαָÁîµÄ¹¦ÄÜ¡£Ò»°ãαָÁî¶¼ÓвÎÊý£¬ÓÃÓÚ˵Ã÷αָÁîµÄ²Ù×÷¶ÔÏ󣬲ÎÊýµÄÀàÐͺ͸öÊýËæ×ÅαָÁîµÄ²»Í¬¶ø²»Í¬¡£ÓÐʱ²ÎÊýÊdz£Êý»òÊýÖµ±í´ïʽ£¬ÓÐʱ²ÎÊýÊÇÒ»°ãµÄ·ûºÅ£¬ÓÐʱÊǾßÓÐÌØÊâÒâÒåµÄ·ûºÅ¡£Î±Ö¸ÁîÓï¾äÖеıäÁ¿¿ÉÓпÉÎÞ£¬Èç¹ûαָÁîÓï¾äÖгöÏÖ±äÁ¿£¬Ôò»ã±à³ÌÐòʹÆä¼ÇÒÔµÚÒ»¸ö×Ö½ÚµÄÆ«ÒƵØÖ·¡£×¢ÊͲ¿·ÖÒ²ÊÇ¿ÉÓпÉÎ޵ģ¬ÓÃÓÚ˵Ã÷¸ÃαָÁîµÄ¹¦ÄÜ¡£
ÀýÈç VAR1 DW 1234H£¬5678H £»¶¨ÒåVAR1Ϊ×Ö±äÁ¿
¸ÃÓï¾äÖеÄVAR1Ϊ±äÁ¿£»DWΪαָÁîÖú¼Ç·û£»1234HÓë5678HΪ²ÎÊý£»·ÖºÅºóÃæ¸ø³öµÄÎÄ×ÖΪעÊÍ¡£
4.2»ã±àÓïÑÔÖеÄÊý¾ÝÏî
Êý¾ÝÏîÊÇÖ¸Áî»òαָÁîÓï¾ä²Ù×÷¶ÔÏóµÄ»ù±¾×é³É²¿·Ö¡£Ò»¸öÊý¾ÝÏî°üº¬ÓÐÊýÖµºÍÊôÐÔÁ½²¿·Ö£¬ÕâÁ½²¿·Ö¶ÔÒ»ÌõÓï¾ä»ã±à³É»úÆ÷Ä¿±ê´úÂëÓÐ×ÅÖ±½Ó¹ØÏµ¡£
ͨ³££¬»ã±àÓïÑÔÄÜʶ±ðµÄÊý¾ÝÏîÓУº³£Êý¡¢±äÁ¿ºÍ±êºÅ¡£8086/8088»ã±àÓïÑÔ»¹²ÉÓÃÁ˺ÜÓÐÓõÄÊý¾Ý½á¹¹ÐÎʽ£¬ÀýÈç½á¹¹ºÍ¼Ç¼£¬¿ÉÒÔ±»¿´³ÉÊÇÁ½ÖÖÌØÊâµÄ±äÁ¿¡£
4.2.1 ³£Êý
³£ÊýÊÇûÓÐÈκÎÊôÐԵĴ¿ÊýÖµ¡£ÔÚ»ã±àÆÚ¼ä£¬ËüµÄÖµÒѱ»Íêȫȷ¶¨£¬ÇÒÔÚ³ÌÐòÔËÐйý³ÌÖУ¬ËüÒ²²»»á·¢Éú±ä»¯¡£
³£Êý¿ÉÒÔÓÐÒÔÏÂÀàÐÍ£º 1£® ¶þ½øÖÆ
ÒÔ×ÖĸB½áβµÄÓÉ0ºÍ1×é³ÉµÄÊý×ÖÐòÁС£Èç10100011B¡£ 2£® °Ë½øÖÆ
ÒÔ×ÖĸO»òQ½áβµÄÓÉ0¡«7×é³ÉµÄÊý×ÖÐòÁС£Èç345Q¡£ 3£® Ê®½øÖÆ
ÒÔ×ÖĸD½áβµÄÓÉ0¡«9×é³ÉµÄÊý×ÖÐòÁС£Èç7825D¡£ 4£® Ê®Áù½øÖÆ
ÒÔ×ÖĸH½áβµÄÓÉ0¡«9ºÍA¡«F×é³ÉµÄÊý×ÖÐòÁС£Èç12FFH¡£ 5£® ×Ö·û´®³£Êý
Óõ¥ÒýºÅ»òË«ÒýºÅÀ¨ÆðÀ´µÄÒ»¸ö»ò¶à¸ö×Ö·û¡£ÕâЩ×Ö·ûÒÔÆäASCIIÂëÐÎʽ´æ´¢ÔÚÄÚ´æÖС£Èç¡®A¡¯£¬ÔÚÄÚ´æÖоÍÊÇ41H£¬Èç¹ûÊÇ¡°AB¡±¾ÍÊÇ41HºÍ42H×éºÏ¡£
˵Ã÷£º
£¨1£© ÔÚ³ÌÐòÖУ¬³£ÊýÖ÷Òª³öÏÖÔÚÒÔÏÂÈý¸öµØ·½£º
¢ÙÔÚÖ¸ÁîÓï¾äµÄÔ´²Ù×÷ÊýÖÐ×÷Á¢¼´ÊýʹÓã¬ËüÓ¦ÓëÄ¿µÄ²Ù×÷ÊýµÄλÊýÒ»Ö£¬¿ÉÒÔÊÇ8λ»ò16λµÄ¡£
ÀýÈ磺
MOV AL£¬00001111B ADD DX£¬0ABCDH MOV AL£¬¡®A¡¯
¢ÚÔÚÖ¸ÁîÓï¾äµÄmem±í´ïʽÖÐ×÷Î»ÒÆÁ¿¡£ ÀýÈ磺
MOV AX£¬44H[SI]
MOV DX£¬1234H[BX][SI]
¢ÛÔÚαָÁÒåÊý¾ÝÓï¾äÖгöÏÖ¡£ ÀýÈ磺
DB 12H £»¶¨ÒåÒ»¸ö×Ö½ÚÊý¾Ý£¬ÖµÎª12H
DB ¡°ABCD¡± £»¶¨ÒåËĸö×Ö½ÚµÄ×Ö·û´®Êý¾Ý£¬ÖµÎª41H¡¢42H¡¢43HºÍ44H DD 12345678H £»¶¨ÒåÒ»¸öË«×ÖÊý¾Ý£¬³¤¶ÈΪ32λ£¬ÖµÎª12345678H PRICE EQU 30H £»·ûºÅPRICEµÈ¼ÛÓÚ30H
£¨2£© ÔÚ»ã±à³ÌÐòÖУ¬Ä¬ÈÏ»ùÊýÊÇÊ®½øÖÆÊý£¬¼´ÔÚÓï¾äÖгöÏÖµÄÊ®½øÖƳ£Êý¿ÉÒÔ²»ÔÚĩβ¼Ó×Ö·ûD£¬ÈçÊ®½øÖƳ£Êý123D ¿ÉÒÔдΪ123¡£µ±È»ÎÒÃÇ¿ÉÒÔʹÓá°.RADIX¡±Î±Ö¸Áî¸Ä±ä
ĬÈϵĻùÊý¡£ÀýÈ磺
.RADIX 16 £»½«Ä¬ÈÏ»ùÊý¸Ä±äΪ16½øÖÆ .RADIX 2 £»½«Ä¬ÈÏ»ùÊý¸Ä±äΪ2½øÖÆ
4.2.2 ±äÁ¿
±äÁ¿ÊÇ´ú±í´æ·ÅÔÚijЩ´æ´¢µ¥ÔªµÄ·ûºÅ¡£ÕâЩ·ûºÅËù´ú±íµÄÊý¾ÝÔÚ³ÌÐòÔËÐÐÆÚ¼äËæÊ±¿ÉÄܱ仯¡£ÎªÁ˱ãÓÚ¶Ô±äÁ¿µÄ·ÃÎÊ£¬Ëü³£³£ÒÔ±äÁ¿ÃûµÄÐÎʽ³öÏÖÔÚ³ÌÐòÖС£±äÁ¿Ò²°üº¬ÊýÖµºÍÊôÐÔÁ½²¿·Ö¡£
1. ±äÁ¿µÄ¶¨ÒåÓëÔ¤ÖÃ
¶¨Òå±äÁ¿¾ÍÊǸø±äÁ¿·ÖÅä´æ´¢µ¥Ôª£¬ÇÒ¶ÔÕâ¸ö´æ´¢µ¥Ôª¸³ÓèÒ»¸ö·ûºÅÃû£¬¼´±äÁ¿Ãû£¬Í¬Ê±½«ÕâЩ´æ´¢µ¥ÔªÔ¤ÖóõÖµ¡£
¶¨Òå±äÁ¿ÊÇÓÃÊý¾Ý¶¨ÒåαָÁîDB¡¢DW¡¢DD¡¢DQ¡¢DTµÈʵÏֵġ£ ÀýÈ磺
DSEG SEGMENT VAR1 DB 12H VAR2 DB 20H VAR3 DW 1234H DSEG ENDS
¾¹ý¶¨ÒåµÄ±äÁ¿¶¼ÓÐÈý¸öÊôÐÔ£º¶ÎÊôÐÔ¡¢Æ«ÒÆÊôÐÔºÍÀàÐÍÊôÐÔ¡£ £¨1£©¶ÎÊôÐÔ£¨SEG£©
Ëü±íʾ±äÁ¿´æ·ÅÔÚÄÄÒ»¸öÂß¼¶ÎÖУ¨¼´±äÁ¿ËùÔڶεĶÎÊ×Ö·£©¡£ÀýÈç±äÁ¿VAR1¡¢VAR2¡¢VAR3µÄÈý¸ö±äÁ¿¶¼´æ·ÅÔÚDSEGÊý¾Ý¶ÎÖУ¬Èç¹ûÉèDSEGÊý¾Ý¶ÎµÄ¶ÎÊ×ַΪ1355H£¬ÔòÕâÈý¸ö±äÁ¿µÄ¶ÎÊôÐÔΪ1355H¡£
×¢Ò⣺µ±ÔÚÖ¸ÁîÖÐÒª¶ÔÕâЩ±äÁ¿½øÐвÙ×÷ʱ£¬ÊÂÏÈÒª°ÑËüÃÇËùÔڶεĶÎÊ×Ö·´æ·ÅÔÚijһ¸ö¶Î¼Ä´æÆ÷£¨ÈçDS£©ÖС£
£¨2£©Æ«ÒÆÊôÐÔ£¨OFFSET£©
±äÁ¿µÄÆ«ÒÆÊôÐÔÖ¸µÄÊDZäÁ¿ÔÚÂß¼¶ÎÖÐÀë¶ÎÆðʼµÄ×Ö½ÚÊý¡£ÀýÈçVAR1¡¢VAR2¡¢VAR3ÕâÈý¸ö±äÁ¿µÄÆ«ÒÆÁ¿Îª00H¡¢01HºÍ02H¡£
ÉÏÊö¶ÎÊôÐÔºÍÆ«ÒÆÊôÐԾ͹¹³ÉÁ˱äÁ¿µÄÂß¼µØÖ·¡£ £¨3£©ÀàÐÍÊôÐÔ£¨TYPE£©
±äÁ¿µÄÀàÐÍÊôÐÔÖ¸µÄÊDZäÁ¿Õ¼Óô洢µ¥ÔªµÄ×Ö½ÚÊý¡£ÕâÒ»ÊôÐÔÊÇÓÉÊý¾Ý¶¨ÒåαָÁîDB£¨1×Ö½Ú£©¡¢DW£¨2×Ö½Ú£©¡¢DD£¨4×Ö½Ú£©¡¢DQ£¨8×Ö½Ú£©¡¢DT£¨10×Ö½Ú£©µÈÀ´¹æ¶¨µÄ¡£ÓÉDB¶¨ÒåµÄ±äÁ¿£¬ÆäÀàÐÍÊôÐÔΪ1£»ÓÉDW¶¨ÒåµÄ±äÁ¿£¬ÆäÀàÐÍÊôÐÔΪ2£»ÓÉDD¶¨ÒåµÄ±äÁ¿£¬ÆäÀàÐÍÊôÐÔΪ4£»ÓÉDQ¶¨ÒåµÄ±äÁ¿£¬ÆäÀàÐÍÊôÐÔΪ8£»ÓÉDT¶¨ÒåµÄ±äÁ¿£¬ÆäÀàÐÍÊôÐÔΪ10¡£ËùÒÔ±äÁ¿VAR1¡¢VAR2¡¢VAR3µÄÀàÐÍÊôÐÔ·Ö±ðΪ1×Ö½Ú¡¢1×Ö½ÚºÍ2×Ö½Ú¡£
2. ±äÁ¿µÄʹÓÃ
£¨1£©ÔÚÖ¸ÁîÓï¾äÖеÄʹÓÃ
Òª¶Ôij´æ´¢µ¥Ôª½øÐдæÈ¡²Ù×÷£¬¿ÉÖ±½ÓÒýÓÃËüµÄ±äÁ¿Ãû¡£ Àý4-1 ±äÁ¿µÄÓ¦Óá£
½â£ºÔÚ³ÌÐòÖÐÖ±½ÓÒýÓñäÁ¿Ãû£¬Æäº¬ÒåÊÇ·ÃÎʸñäÁ¿ÃûËùÖ¸ÏòµÄÄÚ´æµ¥Ôª¡£ ³ÌÐò´úÂë±àдÈçÏ£º DSEG SEGMENT
VAR1 DB 12H
VAR2 DB 20H DSEG ENDS CSEG SEGMENT
ASSUME CS£ºCSEG£¬DS£ºDSEG START£º
MOV AX£¬DSEG
MOV DS£¬AX £»½«Êý¾Ý¶ÎDSEGµÄ¶ÎÊ×Ö·ËÍÈëDS¼Ä´æÆ÷ MOV BL£¬VAR1 £»½«VAR1µÄÄÚÈÝ12HËÍÈëBL¼Ä´æÆ÷ MOV DL£¬VAR2 £»½«VAR1µÄÄÚÈÝ20HËÍÈëDL¼Ä´æÆ÷ ADD BL£¬DL MOV AH£¬4CH
INT 21H £»·µ»ØDOS CSEG ENDS END START
£¨2£©ÔÚαָÁîÖеÄÓ¦ÓÃ
±äÁ¿±»¶¨Òåºó£¬»¹¿ÉÒÔ±»ÁíÍâµÄ±äÁ¿½øÐÐÒýÓá£ÒýÓÃÐÎʽÓÐÁ½ÖÖ£º ¢Ù ±äÁ¿B DW ±äÁ¿A ¢Ú ±äÁ¿B DD ±äÁ¿A
˵Ã÷£º¶ÔÓÚµÚÒ»ÖÖÒýÓÃÐÎʽ£¬±äÁ¿B±»¶¨ÒåΪ×Ö±äÁ¿£¬²¢ÇÒÔÚÓï¾äÖÐÒýÓÃÁ˱äÁ¿A£¬ËùÒÔ±äÁ¿BËùÖ¸ÏòµÄ×Öµ¥ÔªÄÚÈݾÍΪ±äÁ¿AµÄÆ«ÒÆÁ¿£»¶ÔÓÚµÚ¶þÖÖÒýÓÃÐÎʽ£¬±äÁ¿B±»¶¨ÒåΪ˫×Ö±äÁ¿£¬²¢ÇÒÔÚÓï¾äÖÐÒýÓÃÁ˱äÁ¿A£¬ËùÒÔ±äÁ¿BËùÖ¸ÏòµÄË«×Öµ¥ÔªÄÚÈݾÍΪ±äÁ¿AµÄÆ«ÒÆÁ¿ºÍ¶ÎÊ×Ö·£¬ÆäÖе͵ØÖ·×Öµ¥Ôª´æ·ÅÁ˱äÁ¿AµÄÆ«ÒÆÁ¿£¬¸ßµØÖ·×Öµ¥Ôª´æ·ÅÁ˱äÁ¿AµÄ¶ÎÊ×Ö·¡£
×¢Ò⣺µ±±äÁ¿ÒýÓñäÁ¿Ê±£¬Ó¦¸ÃʹÓÃDWºÍDDαָÁî½øÐж¨Ò壬¶ø²»ÔÊÐíʹÓÃDB¡¢DQ¡¢DTµÈαָÁî¡£
Àý4-2 ±äÁ¿ÒýÓñäÁ¿¡£ ½â£º¼ÙÉè±äÁ¿VAR1±»¶¨Òå³É×Ö½ÚÐͱäÁ¿£¬ÔÙ¶¨Òå±äÁ¿VAR2Ϊ×Ö±äÁ¿£¬²¢ÒýÓñäÁ¿VAR1£¬È»ºóÔÙ¶¨Òå±äÁ¿VAR3Ϊ×Ö±äÁ¿£¬²¢ÒýÓñäÁ¿VAR2£¬×îºóÔÙ¶¨Òå±äÁ¿VAR4Ϊ˫×Ö±äÁ¿£¬²¢ÒýÓñäÁ¿VAR1¡£ÄÇôVAR2¡¢VAR3¡¢VAR4ÕâЩ±äÁ¿µÄÖµ¾¿¾¹Îª¶àÉÙ¡£
³ÌÐò´úÂë±àдÈçÏ£º DSEG SEGMENT VAR1 DB 12H VAR2 DW VAR1 VAR3 DW VAR2 VAR4 DD VAR1 DSEG ENDS CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG START:
MOV AX,DSEG MOV DS,AX MOV BX,VAR2 MOV CX,VAR3
MOV DX,WORD PTR VAR4