.
»ã±àÓïÑÔ³ÌÐòÉè¼Æ µÚËÄ°æ ¡¾¿ÎºóϰÌâ´ð°¸¡¿--‡êÑ[žé™|
µÚ2Õ 8086µÄÖ¸Áîϵͳ
¡²Ï°Ìâ2.1¡³ÒÑÖªDS£½2000H¡¢BX£½0100H¡¢SI£½0002H£¬´æ´¢µ¥Ôª[20100H]¡«[20103H]ÒÀ´Î´æ·Å12 34 56 78H£¬[21200H]¡«[21203H]ÒÀ´Î´æ·Å2A 4C B7 65H£¬ËµÃ÷ÏÂÁÐÿÌõÖ¸ÁîÖ´ÐÐÍêºóAX¼Ä´æÆ÷µÄÄÚÈÝ¡£
£¨1£© mov ax,1200h £¨2£© mov ax,bx £¨3£© mov ax,[1200h] £¨4£© mov ax,[bx] £¨5£© mov ax,[bx+1100h] £¨6£© mov ax,[bx+si] £¨7£© mov ax,[bx][si+1100h] ¡²½â´ð¡³ £¨1£©AX£½1200H £¨2£©AX£½0100H
£¨3£©AX£½4C2AH ;Æ«ÒÆµØÖ·=bx=0100h £¨4£©AX£½3412H ;Æ«ÒÆµØÖ·=bx=0100h £¨5£©AX£½4C2AH ;Æ«ÒÆµØÖ·=bx+1100h=1200h
£¨6£©AX£½7856H ;Æ«ÒÆµØÖ·=bx+si=0100h+0002h=0102h
£¨7£©AX£½65B7H ;Æ«ÒÆµØÖ·=bx+si+1100h=0100h+0002h+1100h=1202h ¡²Ï°Ìâ2.2¡³Ö¸³öÏÂÁÐÖ¸ÁîµÄ´íÎó £¨1£© mov cx,dl £¨2£© mov ip,ax £¨3£© mov es,1234h £¨4£© mov es,ds £¨5£© mov al,300 £¨6£© mov [sp],ax £¨7£© mov ax,bx+di £¨8£© mov 20h,ah
- 1 -Ò³
.
¡²½â´ð¡³
£¨1£©Á½²Ù×÷ÊýÀàÐͲ»Æ¥Åä £¨2£©IPÖ¸ÁîÖ¸Õë½ûÖ¹Óû§·ÃÎÊ £¨3£©Á¢¼´Êý²»ÔÊÐí´«¸ø¶Î¼Ä´æÆ÷ £¨4£©¶Î¼Ä´æÆ÷Ö®¼ä²»ÔÊÐí´«ËÍ £¨5£©Á½²Ù×÷ÊýÀàÐͲ»Æ¥Åä £¨6£©Ä¿µÄ²Ù×÷ÊýӦΪ[ SI ] £¨7£©Ô´²Ù×÷ÊýӦΪ [BX+DI] £¨8£©Á¢¼´Êý²»ÄÜ×÷Ä¿µÄ²Ù×÷Êý
¡²Ï°Ìâ2.3¡³ÒÑÖªÊý×Ö0 ~ 9¶ÔÓ¦µÄ¸ñÀ×ÂëÒÀ´ÎΪ£º18H¡¢34H¡¢05H¡¢06H¡¢09H¡¢0AH¡¢0CH¡¢11H¡¢12H¡¢14H£¬Ëü´æÔÚÓÚÒÔtableΪÊ×µØÖ·£¨ÉèΪ200H£©µÄÁ¬ÐøÇøÓòÖС£ÇëΪÈçϳÌÐò¶ÎµÄÿÌõÖ¸Áî¼ÓÉÏ×¢ÊÍ£¬ËµÃ÷ÿÌõÖ¸ÁîµÄ¹¦ÄܺÍÖ´Ðнá¹û¡£
lea bx,table mov al,8 xlat ¡²½â´ð¡³
lea bx,table £»»ñÈ¡tableµÄÊ×µØÖ·£¬BX£½200H mov al,8 £»´«ËÍÓûת»»µÄÊý×Ö£¬AL£½8 xlat £»×ª»»Îª¸ñÀ×Â룬AL£½12H P35
¡²Ï°Ìâ2.4¡³Ê²Ã´ÊǶÑÕ»£¬ËüµÄ¹¤×÷ÔÔòÊÇʲô£¬ËüµÄ»ù±¾²Ù×÷ÓÐÄÄÁ½¸ö£¬¶ÔÓ¦ÄÄÁ½ÖÖÖ¸Á
¡²½â´ð¡³
¶ÑÕ»ÊÇÒ»ÖÖ°´¡°ÏȽøºó³ö¡±ÔÔò´æÈ¡Êý¾ÝµÄ´æ´¢ÇøÓò£¬Î»ÓÚ¶ÑÕ»¶ÎÖУ¬Ê¹ÓÃSS¶Î¼Ä´æÆ÷¼Ç¼Æä¶ÎµØÖ·£»ËüµÄ¹¤×÷ÔÔòÊÇÏȽøºó³ö£»¶ÑÕ»µÄÁ½ÖÖ»ù±¾²Ù×÷ÊÇѹջºÍ³öÕ»£¬¶ÔÓ¦µÄÖ¸ÁîÊÇPUSHºÍPOP¡£ ¡²Ï°Ìâ2.5¡³ÒÑÖªSS = 2200H¡¢SP = 00B0H£¬»Í¼ËµÃ÷Ö´ÐÐÏÂÃæÖ¸ÁîÐòÁÐʱ£¬¶ÑÕ»ÇøºÍSPµÄÄÚÈÝÈçºÎ±ä»¯£¿
mov ax,8057h push ax mov ax,0f79h push ax pop bx pop [bx] ¡²½â´ð¡³
- 2 -Ò³
.
mov ax,8057h push ax mov ax,0f79h push ax
pop bx ;bx=0f79h
pop [bx] ;DS:[0f79h]=8057h
¡²Ï°Ìâ2.6¡³¸ø³öÏÂÁи÷ÌõÖ¸ÁîÖ´ÐкóALÖµ£¬ÒÔ¼°CF¡¢ZF¡¢SF¡¢OFºÍPFµÄ״̬£º mov al,89h add al,al add al,9dh cmp al,0bch sub al,al dec al inc al ¡²½â´ð¡³
mov al,89h ; AL=89h CF ZF SF OF PF add al,al ; AL=12h 1 0 0 1 1 ; 1000 1001
- 3 -Ò³
.
+1000 1001 10001 0010
add al,9dh ; AL=0afh 0 0 1 0 1 ; 0001 0010 + 1001 1101 1010 1111
cmp al,0bch ; AL=0afh 1 0 1 0 1 ; 1010 1111 -1011 1100 * 0100 0011
sub al,al ; AL=00h 0 1 0 0 1
dec al ; AL=0ffh 0 0 1 0 1 ; 0000 0000 - 0000 0001 *1111 1111
inc al ; AL=00h 0 1 0 0 1 ;1111 1111 +0000 0001 *1111 1111
¡²Ï°Ìâ2.7¡³ÉèX¡¢Y¡¢Z¾ùΪ˫×ÖÊý¾Ý£¬·Ö±ð´æ·ÅÔÚµØÖ·ÎªX¡¢X+2£»Y¡¢Y+2£»Z¡¢Z+2µÄ´æ´¢µ¥ÔªÖУ¬ËüÃǵÄÔËËã½á¹û´æÈëWµ¥Ôª¡£ÔĶÁÈçϳÌÐò¶Î£¬¸ø³öÔËË㹫ʽ¡£
mov ax,X mov dx,X+2
add ax,Y adc dx,Y+2
- 4 -Ò³