8086汇编语言习题解答 - 百度文库 ر

μĴCSSSESĴ

ڡȡԴBPַȡһʱ˿ɷֱʹμĴDSSSDS⣬ɷֱʹáCSSSES

CSDSES CSSSESȽ

.8086/8088ϵ΢ڴ洢ѰҴ洢Ԫʱ߼ַɣ

8086/8088ϵ΢ڴ洢ѰҴ洢Ԫʱ߼ַɶλֵƫɣǶ16λ޷Ŷ

.IBM PC΢ڴijһԪַ12345Hвͬ߼ַʾ

١1234H0005_H

EA=

ֵ

+DISP=12340H+0005H=12345H

ڡ1200H0345H EA=λֵ+DISP=12000H+0345H=12345H

.ijûװڴ󣬣SS=0950HSP=64HʸûĶջײֵԪַǶ٣

.ջμĴSS=3E4BHöջΪ200ֽڡԼջײֵԪַջָSPʼֵջûʱSPʼֵַָ

.ijûSP=30HAX=1234HDS=5678Hָ

PUSH

AX

PUSH DS

ִָкͼ2.18иԪǶ? (SP)=?

: (SP)=30H-4H=2CH

.IBM-PC΢ϣֱ8λ󣬱־ĴOFZFSFCFֵǶ٣

١10101011+01010101 ۡ01010101-00111110 .裨SP=50H PUSH AX PUSH BX PUSH CX

ִָ󣬣SP= 44H .裨SP=6EH POP POP

AX

ڡ11011010+11101101 ܡ10110011-01100010

ִָ󣬣SP= 72H

3.1Էֱ˵иָԴĿIJʹõѰַʽ ١AND ڡAND ۡMOV ܡCMP

AX,0FFH BL,[0FFH]

DS,AX

Ѱַ ֱѰַ

ĴѰַ

[SI],CX ĴѰַ

ݡMOV ޡSUB ߡADC ࡢOR ᡢPUSH ⡢CMC

DS:[0FFH],CL ǰ׺ֱѰַ

ַַѰַ

[BP][SI],AH

AX,0ABH[BX] ַѰַ AX,-35[BX][DI] ַַѰַ

DS

ĴѰַ

Ѱַ

3.2Էֱָиָ﷨Ƿддָʲô

١MOV ڡTEST ۡADD ܡAND ݡCMP ޡSHR ߡNOT ࡢLEA ᡢINC ⡢PUSH

[BX][BP],AX

BXBPѡһ

[BP],BL ȷ

ԴĿͬʱΪ洢 ͬһĴߡֽڲ ȷ ȷ

NOTָֻһ ȷ ȷ

ȷ

[SI],DA_BYTE DH,DL

CL,1234H [BX][DI],3 CX,AX

DS,35[SI] CX,1

45[DI]

3.3ִָк󣬱־ĴУãƣƣڣƣӣƺͣϣƷֱʲô״̬

ͣϣ ģ

ģ̣ ģ̣

ִָк

CF= AF= ZF= SF= OF=

3.48086/8088CPUпַָļĴЩ

3.5֪DS=091DHSS=1E4AHAX=1234HBX=0024H

CX=5678HBP =0024HSI=0012HDI=0032HԪ09226H=00F6H09228H=1E40H1E4F6H=091DH ¸ָηֱִкĽ?

١MOV ڡMOV ۡLEA MOV ܡLDS

MOV ݡXCHG

3.6֪SS=0915HDS=0930HSI=0A0H DI=1C0HBX80HBP=470H.һָ XCHG

CL,20H[DI][SI] [BP][DI],CX

BX,20H[BX][SI]

AX,2[BX]

SI,[BX][DI]

[SI],BX

CX,32H[BX] AX,[SI]