《大学微机原理第三章习题(共7页).doc》由会员分享,可在线阅读,更多相关《大学微机原理第三章习题(共7页).doc(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上8086/8088的寻址方式和指令系统习题一单项选择题1设BX=2000H,SI=3000H,指令MOV AX,BX+SI+8的源操作有效地址为( )。A5000H B5008H C23008H D32008H2设DS=1000H,ES=2000H,BX=3000H,指令ADD AL,BX的源操作数的物理 址为( )。13000H B23000H C33000H D 3000H3设DS=2000H,ES=3000H,SI=200H,指令MOV ES:SI,AL的目的操作数的物理地址为( )。A20200H B30200H C50200H D200H4指令MOV MEM
2、BX,AX中的MEM是( )。A原码 B反码 C补码 D移码5用来作为寄存器间接寻址的寄存器有( )个。A8 B6 C5 D46指令MOV BX+SI,AL中的目的操作数使用( )段寄存器。ACS BDS CSS DES7指令MOV BX,BP+5中的源操作数使用( )段寄存器。ACS BDS CSS DES8段内间接寻址只改变( )中的内容。ACS BIP CCS和IP DPSW9段间间接寻址只改变( )中的内容。 ACS BIP CCS和IP DPSW10下述指令中不改变PSW的指令是( )。AMOV AX,BX BAND AL,0FHCSHR BX,CL DADD AL,BL11下述指令
3、中不影响CF的指令是( )。ASHL AL,1 BINC CXCADD BX,AL DSUB AX,BX12两个整数补码9CH和7AH相加运算后,会产生( )。A无溢出且无进位 B无溢出但有进位C有溢出且有进位 D有溢出但无进位13指令JMP WORD PTR BX属于( )寻址。A段内直接 B段内间接 C段间直接 D段间间接14指令MOV AX,BX+SI+8的源操作数属于( )寻址。A直接 B寄存器相对 C基址变址 D 相对基址变址15指令( )不改变CF的内容。ADEC AL BADD AX,CXCSUB BX,CL DSBB AL,DL16十进制数字74所对应的压缩型BCD码的形式是(
4、 )。A74 B74H C4AH D4A17十进制数字85所对应的非压缩型BCD码的形式是( )。A0085 B0085H C0805 D0805H18设AL=67H,执行“CMP AL,76H”后,AL=( )。A76H B0DFH C67H D0019设AL=65H,BL=29H,执行下列指令后,AL=( )。 ADD AL,BL DAAA8EH B94 C94H D8E20压栈操作是( )位数的操作。A8 B16 C32 D任意21执行IMUL指令时,如果乘积的高位部分不是低位部分的符号扩展,则( )。AOF=0、CF=0 BOF=0、CF=1 COF=1、CF=0 DOF=1、CF=1
5、22设AX=3762H,CL=5,执行“SHR AX,CL”后,AX=( )。A0376H B01BBH C01BB D037623若要在BUF缓冲区中寻找与AL中不相等的数据,应使用( )SCASB串操作指令。AREPNE BREP CREPE DREPNZ24如果“JNC L”指令的操作码放在0040H,转移后在0020H处取下一条指令的操作码,那么该条指令的位移量是( )。A20H B1EH C0DEH D0E0H25如果“JA P”指令的操作码放在0050H, 该指令的位移量为34,执行完此条指令转移到取下一条指令的偏移地址为( )A0082H B0084H C0086H D0088H
6、26若DS=1000H,BX=2000H,(12000H)=56H,(12001H)=78H,AX=1000H,执行“ADD AX,BX”指令后,AX=( )。A8856H B6678H C8800H D6600H27设AX、BX寄存器中存放的是有符号的二进制数据,若执行“CMP AX,BX”指令后,( )L表示大于则转L。AJZ BJA CJGE DJG28执行“DIV BX”指令后,( )寄存器中存放商。AAL BAH CAX DDX29执行“( )AX,BX”指令不改变AX寄存器中的内容。ACMP BADD CXOR DOR30若AX=1000H,执行“NEG AX”指令后,AX=( )
7、。A1000H B0E000H C0F000H D1001H三填空题1在一条指令中,立即数只能作 操作数。28086/8088 CPU形成的内存物理地址有 位。3指令“MOV AX,BX+SI”的源操作数在内存的 段。4指令“MOV BX,BP+DI”的源操作数在内存的 段。5指令“MOV AX,ES:SI”的源操作数在内存的 段。6入栈指令使用的是 段。7指令“ADD BX+SI,AL”的目的操作数是 寻址方式。8指令“SUB BX,ASI”的源操作数是 寻址方式。9指令“JMP DWORD PTR BX”属于 寻址方式。10可作为寄存器间接寻址的寄存器有 个。11堆栈是从 地址向 方向生长
8、的。其操作遵循 的操作原则。12在进行弹栈操作时应该先将弹出的数据送 ,然后 。13在进行多精度加法运算时,一般使用 指令。14通用的数据传送指令不影响 。15“INC AL” 指令不影响标志位的 位。16若AL=11H,执行“NEG AL” 后,AL= 。17JMP指令的执行 PSW寄存器中的各位。18两个无符号数进行比较时,可以根据 标志位来判断大小。在编写程序时可使用 指令来实现。19若执行“DIV BX”,其被除数的高16位必须放在 ,低16位必须放在 。20DAA指令只对 寄存器中的内容进行调整。21若AL=84H,在执行CBW后,AL= 。22十进制数1234的压缩型BCD码为 。
9、23执行 AND AL,0FH JNZ L指令,是检测AL中的 位,当它为非零则转移。24若移位指令的移位位数大于1时,其移位位数必须放在 中。25如果AL=85H,CL=4,执行“SAR AL,CL”时,AL= ,CF= 。26在串操作指令中,SI指向 串,DI指向 串。27如果要查找某串中与AL寄存器中有相同的字符(数),则在SCASB指令前应配合使用 重复前缀。28转移指令“JNZ L ”的转移范围(十进制)是 。该指令的第二个字节为位移量,用 形式表示。29段内调用指令改变 中的内容。30段间调用指令改变 中的内容。四判断题(判断下列指令是否正确,如果是错误的,请指出错误的原因)1AD
10、D AL,BX2MOV BX,SI3SUB BX,SI4CMP 5,AL5MOV CX,AX 6LEA BL,A7SHR AL,68MOV AL,DI+SI9MOV BL,200H10MOV AX,DATA11INC BX12CMP BX,A ;A为变量13MOV AX,+14MOV AX, BP+BX15ADD AX,CX16OUT 400,AL17JNC P18MOV BX,,OFFSET A19LEA DI,ASI20CMP AX,5五改错题(按下列指令中的原意改正下列指令)1DEC SI2CMP AL,BX ;无符号数比较3MOV DX,AL4MOV AL,300H5MOV BX,DI
11、 ;字节操作6ADD AL,CX+SI7ADD AL,BX ;有符号数相加8PUSH AL9CMP BX,5 ;字节比较10MOV DS,1234H六简答题1设BX=1000H,SI=2000H,位移量D=3000H,请指出下列各种寻址方式的有效地址是什么?(1)使用D的直接寻址(2)使用BX寄存器的间接寻址(3)使用BX寄存器的相对寻址(4)基址变址寻址(5)相对基址变址寻址2请指出下列各条指令的源操作数的寻址方式是什么?(1)MOV AX,BUF(2)CMP AL,5(3)ADD BX+5,AX(4)SUB AX,BX+SI(5)ADC AH,ASI(6)MOV BX,SI(7)AND C
12、X,BBP+SI(8)JMP WORD PTR BX(9)JMP P(10)JMP FAR PTR P3设 DS=2000H, BX=0100H, SI=0002H, (20100H)=12H, (20101H)=34H,(20102H)= 56H, (20103H)= 78H, (21200H)= 2AH, (21201H)= 4CH,(21202H)=B7H,(21203H)=65H,试说明下列各条指令执行完后AX寄存器中的内容是多少?(1)MOV AX,1200H(2)MOV AX,BX(3)MOV AX,1200H(4)MOV AX,BX(5)MOV AX,BX+1100H(6)MOV
13、 AX,BX+SI(7)MOV AX,BX+SI+1100H4按下列各小题的要求写出相应的一条汇编语言指令。(1)把BX寄存器和DX寄存器的内容相加,结果存入DX寄存器中(2)以BX和SI寄存器作基址变址寻址方式,把该单元中的一个字传送到AX。(3)以SI和位移量20H作寄存器相对寻址,将该单元中的内容与CX寄存器中的内容相加,结果存入CX寄存器中。(4)清除AX寄存器的内容,同时清除CF标志位(5)将字单元NUM与0B6H进行比较5按下列各小题的要求使用相应的几条指令完成其操作。(1)将偏移量为200H的存储单元中的数与300H相加,结果存入AX寄存器中(2)比较AX寄存器中与BX寄存器中的
14、16位有符号数,当AX中的内容大于BX中的内容时转移到L。(3)将BUF1和BUF2中的16位数据交换(4)测试BUF字缓冲区中第15位,如果为1则转移到P(5)将BUFI和BUF2的字相加,结果送S缓冲区6设BX=8234H,请说明下列两条指令的区别,执行下列各指令后BX中的内容是什么?SHR BX,1SAR BX,17分别说明下列每组指令中的两条指令的区别。(1) MOV BX,BUF LEA BX,BUF(2) OR BL,0FH AND BL,0FH(3) JMP SHORT L JMP L(4) MOV AX,BX MOV AX,BX(5) MOV AX,BX+DI MOV AX,B
15、P+DI8说明下列各指令的源操作数和目的操作数的存储地方。(1)MOV 2000H,AX(2)ADD AX,BX+5(3)LEA SI,BUF(4)DAA(5)MUL BL9指出下列无条件转移指令的转移目标地址是什么?存放在何处?(1)JMP BX(2)JMP WORD PTR BX(3)JMP DWORD PTR BX(4)JMP P(5)JMP SHORT R10说明MOVSB和CMPSB各能使用哪些重复前缀?七程序分析题1现有程序段如下:MOV AX,1234HMOV BX,60HADD AX,BX请回答 :(1)该程序段完成的功能是什么?(2)程序段执行完后AX= 。2现有程序段如下:
16、MOV AX,0603HMOV BL,8AADDIV BL请回答 :(1)该程序段完成的功能是什么?(2)程序段执行完后AX= 。5设A为字节变量,变量中的内容分别为64H、52H;B为字节变量,变量中的内容分别为12H、46H,现有程序段如下:MOV AL,ASUB AL,BDASMOV C,ALMOV AL,A+1SBB AL,B+1DASMOV C+1,AL请回答 :(1)该程序段完成的功能是什么?(2)最后结果是什么?6现有程序段如下:MOV BL,ALMOV CL,4SHR BL,CLMOV A,BLAND AL,0FHMOV B,AL请回答 :(1)该程序段完成的功能是什么?(2)
17、如果AL的初值为56H,则A= ,B= 。7现有程序段如下:MOV AL,8MOV BL,7MUL BLAAM ADD AX,3030HXCHG AH,ALMOV BUF,AX请回答 :(1)该程序段完成的功能是什么?(2)BUF两个单元中的值分别为 。8现有程序段如下:MOV AX,MMOV DX,NSHR DX,1RCR AX,1请回答 :(1)该程序段完成的功能是什么?(2)若M=1234H,N=5678H,程序运行后DX= ,AX= 。9现有程序段如下:XOR AX,AXMOV AX,6342HMOV CX,0404HROL AH,CLXCHG CH,CLROR AL,CL请回答 :(
18、1)该程序段执行后AX= 。(2)CF= 。12现有程序段如下: CLD MOV SI,OFFSET BUF1 MOV DI,OFFSET BUF2 MOV CX,100 REP MOVSB请回答:该程序段完成的功能是什么?13 现有程序段如下: CLD LEA DI,BUF MOV AL,20H MOV CX,100 REPNZ SCASB请回答 :(1)该程序段完成的功能是什么?(2)若ZF=1,表示BUF中 值为20H数据(3)若BUF的首地址为0,ZF=0,执行完该程序段后DI= 。14现有程序段如下:MOV AL,0MOV BL,1MOV CX,10L: ADD AL,BLINC BLLOOP L请回答 :(1)该程序段完成的功能是什么?(2)该程序执行完后,AL= 。专心-专注-专业