习题一、选择题1.寻址方式指出了操作数的位置,一般来说_______。
A.立即寻址给出了操作数的地址B.寄存器直接寻址的操作数在寄存器内,而指令给出了存储器C.直接寻址直接给出了操作数本身D.寄存器直接寻址的操作数包含在寄存器内,由指令指定寄存器的名称答案:D2.寄存器寻址方式中,操作数在_________。
A.通用寄存器B.堆栈C.内存单元D.段寄存器答案:A3.寄存器间接寻址方式中,操作数在_________。
A.通用寄存器B.堆栈C.内存单元D.段寄存器答案:C4.下列指令中的非法指令是______。
A.MOV[SI+BX],AXB.MOVCL,280C.MOV[0260H],2346HD.MOVBX,[BX]答案:B5.设(SP)=0100H,(SS)=2000H,执行PUSHBP指令后,栈顶的物理地址是_____。
A.200FEHB.0102HC.20102HD.00FEH答案:A6.指令LEABX,TAB执行后,其结果是______。
A.将TAB中内容送BXB.将TAB的段基址送BXC.将TAB的偏移地址送BXD.将TAB所指单元的存储内容送BX答案:C7.下列正确的指令格式有______。
A.MOV[BX],1B.MOVAL,0345HC.MOVES:PTR[CX],3D.XLAT答案:D8.设(AX)=C544H,在执行指令ADDAH,AL之后,______。
A.CF=0,OF=0B.CF=0,OF=1C.CF=1,OF=0D,CF=1,OF=1答案:C9.若AL、BL中是压缩BCD数,且在执行ADDAL,BL之后,(AL)=0CH,CF=1,AF=0。
再执行DAA后,(AL)=_____。
A.02HB.12HC.62HD.72H答案:B10.执行下列程序后AL的内容为_____。
MOVAL,25HSUBAL,71HDASA.B4HB.43HC.54HD.67H11.下列四条指令中,需要使用DX寄存器的指令是______。
A.MULBXB.DIVBLC.INAX,20HD.OUT20H,AL答案:C12.设(AL)=0E0H,(CX)=3,执行RCLAL,CL指令后,CF的内容_______。
A.0B.1C.不变D.变反答案:B13.下列四条指令中,错误的是______。
A.SHLAL,CXB.XCHGAL,BLC.MOVBX,[SI]D.ANDAX,BX答案:A14.串操作指令中,有REP前缀的串操作指令结束的条件是________。
A.ZF=1B.ZF=0C.CX>0D.CX=0答案:D15.对于下列程序段:AGAIN:MOVAL,[SI]MOVES:[DI],ALINCSIINCDILOOPAGAIN也可用指令_______完成同样的功能。
A.REPMOVSBB.REPLODSBC.REPSTOSBD.REPESCASB答案:A16.JMPWORDPTR[DI]是________指令。
A.段内间接转移B.段内直接转移C.段间间接转移D.段间直接转移答案:A17.条件转移指令JNE的转移条件是_______。
A.ZF=1B.CF=0C.ZF=0D.CF=1答案:C18.下列指令中,影响标志位的指令是_____。
A.从存储器取数指令B.条件转移指令C.压栈指令D.循环移位指令答案:D19.假设外部设备的状态字已经读入AL寄存器,其中最低位为0,表示外部设备忙。
为了判断外部设备是否忙而又不破坏其它状态位,应选用下列哪一组指令?A.RCRAL,01HB.CMPAL,00HJZLabelJZLabelC.ANDAL,01HD.TESTAL,01HJZLabelJZLabel答案:D20.假定一组相邻字节的首地址在BX中,末地址在DI中,为了使下面的程序段能用来查找出其中第一个非零字节,并把它存放在AL中,在横线处应填入的指令是什么?SUBDI,BXINCDI_________NEXT:INCBXCMPBYTEPTR[BX],0LOOPNEXTMOVAL,BYTEPTR[BX]A.MOVSI,CXB.SUBBX,BXC.DECBXD.INCBX答案:C二、填空题21.指令MOV[BX+SI],AL中的目的操作数使用______段寄存器,属于______寻址方式。
答案:数据段基址加变址2.8086微机中,_______寄存器存放的是当前堆栈区的基地址。
堆栈区的存取原则为_____,在8086/8088系统中,栈区最大容量为_____。
若(CS)=2000H,(DS)=2500H,(SS)=3000H,(ES)=3500H,(SP)=0100H,(AX)=2FA6H,则这个栈区的物理地址的范围为________,CPU 执行PUSHAX指令后,栈顶地址为_____,该栈顶单元存放的内容为_______。
答案:SS先进后出64KB30000H~300FFH300FEHA6H3.若(BX)=42DAH,则下列指令段PUSHBXPOPF指令执行完毕后,(SF,ZF,CF,OF)=________。
答案:7531H,1,1,0,04.假设(DS)=1000H,(ES)=0200H,(BP)=0100H,(DI)=0200H,(10200H)=11H,(10201H)=12H,执行指令LEADX,[BP][DI]后,(DX)=_______。
答案:0300H5.假定(DS)=4000H,(DI)=0100H,(40100H)=55H,(40101H)=AAH,执行指令LEABX,[DI]后,BX中的内容是_______。
答案:0100H6.如果TABLE为数据段3400H单元的符号名,其中存放的内容为0505H,当执行指令MOV AX,TABLE后,(AX)=_______;而执行指令LEAAX,TABLE后,AX=______。
答案:0505H,3400H7.若(DS)=3000H,(SI)=2000H,(DI)=1000H,(AX)=2500H,(34000H)=00H,(34001H)=34H,(34002H)=00H,(34003H)=50H,变量AREA的值为3000H,执行指令LDSSI,AREA[DI]后,SI的内容是_______,DS的内容是_______。
答案:3400H,5000H8.已知(AL)=2EH,(BL)=6CH,执行ADDAL,BL之后,(AL)=_____,(BL)=______,ZF=_____,AF=______,OF=_______,PF=_____,CF=______。
答案:9AH6CH0,1,1,1,09.CPU对两个无符号8位二进制数进行加法运算后,结果为0EH,且标志位CF=1,OF=1,SF=0,其结果应为十进制数______。
答案:27010.8086CPU执行SUBAH,AL后结果为(AH)=85H,OF=1,CF=1。
若AH、AL中为带符号数,则指令执行前_______寄存器中的数大。
答案:AH22.若(AX)=7531H,(BX)=42DAH,则CMPAX,BX指令执行后,(AX)=_____,(SF,ZF,CF, OF)=_______。
答案:42DAH1,0,0,023.设(AL)=10100000B,则执行NEGAL后,(AL)=________;设(AL)=10000000B,则执行NEGAL后,(AL)=________。
答案:60H80H24.假定(AX)=96H,(BX)=65H,依次执行ADDAX,BX指令和DAA指令后,(AL)=___。
答案:61H25.执行下列指令序列后,(AH)=____,(AL)=_____,CF=____,AF=____。
MOVAX,0106HMOVBL,08HSUBAL,BLAAS答案:(AL)=08H,(AH)=0,CF=AF=126.设(AL)=98H,(BL)=12H,若执行指令MULBL后,(AX)=_______(OF)=_______(CF)=_______而执行指令IMULBL后,(AX)=_______(OF)=_______(CF)=_______答案:0AB0H110F8B0H11.27.已知(AL)=6,(BL)=7,执行下述指令后,(AL)=______MULBLAAM答案:02H28.CBW指令是将_____的符号扩展到_____中,如果(AL)=0A4H,则执行CBW指令后,(AX)=______。
答案:ALAH0FFA4H29.执行下列程序段后,给出指定寄存器的内容。
XORAX,AXDECAXMOVBX,6378HXCHGAX,BXNEGBXAX和BX寄存器的内容为_______。
答案:6378H和0001H30.执行下列指令后:MOVAX,1234HMOVCL,4ROLAX,CLDECAXMOVCX,4MULCXHLT寄存器AH的值是______,AL的值是_____。
答案:8DH00H31.假设(DX)=10111001B,(CL)=03H,CF=1,执行SHLDL,CL后,(DX)=_____。
答案:10111001000B32.下列指令段执行完毕后,(SI)=_______,(DI)=______。
STDMOVAX,2500HMOVDS,AXMOVBX,3500HMOVES,AXMOVSI,1500HMOVDI,0400HMOVCX,3REPMOVSB答案:14FDH03FDH33.假设ES段中有一个字符串’12FG3LM5C’,其名为ARRAY。
下面的程序段执行后CX 的值是______。
CLDLEADI,ES:ARRAYMOVAL,‘G’MOVCX,9REPNESCASBHLT答案:534.假设(DS)=2000H,(BX)=1256H,(SI)=528FH,位移量TABLE=20A1H,(232F7H)=80H,(232F8H)=32H,(264E5H)=50H,(264E6H)=24H:执行指令JMPBX后,(IP)=_________。
执行指令JMPTABLE[BX]后,(IP)=_______。
执行指令JMP[BX][SI]后,(IP)=_______。
答案:1256H3280H2450H35.已知(SS)=3000H,(SP)=0100H,执行下列程序后,(SP)=_______。
MOVAX,N1PUSHAXMOVAX,N2PUSHAXCALLL1.....L1:......RET2答案:00FEH36.已知(IP)=1000H,(SP)=2000H,(BX)=283FH,指令CALLWORDPTR[BX]的机器代码是FF17H,试问执行该指令后,内存单元1FFEH中的内容是______。