CH02 8086/8088指令统-完成 微型计算机原理及应用习题答案
CH02 8086/8088指令系统
习题与思考题
1.假定DS=2000H,ES=2100H,SS=1500H,SI=00A0H,BX=0100H,BP=0010H,数据变量VAL的偏移地址为0050H,请指出下列指令源操作数是什么寻址方式?源操作数在哪里?如在存储器中请写出其物理地址是多少?
(1)MOV AX,0ABH(2)MOVAX,[100H]
(3)MOVAX,VAL(4)MOVBX,[SI]
(5)MOVAL,VAL[BX](6)MOVCL,[BX][SI]
(7)MOVVAL[SI],BX(8)MOV[BP][SI],100
解答:
(1)MOVAX,0ABH
寻址方式:立即寻址;源操作数在数据线上;物理地址:无
(2)MOVAX,[100H]
寻址方式:直接寻址;源操作数在存储器中;物理地址:DS*16+100H=2000H*16+100H=20100H
(3)MOVAX,VAL
寻址方式:直接寻址;源操作数在存储器中;物理地址:DS*16+VAL=2000H*16+0050H=20050H
(4)MOVBX,[SI]
寻址方式:寄存器间接寻址;源操作数在存储器中;物理地址:DS*16+SI=2000H*16+00A0H=200A0H
(5)MOVAL,VAL[BX]
寻址方式:变址寻址;源操作数在存储器中;物理地址:DS*16+VAL+BX=2000H*16+0050H+0100
=20150H
(6)MOVCL,[BX][SI]
寻址方式:基址加变址寻址;源操作数在存储器中;物理地址:DS*16+BX+SI=2000H*16+0100H+00A0H
=201A0H
(7)MOVVAL[SI],BX
寻址方式:寄存器寻址;源操作数在寄存器中;物理地址:无
(8)MOV[BP][SI],100
寻址方式:立即寻址;源操作数在;物理地址:无
2.设有关寄存器及存储单元的内容如下:
DS=2000H,BX=0100H,AX=1200H,SI=0002H,[20100H]=12H,[20101H]=34H,[20102H]=56H,[20103]=78H,[21200]=2AH,[21201H]=4CH,[21202H]=0B7H,[21203H]=65H。
试说明下列各条指令单独执行后相关寄存器或存储单元的内容。
(1)MOVAX,1800H (2)MOVAX,BX
(3)MOVBX,[1200H] (4)MOVDX,1100[BX]
(5)MOV[BX][SI],AL (6)MOVAX,1100[BX][SI]
解答:
题号指 令执 行 结 果(1)MOVAX,1800HAX=1800H(2)MOVAX,BXAX=0100H(3)MOVBX,[1200H]BX=4C2AH(4)MOVDX,1100[BX]DX=4C2AH(5)MOV[BX][SI],AL[20102H]=00H(6)MOVAX,1100[BX][SI]AX=65B7H
3.假定BX=00E3H,变量VALUE=79H,确定下列指令执行后的结果(操作数均为无符号数。对3、6,写出相应标志位的状态)。
(1)ADDVALUE,BX (2)ANDBX,VALUE
(3)CMP BX,VALUE(4)XORBX,0FFH
(5)DECBX (6)TESTBX,01H
解答:
题号指 令执 行 结 果(1)ADDVALUE,BXBX=015CH(2)ANDBX,VALUEBX=0061H(3)CMPBX,VALUEBX=00E3H(CF=ZF=OF=SF=0,AF=PF=1)(4)XORBX,0FFHBX=001CH(5)DECBXBX=00E2H(6)TESTBX,01HBX=00E3H(CF=ZF=OF=SF=AF=PF=0)
4.已知SS=0FFA0H,SP=00B0H,先执行两条把8057H和0F79H分别进栈的PUSH指令,再执行一条POP指令,试画出堆栈区和SP内容变化的过程示意图。(标出存储单元的地址)
解答:
5.已知程序段如下:
MOVAX,1234H
MOVCL,4
ROLAX,CL
DECAX
MOVCX,4
MULCX
试问:(1)每条指令执行后,AX寄存器的内容是什么?(2)每条指令执行后,CF,SF及ZF的值分别是什么?(3)程序运行结束时,AX及DX寄存器的值为多少?
指