期?
第三章 指令系统
3-1 指出下列指令的寻址方式。
(1)MOV BX,2000H (2)MOV BX,[2000H]
(3)MOV [BP],CX (4)MOV AL,[BX+SI+100H]
(5)MOV DX,[BX+DI] (6)MOV AX,CX(7)POP AX (8)MUL BL
(9)IN AL,80H (10)OUT DX,AX
(11)JMP SI (12)DEC WORD PTR [DI+1200H]
3-2 指出下列指令中存储器操作数实际地址的计算公式。(1)ADD AL,[DI] (2)SHR BYTE PTR [BP+SI]
(3)MOV CL,10[BX] (4)SUB ES:[BX+SI+10H],BL(5)OR AL,[SI-80H] (6)PUSH AX
(7)MOV AX,[2020H] (8)JMP DWORD PTR ES:[SI]3-3 指出下列指令的错误。
(1)MOV AL,BX (2)MOV CS,AX
(3)ADD AX,IP (4)MOV 50H,AL
(5)MUL 12H (6)MOV [1000H],[SI](7)CMP [DI],0 (8)OUT 80H,CL(9)MOV ES,1200H (10)ROL AH,3
(11)ADD AX,[CX] (12)PUSH 1810H
3-4 假设DS=1000H,BX=2A80H,CX=3142H,SI=50H,[10050H]=3BH,[10051H]=86H,
[11200H]=7AH,[11201H]=64H,[12A80H]=95H,[12A81H]=0C4H,[12AD0H]=0A3H,
[13CD0H]=61H,在以下各题括号中分别填入指令执行后的结果。(1)MOV AX,1200H AX=( )
(2)MOV AX,[1200H] AX=( )(3)ADD [SI],CX
(10050H)=( ),(10051H)=( ),ZF=( ), SF=( ),CF=( ),OF=( )(4)OR BYTE PTR [BX+SI],54H
(12AD0H)=( ),CF=( ),OF=( )(5)MOV [BX+150H],CH
(12BD0H)=( ),CH=( )(6)SUB BH,1200H[BX] [SI]
BH=( ),ZF=( ),SF=( ),CF=( ),OF=( )(7)ROL WORD PTR [BX],1
[12A80H]=( ),[12A81H]=( ),CF=( )
3-5 写出以BUF为首地址字数组中的第五个字送到寄存器CX的指令序列,要求分别使用以下几种寻 址方式:
(1)以BX的寄存器间接寻址。(2)以BX的相对寄存器寻址。(3)以BX、SI的基址变址寻址。
3-6 假设SP=1010H,AX=1357H,BX=2468H,请问:下列程序段执行后,SP=?AX=?BX=? PUSH AX
PUSH BX POP AX
3-7 写出使AX=0的单条指令,尽量多写几条。
3-8 分析下面程序段,指出每条指令执行后寄存器的内容。 MOV AX,0ABCH AX=? DEC AX AX=?
AND AX,0FFFH AX=? MOV CL,4 CL=?
SAL AX,CL AX=? CL=? MOV CL,AL CL=? ADD CL,78H CL=? PUSH AX AX=? POP AX AX=?
3-9 执行下面程序段后,AL=?BL=?CF=? MOV AL,BL NOT AL
XOR AL,BL AND BL,AL
3-10 设AX=0119H,执行下面程序段后,AX=? MOV CH,AH ADD AL,AH DAA
XCHG AL,CH ADC AL,34H DAA
MOV AH,AL MOV AL,CH
HLT
3-11 指令SUB AL,9与CMP AL,9这两条指令的区别是什么?若AL=8,分别执行上述两条指令后, SF=?CF=?ZF=?OF=?
3-12 分别编写出实现下列各算式的程序段,其中A、B、C、D均为存放16位无符号数的单元符号地
址。若A、B、C、D均存放16位符号数的话,程序段如何改写?(1)W←D-A*C
(2)W←((D+B)*A)/C
(3)W←D/A+B(余数省略)
3-13 检查CX中的D10位是否为“0”,写出完成该操作的指令。
3-14 写出一条使地址1000H中的内容与CF标志位同时清0的指令。
3-15 8086/8088采用什么途径改变IP和CS内容,哪些指令可达到这个目的?3-16 假设指令JMP SHORT NEXT存在代码段的2100H、2101H单元中,它的相对量为(1)38H (2)
0D8H,请写出每种相对量的转移地址是什么?写出计算过程。
3-17 分析下列程序段,如果AX和BX内容分别给出如下几种情况,问程序执行后分别转向何处?
(1)AX=1290H,BX=812FH (2)AX=45D2H,BX=6563H(3)AX=95C5H,BX=0B469H (4)AX=0D056H,BX=9EF8H ADD AX,BX JNO L1 JNC L2
SUB AX,BX JNC L3 JNO L4 JMP L5