8086汇编语言习题解答

存器中OF、ZF、SF、CF的值各是多少?

①、10101011+01010101 ③、01010101-00111110 2.10、设(SP)=50H PUSH AX PUSH BX PUSH CX

执行上述三条指令后,(SP)= 44H。 2.11、设(SP)=6EH POPF POP

AX

②、11011010+11101101 ④、10110011-01100010

执行上述两条指令后,(SP)= 72H 。

第三章

3.1、试分别说明下列各指令中源操作数和目的操作数使用的寻址方式: ①、AND ②、AND ③、MOV ④、CMP ⑤、MOV ⑥、SUB ⑦、ADC ⑧、OR ⑨、PUSH

AX,0FFH

;立即数寻址 ;直接寻址 ;寄存器寻址 ;寄存器间接寻址

BL,[0FFH] DS,AX [SI],CX

DS:[0FFH],CL ;带前缀的直接寻址 [BP][SI],AH ;基址变址寻址 AX,0ABH[BX] ;基址寻址 AX,-35[BX][DI] DS

;基址变址寻址

;寄存器寻址

⑩、CMC

;立即数寻址

3.2、试分别指出下列各指令语句的语法是否有错,若有错,指明是什么错误。

①、MOV ②、TEST ③、ADD ④、AND ⑤、CMP ⑥、SHR ⑦、NOT ⑧、LEA ⑨、INC ⑩、PUSH

[BX][BP],AX [BP],BL

;错,BX与BP必须二选一 ;正确

;错,源目操作数不能同时为存储器 ;错,同一寄存器高、低字节不能与 ;正确 ;正确

;错,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分别是什么状态?

MOV DL,,86 ADD DL,0AAH 答:以上两条指令执行后:

CF= AF= ZF= SF= OF=

3.4、在8086/8088CPU中可用于作地址指针的寄存器有哪些? 答:

3.5、已知(DS)=091DH,(SS)=1E4AH,(AX)=1234H,(BX)=0024H (CX)=5678H,(BP )=0024H,(SI)=0012H,(DI)=0032H,单元(09226H)=00F6H,(09228H)=1E40H,(1E4F6H)=091DH 下各指标令或程序段分别执行后的结果如何?

①、MOV ②、MOV ③、LEA MOV ④、LDS

MOV ⑤、XCHG XCHG

3.6、已知(SS)=0915H,(DS)=0930H,(SI)=0A0H, (DI)=1C0H,(BX)80H,(BP)=470H.现有一指令 ?MOV

AX,OPRD?,若源操作数的物理地址为095C0H,试用4种不同寻

CL,20H[DI][SI] [BP][DI],CX BX,20H[BX][SI] AX,2[BX] SI,[BX][DI] [SI],BX CX,32H[BX] AX,[SI]

址方式该写此指令(要求上述每个已知条件至少要使用一次)。

3.7、已知(DS)=1234H,(SI)=124H,(12464H)=30ABH,(12484H)=464H

LEA

SI, [SI]

MOV MOV LDS ADD

AX, [SI] [SI+22H], 1200H SI, [SI+20H] AX, [SI]

上述程序执行后:(DS)= ,(SI)= (AX)=

3.8、已知(AX)=0A5C6H,(CX)=0F03H,CF=1 RCL AX, CL AND AH, CH

RCR

AX, CL

上述三条指令执行后:(AX)=

3.9、已知(AX)=0FC77H,(CX)=504H,CF=1 SAR

AX, CL

XCHG CH, CL SHL

AX, CL

上述三条指令执行后:(AX)=

3.10、已知(AX)=1234H MOV BX, AX NEG BX

ADD

AX, BX

上述三条指令执行后:(AX)= ,CF= (BX)= 。 。

,CF= 。

3.11、已知(AX)=4321H

INC NEG DEC NEG

AX AX AX AX

上述几条指令执行后:(AX)= 3.12、已知(AX)=0A33AH,(DX)=0F0F0H

AND XOR NEG NOT

AH,DL AL,DH AH AL

上述几条指令执行后:(AX)=

3.13、已知(AX)=0FF60H, CF=1

MOV XOR SBB

DX,96 DH,0FFH AX,DX

上述几条指令执行后:(AX)= ,CF= 。 3.14、试按下列要求分别编制程序段: ①、把标志寄存器中符号位SF置?1? ②、寄存器AL中高低4 位相互换

③、由寄存器AX ,BX组成一个32位带符号数(AX 中存高16位,试求这个数的负数)

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4