第三章 8086 kissgoodbye歌词汇编语言程序格式
练习题
3.4 .1 单项选择题
1.下列选项中不能作为名字项的是( )。
A .FH B.A3 C.3B D.FADC
2.下列指令不正确的是( )。
A.MOV AL ,123 B.MOV AL , 123Q
C.MOV AL , 123D D.MOV AL ,123H
3.下列指令不正确的是( )。
A.MOV BL , OFFSET A B.LEA BX, A
C.MOV BX , OFFSET A D.MOV BX ,A
4•若定义“ BUF DB 1, 2, 3, 4 ”,执行 MOV ALformulae, TYPE BUF 后 AL=()。
A.0 B.1 C.2 D.3
5.若定义“ A EQU 100”,执行“ MOV AX , A”后,AX=()。
A . A的偏移地址 B . A单元中的内容
C.100 D.A 的段地址
6.若定义“ B DW 1, 2, 10 DUP (0)”,则该伪指令分配( )字节单元。
A .10 B .20 C. 22 D .24
7.若定义“ C DD 2, 4”,则该伪指令分配( )个字节单元。
A.2 B.4 C.6 D.8
8、伪指令是( )规定的汇编说明符,它在源程序汇编时进行说明。
A、DEBUG B、LINK C、MASM D、EDIT
9.在上机操作过程中, MASM 命令执行后,除了生成一个目标文件外,根据选择还可以生成一个( )
文件。
A . .LST B. .EXE C. . MAP D. . ASM
10.LINK 命令执行后可以生成一个以( )为扩展名的文件。
A. ASM B. EXE C. OBJ D . COM
11 .一个段最大可定义( )字节。
A .1M B . 64K C.32K D . 16K
12.若要求一个段的起始位置能被 256 整除的单元开始,在定位方式选项中应选( )。
A .BYTE B. WORD C. PARA D .PAGE
13.宏指令与子程序相比,在多次调用时,宏指令调用的目标程序长度比子程序调用的( )。
A .相同 B .长 C .短 D .不定
14.宏指令与子程序相比,子程序调用的执行速度比宏指令的( )。
A .相同 countryroadB .快 C .慢 D .不定
15.ASSUME 伪指令说明了汇编程序所定义段与段寄存器的关系,它只影响( )的设定。
A •源程序 B. 目标程序 C.汇编程序 D •连接程序
16.设 A 和 B 为字变量, C 为标号,下列指令中不正确的是( )
A.MOV AX ,A B.MOV AX,B
C.JNE A D. JMP C
17.代码段中的语句( )表示该段结束。
A. ASSUME B.CODE ENDS
C.START:MOV AX ,DATA D.END START
18.过程定义语句以“过程名 PROC”开始,以过程名()结束。
A .ENDS B. ENDP C.ENDM D考研英语小作文.END
19.一个段可以放在内存的任何地方,但起始地址应该从一个能被( )整除的单元地址开始
A. 16 B. 32 C. 64 D. 128
20.在数据定义语句中,下列描述不正确的是( )
A •存放存储单元的地址可以用字节表示
B •存放存储单元的地址可以用字表示
C.存放存储单元的地址可以用双字表示
D •存放存储单元的地址可以用四字表示
3. 4. 2 多项选择题
1.在 8086汇编语言中,语句的种类有( )。
A•指令性语句 B •指示性语句 C.汇编语句 D •说明语句
2.在下列的选项中,不能作为名字的有( )
A. AX B. 3MA C. ABCD D. MOV
3.在下列的选项中,作为变量的类型有( )。
A •字节 B •字 C •双字 D •近程
4.在下列的选项中,作为标号的类型有( )。
A. DB B.DD C.NEAR D .FAR
5•在运算符 OFFSET后可以是()。
A •标号 B •变量 paradoxical frogC表达式 D •数字
6•在指令“ LEA BX , X”中的X可以是()。
A •标号 B •变量 C表达式 D •数字
7.不能分配内存单元的伪指令语句有( )。
A • EQU B • DW C. = D • DD
葡萄的英文单词8.定义一个段的伪指令语句有( )。
A.NAME SEGMENT
C.NAME ENDP
9.定义一个过程的伪指令语句有(
A.NAME SEGMENT
1•汇编语言的语句有指令语句和 ,宏指令是 的另一种形式。
2.标号的三个属性是段地址、 和类型。
3•变量的三个属性是段地址、 和类型。
4•标号的类型有 和 。
5•变量的类型有 、 、 、四字(八字节)和十字节。
6韦博.等价语句不能重复定义、等号语句 重复定义。
7•等价语句和等号语句 内存单元。
8.语句“ MOV BX , OFFSET A”可用 一条指令代替。
9•若定义“ A DW 1234H ”,指令“ MOV AL, BYTE PTR A ”执行后,AL=—。
10.若定义“ B DW 1, 2 , 30 DUP (5)”,则B分配的内存单元数是 字节。
武汉外语学校
11.若定义 C DW ‘ AB '则“ MOV AL , BYTE PTR C” 执行后,AL= 。
12•在程序的操作数项中使用的段名、标号名、变量名和符号名都必须在源程序中先 ,否则
汇编程序进行汇编时就会 。
13.使用伪指令 和 定义一个段。
14 •使用伪指令 和 定义一个过程。利用过程定义语句可以把程序分成小段,以便
于 、 、调试和修改。
15. 伪指令 表示整个程序结束。
16. 宏展开就是用宏定义取代源程序中的宏指令。若实元个数大于变元个数,则多余的实元 —。若
实元个数少于变元个数,则多余的变元用 代替。
17•汇编语言源程序经 产生目标文件,它 直接在机器上运行,还必须经过 后形成可
执行文件。
18. 在数据段中使用字符串时,该字符必须用 括起来。当定义含有多个字符的字符串时,只能
使用 伪指令。
19. 用汇编语言编写的程序称为 ,其扩展名为 。
20.在源程序中只要对某一独立功能的程序段进行一次宏定义,就可以 次调用它。
3. 4. 4简答题
1.按照下列题目要求写出每小题的伪指令。
(1)将12H、34H、56H、78H存放在字节变量 A的存储单元中。
(2)将12、1638H、0E52H存放在字变量 B的存储单元中。
(3)将字符串COMPUTER存放在C变量的存储单元中。
(4)将D字节变量的100个单元设置为0。
(5)将D的偏移地址存放在 E变量中。
2 .设数据段定义如下:
DATA SEGMENT
BUF1 | DB | 2, 3 |
BUF2 | DW | 4, 5, 6 |
BUF3 | DB | 2, 100 DUP (0) |
BUF4 | DB | ‘ABCDE' |
BUF5 | DW | BUF3 |
BUF6 | EQU | $ — BUF3 |
| | |
WORD PTR BUF1 ”后,AX=
BUF3”后,BX=—
BUF4”后,CX=_
BUF3+2 ”后,AL=
BUF2+1 ”后,AH=
DATA ENDS请回答:(1)该数据段占用的内存有多少字节?
(2)BUF5单元中的值是多少?
(3)BUF6的值是多少?
(4)执行“ MOV AL,BUF4+2 ”指令后,AL= _。
(5)执行“ MOV AX,phpinarrayWORD PTR BUF1 ”指令后,AX=
3 •设数据段定义如下:
DATA 英语脑筋急转弯A B C D E F DATA 请回答: | SEGMENT DW 23, 45 DW ‘ EF' = $+5 DB 10 DUP (?) EQU $— D DW D ENDS (1)该数据段占用的内存有多少字节? |
| |
(2) C的值为多少?
(3)E的值为多少?
(4)执行“ MOV AX , F” 指令后,AX= 。
(5)执行“ MOV AL , BYTE PTR B”指令后,AL=
4 •设数据段定义如下:
DATA | SEGMENT | |
BUF1 | DB | 36H , 3, | 2 |
BUF2 | DW | 1364H, | 253H |
BUF3 | DB | 30 DUP | ('ABC ') |
BUF4 | DW | $ — BUF3 | |
BUF5 | DB | 100 DUP (0) |
DATA | ENDS | |
| | | |