汇编语言复习题附答案.docx
- 文档编号:26243212
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:24
- 大小:204.98KB
汇编语言复习题附答案.docx
《汇编语言复习题附答案.docx》由会员分享,可在线阅读,更多相关《汇编语言复习题附答案.docx(24页珍藏版)》请在冰豆网上搜索。
汇编语言复习题附答案
汇编语言复习题
注:
蓝色标记的为答案,此答案仅供参考,大家自己做一下或看以一下,认为不对的地方,可以提出来一起讨论一下,另外看一下课后老师布置的相应作业。
在此文档最后最后附有课
后四、六章的答案,大家抓紧时间复习哦!
一、选择题
1.把要执行的程序与库文件连接起来形成可执行文件的系统程序是(B)。
A.汇编程序B.连接程序C.机器语言程序D.源代码程序
2.在8088/8086的寄存器组中,CPU确定下一条指令的物理地址时需要用到的寄存器对是
(C)。
A..SS和SPB.DS和DIC.CS和IPD.ES和SI
3.为了使主机访问外设方便起见,外设中的每个寄存器给予一个(C)。
A.物理地址B.逻辑地址C.端口地址D.段地址
4.MOVAX,3064H,该指令中源操作数采用的寻址方式是(A)。
A.立即B.直接C.寄存器相对D.寄存器间接
5.换码指令的助记符是(C)。
A.XCHGB.LEASC.XLATD.MOV
6.如果A>B(A、B有符号数)发生转移,应选择的条件转移指令是(JGE)。
7.下列符号中,可用作标识符的是(C)。
A.MOVB.AXC.MSG1D.1ABC
8.XDB10HDUP(1,2)内存变量定义语句拥有了(A)个字节的存储空间。
A.20DB.10DC.20HD.10H
9.当DF=0时,执行串操作指令MOVSB变址寄存器SI、DI的值将(C)。
A.不变B.减1C.加1D.无法确定
10.如下指令可将AX寄存器内容改变的是(A)。
A.ANDAX,BXB.TESTAX,BXC.CMPAX,BXD.XCHGAX,AX
11.16位CPU支持的I/O地址范围是(D)。
A.0~0FFFFFHB.0~0FFFFHC.0~0FFFHD.0~0FFH
12.MULCL指令实现的功能是(A)。
A.无符号乘法:
AXALXCLB.有符号乘法:
AXALXCL
C.无符号乘法:
DXALXCLD.有符号乘法:
DXALXCL
13.DOS系统功能调用(INT21H)中,显示字符串的功能号是(D)。
A.01HB.02HC.08HD.09H
14.在16位CPU读取指令时,需要用到的寄存器对是(C)。
A.SS和SPB.DS和DIC.CS和IPD.ES和SI
15.下列指令中,源操作数(既第2操作数)属于基址加变址寻址方式是(B)。
A.MOVAX,23HB.MOVAX,[BX+SI]C.SUBAX,[BX]D.ADDAX,BX
16.有内存变量定义语句:
VARDW10DUP(1,2),1234H,VAR的属性TYPELENGTH和
SIZE的值分别是(D)。
A.1,20,20B.2,20,40C.2,22,44D.2,10,20
17.在下列语句中,AGAIN称为(C)。
AGAININCSI
A.指令B.寄存器C.标号D.变量
18.十六进制数88H,可表示成下面几种形式,请找出错误的表示(A)。
A.8位二进制数—8的补码B.带符号十进制数—120
C.压缩型BCD码十进制数88D.表示无符号十进制数136
19、将AL中的最低4位置为0而不改变其他位的正确指令是(B)。
A.ORAL,0F0HB.ANDAL,0F0HC.ORAL,0FHD.ANDAL,0FH
20、某内存单元的物理地址为297E0H其对应的逻辑地址表示错误的是(C)。
A.296EH:
100HB.295EH:
200HC.287EH:
100HD.297EH:
0H
21、与二进制数00011011等值的十进制数为(B)。
A.26B.27C.28D.30
22、表达式“12HXOR78H”的值是(C)。
A.3AHB.80HC.6AHD.90H
23、某内存单元的逻辑地址为296EH:
100H,其对应的物理地址是(A)。
A.297E0HB.2A6EHC.297F0HD.296E0H
24、16位微机分段管理存储空间,但每段容量最大不超过(C)。
A.8KB.16KC.64KD.1M25、下列操作数的寻址方式正确的是(D)。
A.[AX]B.[SI+DI]C.BX+90D.BX
26
汇编语言源程序经汇编程序汇编后产生的文件的扩展名是(B)。
28设DS=1000HES=2000HBX=3000H指令ADDAL,[BX]的源操作数的物理址为(A)。
A、13000HB、23000HC、33000HD、3000H
29、汇编语言属于(D)。
A、用户软件B、系统软件C、高级语言D、机器语言
30、当使用BP作编程地址时,此时使用的是(D)段。
34、伪指令是(C)规定的汇编说明符,它在源程序汇编时进行说明。
A、DEBUGB、LINKC、MASMD、EDIT
35、已知CALLBX执行前SP=100H,执行后SP的内容为。
(C)
A、100H
B、102H
C、98H
D、0FEH
36、若定义“AEQU100”,执行“MOVAX,A”后,AX=(C)。
AA的偏移地址B、A单元中的内容
C100D、A的段地址
37、一个段最大可定义(B)字节。
A、1MB、64KC、32KD、16K
38、设A和B为字变量,C为标号,下列指令中不正确的是(C)。
A、MOVAX,AB、MOVAX,B
C、JNEAD、JMPC
39、下述指令中不影响CF的指令是(B)。
A、SHLAL,1B、INCCX
C、ADD[BX],ALD、SUBAX,BX
40、两个整数补码9CH和7AH相加运算后,会产生(C)。
A、无溢出且无进位B、无溢出但有进位
C有溢出且有进位D、有溢出但无进位
41、指令JMP
WORDPTR[BX]属于
(A)寻址。
A、段内直接
B、
段内间接
C、段间直接
D
、段间间接
42、指令MOV
AX,
[BX+SI+8]的源操作数属于(D
)
寻址。
A、直接
B寄存器相对
C、基址变址
D、相对基址变址
43、指令(
A)
不改变CF的内容。
A、DECAL
B
、ADDAX,CX
C、SUB[BX],
CL
D、SBB
AL,DL
44、十进制数字
74所对应的压缩型BCD码的形式是(
B
)。
A、74
B、74H
C、4AH
D、4A
45、十进制数字
85所对应的非压缩型
BCD码的形式是(
D)。
A、0085
B、0085H
C、0805
D、0805H
46、设AL=67H,
执行
“CMPAL,76H'后,AL=(
C)。
A、76H
B、0DFH
C、67H
D、00
二、判断题
MOVAL,BX
(
错)
MOVDS,SS
(
错)
MOV[BX],[DI]
(
错)
POPCS
(
对)
MOVDS,5678H
(
错)
ADD1234H,CX
(
错)
CLD
(
对)
SHLBX,AL
(
错)
MULDX
(
对)
LEAAX,[BX+DI]
对)
ADDDS,5678H
(
对)
STC
(
对)
CMP234H,CX
(
错)
MULDX,10H
(
错)
LEAAX,[BX+DI]
(
对)
XCHGES,AX
(
对)
POP
AL
(
错)
SUB
AL,SI
(
错)
MOV
DS,SS
(
错
)
SAL
DX,AL
(
错
)
MOV
AX,BL
(
错
)
MUL
25
(
错
)
SHR
BX,CH
(
错
)
PUSHCS
(
对
)
LEAAX,[BX+SI]
(
对
)
三、简答题
1、标志寄存器共有那些标志位?
答:
有运算结果标志位和状态控制标志位两大类,其中运算结果标志位有进位标志位CF、
奇偶标志PF、辅助进位标志AF、零标志ZF、符号标志SF、溢出标志OF。
状态控制标志位
有方向标志DF、中断允许标志IF、陷阱标志TF。
2、标号和变量所具有哪三种属性?
答:
段属性、偏移量属性、类型属性。
3、写出16位CPU的段寄存器的助记符和中文名称。
答:
CS代码段寄存器
DS数据段寄存器
ES附加段寄存器
SS堆栈段寄存器
4、指出下列指令源操作数(第二操作数)的寻址方式。
1)MOVAX,1000[BX][DI]
基址变址相对寻址
2)MOVBX,[1000H]
直接寻址
3)ADDSI,AX
寄存器寻址
4)MOVAX,100
立即数寻址
5)MOVAX,[SI]
寄存器间接寻址
5、在8088/8086的寻址方式中,与数据有关的寻址方式分为哪七种寻址方式?
答:
立即数寻址、寄存器寻址、直接寻址、寄存器间接寻址、相对寻址、基址变址寻址、基址变址相对寻址。
6、已知DS=1000HBX=100HSI=2,存储单元[11200H]~[11203H]依次存放(十六进制)12、34、56、78,说明下列每条指令执行完后AX寄存器的内容。
1)
MOVAX,[1200H]
3412H
2)
MOVAX,[BX+1101H]
5634H
3)
MOVAX,[BX+SI+1100H]
7856H
7、编写将字节数据70h输出到端口地址为220H的指令序列。
解MOVDX,220H
MOVAL,70H
OUTDX,AL
8、按要求写出下列相应的内存变量定义语句。
(1)定义一个字节区域,第一个字节的值为10,其后跟100个初值为0的连续字节。
解:
DB10,100DUP(O)
(2)先定义一个字符串STRING其偏移量指定为10,其初值为“abcdef”,然后再定义5个字类型的数组ARRAY要求STRING和ARRAY偏移量相同。
解:
ORG10STRINGDB
abcdef
ORG10
ARRAYDW5DUP(?
)
(3)定义一个以-1为结束符的字符串,该串中含有换行符和回车符
解:
db0dh,0ah,'-1'
(4)从偶地址开始定义20个字,其初值为1。
解:
EVEN
DW20DUP
(1)
(5)定义100个字,其初值为0。
解:
DW100DUP(0)
9、设数据段定义如下:
DATASEGMENT
V1
DW
V2
DB
V3
=
V4
DB
V5
DW
DATAENDS
1234h,3456h
ab'
$+5
10DUP(?
)
v4
请回答:
(1)该数据段占用的内存有多少字节?
(18D)
(2)v3的值为多少?
(11D)
(3)执行“MOVAX,v5”指令后,AX值为多少?
(6H)
(4)执行“MOVAL,BYTEPTRv2”指令后,AL值为多少?
⑻
10、设数据段定义如下:
DATASEGMENT
v1
DB
0ah,0c4h
v2
DW
1,2,3
v3
DB
4,100DUP(?
)
v4
DB
‘ABCDE'
v5
DW
v3
DATAENDS
请回答:
(1)该数据段占用的内存有多少字节?
(116D)
(2)v5单元中的值是多少?
(8H)
(3)v6的值是多少?
(108D)
(4)执行“MOVAL,V4+2”指令后,AL的值是多少?
。
(C)
11、下列数值在内存中连续存储,试画出其在内存的存储形式。
(1)字节:
7,8,'1''a'、'A,和-1
(2)字:
12H0AB56H和-1,0
(3)双字:
-765H、56789256H和0,-1
解:
它们的内存示意图如下:
(注:
此题中的内存物理地址可以自己任意指定,只要连续即
可)
12340H
12341H
12342H
第
(2)题
第
(1)题
9B
F8
FF
FF
56
92
78
56
00
00
00
00
FF
FF
FF
FF
13000H
13001H
13002H
第(3)题
12下列操作可使用哪些寄存器?
(1)加法和减法。
(AX,BX,CX,DX,AL,AH,BL,BH,CL,CH,DL,DH,SI,DI)
(2)循环计数。
(CX,CL)
(3)乘法和除法。
(BX,CX,AH,BL,BH,CL,CH,DL,DH)
(4)指示程序已执行到哪条指令的地址。
(CS,IP)
(5)指示当前从堆栈中弹出数据的地址。
(SP)
(6)表示运算结果为零。
(ZF)
13、按要求编写指令序列。
(1)将立即数1234H与BX指示存储单元偏移地址的内容相加。
ADD[BX],1234H
(2)将AX寄存器中的高字节和低字节内容交换。
XCHGAH,AL
(3)右移DX4位,并把0移入最高位。
MOVCL,4
SHRDX,CL
(4)用一条指令实现把(BX和(SI)之和传送给DXo
LEADX,[BX+SI]
(5)检测BX中的第2、8和10位中是否有1位为1o
TESTBX,1000000010B
(6)将DX-AX中的32位数算术左移1位。
SHLAX,1
RCLDX,1
(7)以BX和SI寄存器作基址变址寻址方式,把该单元中的一个字传送到AX
MOVAX,[BX+SI]
14编写从端口地址为220H的端口读入一个字节的指令序列。
MOVAL,SOURCE
CMPAL,SOURCE+1
JNCBRANCH
MOVAL,SOURCE+1
BRANCH:
MOVMAX,AL
HLT
CODEENDS
END
程序的功能是:
参考答案:
比较两个无符号数的大小,把大数存入变量MAX中。
2、设A,B,C,X和Y都是有符号的字变量,阅读下列程序段,回答后面的问题。
MOVAX,C
SUBAX,120D
CWD
MOVCX,DX
MOVBX,AX
MOVAX,A
IMULB
ADDAX,BX
ADCDX,CX
IDIVC
MOVX,AX
MOVY,DX
请回答:
上述程序段完成的运算公式是。
上述程序
段执行后,商存于,余数存于。
参考答案:
(C-120+A*B)/C,X,Y
3.将下列程序补充完整(即在画线的地方填入相应的内容),使该程序实现如下的功能:
-128wXw127
l1
Y=*2
-3
DATA
SEGMENT
XDB
YDB
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
MOVAX,DATA
MOVDS,AX
MOVAL,X
AL,0
JGEBIGPTR
MOVY,3
HLT
BIGPTR:
JEEQUPTR
MOVY,
HLT
:
MOVY,2
HLT
CODEENDS
END
参考答案:
CMP,1,EQUPTR:
4、以ARRAY为首址的字单元中,存放了COUN个有符号数,下面程序是找出其中最大数并送给变量BIG,请把程序中所空缺的指令填上。
DATA1SEGMENT
ARRAYDW1,2,9,-12,15,19
COUNTEQU$—BUFF
BIGDW?
DATA1ENDS
CODE1SEGMENT
ASSUMECS:
CODE1,DS:
DATA1
START:
MOVAX,DATA1
MOVDS,AX
MOVAX,ARRAY
MOV
CX,COUNT/2
JCXZ
EXIT
LEA
BX,BUFF
AGAIN
JGE
NEXT
MOV
AX,[BX]
NEXT
ADD
BX,2
MOVBIG,AX
EXIT:
MOVAH,4CH
INT21H
CODE1ENDS
ENDSTART参考答案:
CMPAX,[BX]LOOPAGAIN
5、阅读下列程序,回答后面的问题。
DATA1SEGMENT
BUFFDW-1,3,11,-2,-5,9
XDW?
DATA1ENDS
C0DE1SEGMENT
ASSUMECS:
C0DE1,DS:
DATA1
START:
MOVAX,DATA1
MOVDS,AX
MOVAX,BUFF
MOV
LEA
CX,6
BX,BUFF
AGAIN:
CMP
AX,[BX]
JLE
NEXT
MOV
AX,[BX]
NEXT
ADD
BX,2
LOOPAGAIN
MOVX,AX
MOVAH,4CH
INT21H
C0DE1ENDS
ENDSTART
请回答:
(1)指令JLE的功能
(2)上述程序段的功能是,上述程序段执行后,X等
于。
参考答案:
若小于或等于则转移,数组BUFF的最小值送X,-5
6.下面程序段使用1号DOS功能调用从键盘接受两个数字。
如该程序段执行时,从键盘输入
‘2'和‘5',请问执行后,(AX)=,(BL)=。
MOVAH,01H
INT21H
MOVBL,AL
MOVAH,01H
INT21H
XORAH,AH
ADDAL,BL
AAA
MOVBL,0
JCEXIT
MOVBL,1
EXIT:
参考答案:
0007H,01H
7、设V、X、Y和Z都是有符号的字变量,下面程序段是实现运算公式:
(V-(X*Y+Z-540))
/X,请在空格中填入应有的内容。
MOVAX,X
IMULY
MOVCX,AX
MOVBX,
MOVAX,Z
CWD
ADDCX,AX
BX,DX
SUBCX,540
BX,0
MOVAX,V
CWD
SUBAX,CXSBBDX,BX
参考答案:
DX,
ADC
SBB
IDIVX8、下面程序查找字符串STRING中是否有字母"B",有则AL=0;否则AL=-1,请将程序填写完整。
MOVES,SEGSTRING
LEA,STRING
MOVCX,20;假设字符串长度为20
CLD
REPNZ
JZYES
NOMOVAL,-1
YESMOVAL,0
EXIT:
参考答案:
DI
MOVAL,'B'
SCASB
JMPEXIT
9、下面程序,将source为首地址的100字节传送到dest存储区域(不重叠)。
请将程序填写完整。
datasegment
sourcedb100dup(a)destdb100dup(
data
ends
codesegment
assumecs:
code,ds:
datastart:
movax,data
movds,axmoves,axleasi,sourceleadi,destmovcx,100
rep
movah,4ch
int21hcodeends
endstart
参考答案:
CLD,MOVSB五、程序编写题
1、编写一个子程序,实现abs(x)=|x|解:
参数X由AX传递
ABSPROC
CMPAX,0
JGENEXT
NEGAX
NEXT:
RET
ABSENDP
2、编写一个子程序,实现f(x)=3x2+5x-8解:
假定F(X)的值可以用字变量保存,参数
FUNPROC
PUSHCX
PUSHDX
MOVBX,AX
IMULBX
MOVCX,3
IMULCX
XCHGBX,AX
MOVCX,5
IMULCX
ADDBX,AX
SUBBX,8
POPDX
POPCX
RET
FUNENDP
3、编写一个子程序,实现strlen(string)解:
STRLENPROC
PUSHBX
XORCX,CX
MOVBX,DX
AGAIN:
CMPBYTEPTR[BX],0
JZOVER
INCCX
INCBX
JMPAGAIN
OVER:
POPBX
RET
STRLENENDP
4、编写一个子程序CONVERT将小写字母变为大写。
解:
CONVERTPROC
CMP
AX,
JB
NEXT
CMP
AX,
JA
NEXT
SUB
AX,20H
NEXT:
RET
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编语言 复习题 答案