汇编语言期末复习模拟题库.docx
《汇编语言期末复习模拟题库.docx》由会员分享,可在线阅读,更多相关《汇编语言期末复习模拟题库.docx(21页珍藏版)》请在冰豆网上搜索。
![汇编语言期末复习模拟题库.docx](https://file1.bdocx.com/fileroot1/2023-6/22/1bf88114-a73a-4762-8c0e-3a36fb07b3d3/1bf88114-a73a-4762-8c0e-3a36fb07b3d31.gif)
汇编语言期末复习模拟题库
一考试题型100分
1.数制码制10分
2.填空30分
3.判断题:
10分语句正确与否错误原因
4.选择题15分
5.阅读程序15分
6.编写程序20分
二.选择题59
计算机基础
8086寄存器
寻址方式
指令功能:
算术,逻辑,移位,循环
标志位:
C,Z,S,O,P
堆栈,SP
汇编格式,变量,标号
程序开发:
EDIT,MASMML,LINK,DEBUG
1、通常说计算机的内存为32M、64M或128M指的是:
()
A.RAM的容量B.ROM的容量C.RAM和ROM的容量D.硬盘的容量
2.汇编语言的优点不包括_____。
A直接有效地控制硬件B生成的代码序列短小
C运行速度快D编程容易
3十六进制数88H,可表示成下面几种形式,请找出错误的表示()。
A.无符号十进制数136B.带符号十进制数-120
C.压缩型BCD码十进制数88D.8位二进制数-8的补码表示
4下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是()
A、AX,BX,CX,DXB、BX,BP,SI,DI
C、SP,IP,BP,DXD、CS,DS,ES,SS
5可用作寄存器间接寻址或基址、变址寻址的地址寄存器,正确的是()。
A.AX,BX,CX,DXB.DS,ES,CS,SS
C.SP,BP,IP,BXD.SI,DI,BP,BX
6.当运行结果为0时,ZF=__________。
A0B1C任意D不影响
7某次求和结果最高位为1,则SF=__________。
A0B1C任意D不影响
8设DS=5788H,偏移地址为94H,该字节的物理地址_____________。
A57974HB5883HC57914HD58ECH
9.“MOVAX,[BP+DI]”指令从__________段取出数据送AX。
ACSBSSCDSDES
10.下面不能用于寄存器寻址的寄存器有()
A.CSB.AXCIPDSIE.CLF.SP
11存储器寻址方式在指令中给出操作数在内存中的地址,该地址是()
A逻辑地址B.有效地址C偏移地址D.物理地址E.段地址
12.堆栈的操作原则是_____________。
A先进先出B后进先出C后进后出D循环
13“MOVSP,3210H”和“PUSHAX”指令执行后,SP寄存器值是____。
A3211HB320EHC320FHD3212H
14假设当前SP=700H,执行popax指令后,SP内容变为_____
A6FEHB6FFHC701HD702H
15用一条指令实现将AX←BX+SI的方法是______
AXCHGAX,[BX][SI]BMOVAX,[BX][SI]
CMOVAX,[BX+SI]DLEAAX,[BX][SI]
16.设AX=1000H,BX=2000H,则在执行了指令“SUBAX,BX”后,
标志位CF和ZF的值分别为_____________。
A0,0B0,1C1,0D1,1
17.设DH=10H,执行NEGDH指令后,正确的结果是()。
A.DH=10HCF=1B.DH=0F0HCF=0
C.DH=10HCF=0D.DH=0F0HCF=1
18.IMULCL指令实现______功能
A有符号乘法:
AX←AL×CLB无符号乘法:
AX←AL×CL
C有符号乘法:
DX←AL×CLD无符号乘法:
DX←AL×CL
19.执行除法指令后,影响的标志位是______
A所有状态标志都不确定BCFOFCSF、ZFDAF、PF
20.下列4条指令中,有______条指令需要使用DX寄存器
MULBX、IDIVBL、INAX,20H、OUT21H,AL
A1B2C3D4
21.执行下面指令序列后,结果是()。
MOVAL,82H
CBW
A、AX=0FF82HB、AX=8082HC、AX=0082HD、AX=0F82H
22.执行ANDAL,80H后,可以肯定的执行结果是AL寄存器的___
A最高位为0B最高位为1C低7位均为0D低7位均为1
23.指令___实现对AX当中D15和D0位设置为0,其他位不变的功能。
AANDAX,7FFEHBORAX,8001H
CXORAX,8001HDNOTAX
24.指令_____实现对AX当中D15和D0位设置为1,其他位不变的功能。
AANDAX,7FFEHBORAX,8001H
CXORAX,8001HDNOTAX
25.执行ORAL,80H后,可以肯定的执行结果是AL寄存器的______
A最高位为0B最高位为1C低7位均为0D低7位均为1
26.指令__________实现对AX当中D15和D0位求反,其他位不变的功能。
AANDAX,7FFEHBORAX,8001H
CXORAX,8001HDNOTAX
27设AX=1000H
NEGAX
NOTAX
执行上述指令后,AX=______
A1001HB0FFFHC1000HD0111H
28.下列指令中,执行后对标志未发生影响的是______。
AMOVAX,[BX]BADDAX,0FFHH
CANDAX,[BX]DTESTAX,0FFHH
29.执行“SARBX,1”指令后,BX最高D15位等于__________。
A0B1CD0DD14
30.对寄存器AX的内容乘以2的指令是______。
ASHRAX,1BSHLAX,1
CRORAX,1DRCRAX,1
318086/8088CPU的条件转移指令Jcc采用__________地址寻址方式。
A相对B直接C寄存器间接D存储器间接
32.编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令有()。
A、CMPB、SUBC、ANDD、MOV
33当标志CF=1时转移到目的地址的条件转移指令是______
AJCBJNCCJZDJNZ
34条件转移指令JA产生程序转移的条件是______
ACF=0和ZF=1BCF=0和ZF=0CCF=1和ZF=1DCF=1和ZF=0
35.循环指令LOOPNZ继续循环的条件是______
ACX=0,且ZF=0BCX=0,或ZF=1CCX≠0,且ZF=0
DCX≠0,或ZF=1
36.JCXZ指令发生转移的条件是__________。
ACX=0BCX≠0CZF=0DZF=1
37下面属于可屏蔽中断的是()
A外部中断B除法错中断CINT3D单步中断E溢出中断
38串操作指令LODS隐含使用______寻址操作数
ABXBCXCSIDDI
39重复前缀在那个指令前没有意义()
A.STOSB.LODSC.CMPSD.SCAS
40指令REPZCMPSB结束重复执行的情况是:
A.CX=0且ZF=0B.CX≠0且ZF=0C.CX=0且ZF=1
D.CX≠0且ZF=1
41.汇编语言源程序中,每个语句由四项组成,不影响语句功能的是___。
A名字项B操作码C操作数D注释
42.汇编语言源程序中,每个语句由四项组成,必须有的是____。
A名字项B操作码C操作数D注释
43可执行代码段应该在______定义的逻辑段中。
A.STACKB.DATAC.CODED.EXTR
44.汇编语言中的”ENDBEGIN“中的BEGIN指的是____。
A程序开始执行的位置B程序终止执行的位置
C程序开始汇编的位置D程序终止汇编的位置
45用户为了解决自己的问题,用汇编语言所编写的程序,称为()。
A.目标程序B.源程序C.可执行程序D.汇编程序
46.将OBJ文件转换为EXE可执行文件的是______。
A汇编程序B连接程序C编辑程序D调试程序
47.调试程序的文件是
A汇编程序B连接程序C编辑程序D调试程序
48.在汇编语言中,如下各个进制常数,______是错误的。
A64B64HCA0HD0100B
49.下列标号不合法的是_____________。
AWANGBMOVCF8DAB3
50.在伪指令语句“NUMBERDW1234H”中的NUMBER项称为__。
A标号B变量C伪操作符D数据
51.已知NUM1DB3
NUM2DB4
下面指令正确的是()
A)MOVAX,NUM1
B)MOVAL,NUM2
C)MOVAL,NUM1+NUM2
52.对于采用DW伪指令定义的变量具有的类型属性是___。
ABYTEBWORDCDWORDDFAR
53.对于采用DB伪指令定义的变量具有的类型属性是______。
ABYTEBWORDCDWORDDFAR
54.已知AGAIN是一个标号,则指令”JNZAGAIN”中,AGAIN包含__属性。
ANEAR类型BBYTE类型C逻辑地址
DFAR类型EWORD类型
55.变量名的属性有______等。
ANEARBFARCBYTEDWORDEDWORD
56.标号的属性有______。
ANEARBFARCBYTEDWORDEDWORD
57.汇编语言中,______可以作为有效的名字,如标号、变量名等。
AMOVBAGAINCCMPDENDPENEG
58.汇编语言中,______可以作为有效的名字,如标号、变量名等。
A0FFFHBLOOP1CTESTDADD
59.在汇编语言程序中,对END语句的叙述正确的是________。
AEND语句是一可执行语句BEND语句表示程序执行到此结束
CEND语句表示源程序到此结束DEND语句在汇编后要产生机器码
三.多选题5
1、选出下面那些是控制器的功能:
()
A.计算B.取指令C.译码D.存储数据
2.下面存储器中属于辅助存储器的是:
()
A.RAMB.ROMC.磁盘D.光盘E.硬盘
3下面属于系统软件的有()
A.WINDOWSB.MASMC.VisualC++D.WORD
4下面所列通用数据传送MOV指令的几种传送中,
不正确的传送方式是_____________。
A立即数到寄存器B立即数到存储器C从寄存器到存储器
D从存储器到存储器E从存储器到寄存器
5下面的XCHG指令中,语法不正确的有_____________。
AXCHGAL,DSBXCHGBL,[BX]
CXCHGAL,0FHDXCHGBUF1,BUF2EXCHGBL,BH
四判断40
非法指令
标志位
程序开发
1.“46”用原码表示为:
(00101110)原码
“-46”用原码表示为:
(10101110)原码对
2.086/8088系统中,堆栈的操作可以是字节或字操作。
错
3已知AX=1234H、BX=4612H,计算1234-4612的差的算法不能写成下面的形式:
对
SUBAX,BXDAS
4已知CL=23H,指令“CMPCL,CL”执行后标志位的值是:
CF=0,ZF=1,SF=0对
5判断下列8086指令的对错:
SHLAX,3错
6.对寄存器AX的内容乘以4的正确指令序列是SHLAX,1;SHL,AX,1对
7.已知CL=0,指令INCCL的执行的结果CF=不变对
8.设DH=10H,执行NEGDH指令后,正确的结果是DH=0F0HCF=0错
9下列指令中,执行后对标志未发生影响的是D错
AMOVAX,[BX]BADDAX,0FFHH
CAND AX,[BX]DTESTAX,0FFHH
10对寄存器AX的内容乘以2的指令是SHLAX,1对
11.8088按逻辑段组织程序,数据变量应该且必须在数据段中。
错
12.说明性语句可以在任何一个段中。
对
13.使用简化段定义源程序格式,必须具有.MODEL语句,
且位于所有简化段定义语句之前。
对
14.使用简化段定义源程序格式,必须具有.MODEL语句,但写在何处没有关系.错
15.正误判断题:
源程序中只能用标号START表示程序的起始执行点。
错
16.完整段定义的程序入口点首先应该设置数据段寄存器的值。
对
17.汇编源程序可以用WORD文字处理系统处理,并保存为WORD文档。
错
18.对于常数41H,在汇编语言中表达成字符’A’也是正确的,
因’A’的ASCII码就是41H。
对
19.EQU和=两个伪指令的功能和用法一样。
错
20.MOVAX,DI+SI有没有语法错误?
错
21.MOV AX,0对
22.MOV [1000H],1000H错
23.MOV BL,AX错
24.MOV [0],AX对
25.PUSH PSW错
26.SHR DX,BL错
27.MUL AL,BL错
28.AND AX,[1000]对
29.XCHG CS,DS错
30.LDS AL,[BX]错
31.MOV CS,100H错
32.MOV [1000H],0错
33.MOV AX,1AFCH对
34.MOV CS,AX错
35.PUSH AX对
36.SHR DX,4错
37.MOV AL,CDH错
38.MOV AX,BUFFER对
39.XCHG 1000H,AX错
40.LDS SS,[BX]错
五.填空题36
汇编语言程序的伪指令
8086CPU结构,寄存器
地址计算:
有效地址,物理地址
二进制运算
指令功能
1.段的定义用的是伪指令()SEGMENT/ENDS
2.程序结束的语句是()解答:
MOV AX,4C00HINT 21H
3.用汇编语言编写的程序称为______,它必须用______程序将它转换成二进制的机器语言程序,这种机器语言程序被称为______,而转换的过程称为______。
它还必须用______程序连接,才能生成可执行的程序汇编源程序,汇编程序,目标代码,汇编。
连接
4.汇编源程序不可以用word文字处理系统处理,并保存为word,师因为文档汇编源程序必须是纯文本文件
5.在表达存储容量时,1KB=_____B;1MB=___________KB。
10241024
6.8086/8088CPU的地址线有20条,它的存储容量为_______。
1MB
1KB=210B=1024B,1MB=220B=210KB=1024KB,1GB=230B=210MB=220KB=1024MB,1TB=240B=230KB=220MB。
所以答案:
1024/210 1024/210/1K
7.外设与系统之间必须通过________连接。
系统通过___________与外设进行通信。
输入输出接口电路(I/O接口) I/O端口
8.机器指令是一组 ___,由__和__构成。
机器语言程序常被称作___。
二进制代码,操作码操作数目标程序
9.对于计算机内部的一个编码:
01001001,他代表什么含义01001001作为ASCII码,表示字符I
10.计算1101+11,1101-11,1101*11,1101/11的值。
1101+11=100001101-11=10101101*11=1001111101/11=100(余数1)e
11.8086CPU的主存寻址范围是(),数据线有()条
主存寻址空间为1M,数据线有16条eee
12.8086CPU的内部结构分为总线接口(BIU)和执行单元(EU)两大部分。
BIU负责CPU对存储器和外设的访问;EU负责指令的译码、执行和数据的运算。
13.完成一条指令的功能可以分为两个主要阶段:
(取指令)和(执行指令)
14.Intel8086CPU的段寄存器有________________________。
15.Intel8086CPU的SP寄存器的主要作用是_____________________________。
16.(CS)=1000H,(DS)=2000H,(ES)=3000H,(SS)=4000H,(DI)=a100,操作数[DI+1000H]的寻址方式是_________,物理地址是______。
17.标志寄存器中OF标志位的主要作用是_____________________。
18.TEST指令的功能是______________________________。
19.指令LEA__AX,[SI+100H]的具体操作是_____________________。
20.有符号二进制字节数可表示的数的范围是_____________________。
21.执行一条POP__AX指令后,SP的内容发生的变化是_______________。
22.AL寄存器的内容为28H,执行指令OR__AL,33H后,AL的值为_______。
23.测试寄存器AL和BL的值是否相等而不改变其值应使用指令_______________。
24.Intel8086CPU的通用寄存器有______________________________。
25.Intel8086CPU的IP寄存器的作用是____________________________。
26.(CS)=1000H,(DS)=2000H,(ES)=3000H,(SS)=4000H,操作数[1000H]寻址方式是___,物理地址是________________。
27.标志寄存器中CF标志位的主要作用是______________________。
28.NEG指令的功能是_____________________________。
29.指令MUL__CL的具体操作是__________________________。
30.无符号二进制字节数可表示的数的范围是______________________。
31.执行一条PUSH__AX指令后,SP的内容发生的变化是__________________。
32.AL寄存器的内容为28H,执行指令AND__AL,33H后,AL的值为____________。
33.测试寄存器AL和BL的值是否相等而不改变其值应使用指令_______________。
119
01110111
77
242
11110010
F2
223
11011111
DF
23
00010111
17
90
01011010
5A
120
01111000
78
35.
十进制数
二进制数
十六进制数
119
11110010
DF
00010111
5A
120
十进制数
二进制原码
二进制反码
二进制补码
19
00010011
00010011
00010011
-92
11011100
10100011
10100100
-127
11111111
10000000
10000001
36.
十进制数
二进制原码
二进制反码
二进制补码
19
-92
-127
六.回答问题3
地址计算
指令段运行结果
1.说明下列指令中源操作数的寻址方式?
如果BX=2000H,DI=40H,给出DX的值或有效地址EA的值。
(1)MOVDX,[1234H]
(1)直接寻址,EA=1234H
(2)MOVDX,1234H
(2)立即数寻址,DX=1234H
(3)MOVDX,BX(3)寄存器寻址,DX=2000H
(4)MOVDX,[BX](4)间接寻址,EA=2000H
(5)MOVDX,[BX+1234H](5)相对寻址,EA=3234H
(6)MOVDX,[BX+DI](6)基址变址寻址,EA=2040H
(7)MOVDX,[BX+DI+1234H](7)相对基址变址寻址,EA=3274H
2已知DS=2000H、BX=0100H、SI=0002H,存储单元[20100H]~[20103H]依次存放12345678H,[21200H]~[21203H]依次存放2A4CB765H,说明下列每条指令执行完后AX寄存器的内容。
(1)MOVAX,1200H
(1)AX=1200H
(2)MOVAX,BX
(2)AX=0100H
(3)MOVAX,[1200H](3)AX=4C2AH
(4)MOVAX,[BX](4)AX=3412H
(5)MOVAX,[BX+1100H](5)AX=4C2AH
(6)MOVAX,[BX+SI](6)AX=7856H
(7)MOVAX,[BX][SI+1100H](7)AX=65B7H
3、请分别用一条汇编语言指令完成如下功能:
(1)把BX寄存器和DX寄存器的内容相加,结果存入DX寄存器。
(2)用寄存器BX和SI的基址变址寻址方式把存储器的一个字节与AL寄存器的内容相加,并把结果送到AL中。
(3)用BX和位移量0B2H的寄存器相对寻址方式把存储器中的一个字和CX寄存器的内容相加,并把结果送回存储器中。
(4)用位移量为0520H的直接寻址方式把存储器中的一个字与数3412H相加,并把结果送回该存储单元中。
(5)把数0A0H与AL寄存器的内容相加,并把结果送回AL中。
(1)ADDDX,BX
(2)ADDAL,[BX+SI]
(3)ADD[BX+0B2H],CX
(4)ADDWORDPTR[0520H],3412H
(5)ADDAL,0A0H
七编程序
顺序程序:
,符号函数,查表,表内为数据,地址
分支程序:
循环程序:
多个字节数据,字数据求和,带符号数,无符号数
拆字,合字
数据交换:
4位
绝对值
字母的大写与小写的转换
求最大数,最小数
统计正数,负数的个数
数据排序,带符号数,无符号数
数据显示:
ASCII码,二进制
DOS系统功能调用:
字符,