汇编语言练习
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
习题一
1.在计算机内部,计算机能够直接执行的程序语言是。
A.汇编语言 B。
C++语言
C.机器语言 D。
高级语言
2.在堆栈段中,存放栈顶地址的寄存器是。
A.IP B.SP C. BX D. BP
3.指令指针寄存器IP用来存放代码段中的偏移地址。
在程序运行的过程中,它始终指向。
A.下一条指令的首地址B.下一条指令的地址
C.当前指令的首地址D.当前指令的地址
4.编译程序的功能是。
A.检查源程序中的语法错误和逻辑错误
B.将源程序编译成目标程序
C.改正源程序中的语法错误
D.将高级语言源程序翻译成汇编语言源程序
5.用户为了解决自己的问题,用汇编语言所编写的程序,称为。
A.目标程序B.源程序C.可执行程序D.汇编程序6.计算机中用来存储程序、数据等信息的记忆装置是。
A.控制器
B.运算器
C.CPU
D.存储器
7.在宏汇编中,源程序必须通过___________生成目标代码,然后用连接程序将其转化为可执行文件, 该文件可在系统中运行。
8 当 SS =3000H,SP =0100H 时,执行 PUSH AX 指令后,堆栈顶部的物理地址是()
A.30100H B.30098H C.30102H D.300FEH
9 设10000010B分别以原码、补码及反码表示时,则对应的十进制数依次是()A.-82、-126、-2 B.-2、-125、126
C.-2、-126、-125 D.-82、-125、125
10 标志寄存器中属于控制标志位的是()
A. DF,OF,SF
B. DF,IF,TF
C. OF,CF,PF
D. AF,OF,SF
11 设(AX)=4544H,在执行指令”SUB AH,AL”之后,()
A.CF=0,OF=0 B.CF=0,OF=1
C.CF=1,OF=0 D.CF=1,OF=1
12 若寄存器AX、BX、CX、DX的内容分别为18,19,20,21时,依次执行PUSH AX,PUSH BX,POP CX,POP DX后,寄存器CX的内容为__________________。
13 若物理地址为2D8C0H,偏移量为B6A0H,则段地址为 _________。
14 设(AL)=70H,分析在SUB AL,9AH后,标志寄存器中CF、OF、ZF、PF、SF
的状态。
>>回答的内容
1.C
2.B
3.A
4.B
5.B
6.D
7.编译
8.D
9.C
10.B
11.A
12.19
13.2222H
14.CF=1 OF=1 PF=0 ZF=0 SF=1
习题二
1.在宏汇编中,下列数值常量的表示不正确的是__________。
A) 01110111B B) 12 C) ABCDH D) ‘AB’
2. 指令SUB AX,5[BX+DI]的源操作数的寻址方式是。
A) 寄存器寻址 B) 基址+变址寻址
C) 变址寻址 D) 直接寻址
3. 寄存器间接寻址方式中,操作数在__________中。
4. 下面两个语句的区别在于 ____________不能多次赋值,___________可以多次赋值。
X1 EQU 1000H; X2=1000H
5. 8086 CPU在基址加变址的寻址方式中,已知BX=2000H,SI=1234H,则指令“MOV AX,[BX+SI+2]”的源操作数在中。
A) 数据段中偏移量为3236H的字节 B) 数据段中偏移量为3234H的字节
C) 附加段中偏移量为3236H的字节 D) 附加段中偏移量为3234H的字节
6. 指令SUB AX, [BX]的源操作数的寻址方式是。
A) 寄存器寻址 B) 基址+变址寻址
C) 变址寻址 D) 直接寻址
7 已知一段程序如下:
DATA SEGMENT
A1 DW 10,20
A2 EQU 100
A3 DB ‘1234’
A4 DW 1234H
DATA ENDS
画出该程序段的内存分配示意图
8 对于下面的数据定义,各条MOV指令单独执行后,请填充有关寄存器的内容: TABLE1 DB 01H,02H,03H,04H,05H
TABLE2 DW 5 DUP(0)
TABLE3 DB ‘WELCOME’
MOV AX,TYPE TABLE1 ; AX=
MOV BX,LENGTH TABLE1 ; BX=
MOV CX,LENGTH TABLE2 ; CX=
MOV DX,SIZE TABLE2 ; DX=
MOV SI,LENGTH TABLE3 ; SI=
1.C
2.B
3.内存或存储器
4.X1 EQU 1000H X2=1000H
5.A
6.B C寄存器间接寻址
0AH
00H
14H
00H
31H
32H
33H
34H
34H
12H
8.
AX=1
BX=1
CX=5
DX=10
SI=1
null
1.
MOV AL,20H
MOV BL,AL
ADD AL,BL
SBB AL,10H
CBW
DIV BL
上述程序段执行后,(AH)=___________,(AL)=__________
2. 语句”BUF DB 25”的含义是()
A.用BUF 表示25
B.定义BUF为字节变量,初始值为25
C.从标号BUF对应的地址起分配25个单元
D.定义BUF为变量,其地址为25
3.除法指令DIV的格式中,只有一个源操作数。
若其类型属性为字节,则目的操作数在_________________中。
4.执行一列三条指令后,AX寄存器中的内容是()。
MOV AX,‘8’
ADD AL,‘9’
AAA
A.0071H B.0107H C.0017H D.0077H
5.逻辑移位指令SHL用于()
A.带符号数乘2 B.带符号数除2
C.无符号数乘2 D.无符号数除2
6. CWD指令的功能是()
A.把源操作数的符号位扩展到目的操作数中
B.把AL中的符号位扩展到AH中
C.把AH中的符号位扩展到AL中
D.把AX中的符号位扩展到DX中
7.已知AX,BX中均为带符号数,当进行字相除时,下面指令或指令序列正确的是(
)
A. DIV BX
B. CWD
IDIV BX
C. XOR DX,DX
D. CBW
DIV BX IDIV BX
8. 使AL中的操作数0,1位变反,其它位不变的指令是_____________________。
9. 写出将寄存器BX,AX的内容互换的正确指令是________________________。
10. 设(AX)=2012H,执行CMP AX,2012H 后(AX)= ___________。
1.10H 01H
2.B
3.AX
4.B
5.C
6.D
7.B
8.XOR AL,03H
9.XCHG AX,BX
10.2012H
习题四
1、设计指令序列,完成下列功能:
(1)写出将AL的最高位置1,最低位取反,其它位保持不变的指令段。
(2)写出将AL中的高四位和低四位数据互换的指令段。
2、若AX=-15要得到AX=15应执行的指令是()
A. NEG AX
B. NOT AX
C. INC AX
D. DEC AX
3、以下三指令执行后,DX =()
MOV DX,0
MOV AX,0FFABH
CWD
A. 0FFABH B.0 C.0FFFFH D.无法确定
4、将累加器AX 内容清零的错误指令是()
A. AND AX,0 B.XOR AX,AX
C.SUB AX,AX D.CMP AX,AX
5、INC 指令不影响()标志
A. OF B.CF C.ZF D.SF
6、设AL中的值为84H,CF=1,现在执行 RCR AL,1 指令,AL中的值和CF分别
为()
A. 0C2H,1 B.42H,1 C.0C2H,0 D.42H,0 7、 MOV AL,BL
NOT AL
XOR AL,BL
OR BL,AL
程序段执行后, AL= _______、BL= _______。
8、执行下列指令后:
MOV AX,1234H
MOV CL,4
ROL AX,CL
DEC AX
MOV CX,4
MUL CX
HLT
寄存器AH的值是,寄存器AL的值是
寄存器DX的值是。
设数据段定义如下:(9~11题均采用该数据段)
DATA SEGMENT
NA EQU 15
NB EQU 10
NC DB 2 DUP (4,2 DUP (5,2))
CNT DB $-NC
CWT DW $-CNT
ND DW NC
DATA ENDS
9. 从DS:0000开始至CNT单元之前存放的数据依次是()
A.15,10,4,5,2,5,2,4,5,2,5,2 B.15,10,4,2,5,2,4,2,5,2 C.0FH,0AH,4,5,2,5,2 D.4,5,2,5,2,4,5,2,5,2
10. ND单元中的值是()
A.0000H B.0200H C.0003H D.0002H
11. CWT单元中的值是()
A.2 B.1 C.11 D.12
设数据段定义如下:(12~14题均采用该数据段)
DATA SEGMENT
ORG 0100H
X1 DB 25,’25’
X2 DW ?
Y1 EQU X1
Y2 EQU $-Y1
DATA ENDS
12. MOV BX,OFFSET X1 指令执行后,BX中的内容是()
A.25 B.0100H
C.0000H D.’25’
13. 汇编后Y2的值是()
A.4 B.5 C.3 D.6
14. MOV AL,Y1+1 指令执行后,AL中的内容是()
A.19H B.01H C.35H D.32H 1.(1)OR AL,80H
XOR AL,01H
(2)MOV CL,4
ROL AL,CL
2.A
3.C
4.D
5.B
6.C
7.0FFH 0FFH
8.(AH)=8CH (AL)=0F0H (DX)=0000H
9.D
10.A
11.B
12.B
13.B
14.B。