汇编语言程序设计期末考试题

...

汇编语言程序设计期末考试题

学院(系): 学号: 姓名: 计分:

一、 项选择题 ( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号

内。每小题 1 分,共 10 分) 1.

CPU发出的访问存储器的地址是 ( ) A. 2.

物理地址

B. 偏移地址

C. 逻辑地址 D. 段地址

( )

将高级语言的程序翻译成机器码程序的实用程序是 A. 编译程序 B. 汇编程序 C. 解释程序

D. 目标程序

( )

3. DEC BYTE PTR[BX]指令中的操作数的数据类型是 A. 字 B.

双字

C.

字节

D.

四字

4. 在下列语句中, BUFFER称为( ) BUFFER DB 01H,0AH A.符号 B.

变量 C. 助记符 D. 标号

( )

寄存器中。

5. 串操作指令中,源串操作数的段地址一定在 A. CS

B. SS

C.

DS

D. ES ( )

6. 使计算机执行某种操作的命令是

A. 伪指令 B. 指令 C. 标号 D. 7.

助记符

( )

将数据 5618H存放在存储单元中的伪指令是 A. DATA1 DW 1856H

B. DATA1 DB 18H,56H

C. DATA1 EQU 5618H D. DATA1 DB 18H ,00H,56H,00H 8.

若 AX=3500H,CX=56B8H,当 AND AX,CX指令执行后, AX=( ) A. 1400H 9.

B. 77F8H

C. 0000H

D. 0FFFFH

计算机处理问题中会碰到大量的字符、符号,对此必须采用统一的二进制编码。目前,微机中普 遍采用的是 ( ) 码。 A. BCD 码 B. 二进制码

C.ASCII 码

D. 十六进制码

10. 用指令的助记符、符号地址、标号和伪指令、宏指令以及规定的格式书写程序的语

言称为 ( ) A. 汇编语言

B.

高级语言

C.

机器语言

D.

低级语言

二、 填空题 ( 每空 1 分,共 20 分)

1. 2. 3.

在 8086/8088 汇编语言中,有五条串操作指令,其中搜索字符串指令的助记符是 通常所说的计算机系统包括 ________和________两大部分。 8086/8088 存储器分四个段,这四个段的段名所对应的段寄存器分别是 ________、________。 4.

现有 AX=2000H, BX=1200H, DS=3000H, DI=0002H, (31200H)=50H, (31201H)=02H, (31202H)=40H, 请写出下列各条指令独立执行完后有关寄存器及存储单元的内容,并指出标志位 A. B.

ADD AX,1200H;问 AX=________H,ZF=________ SUB AX,BX;问 AX=________H,ZF=________

1

...

______。

________、________、

ZF、CF的值。

...

C. MOV AX,[ BX]; 问 AX=________H CF=________

D. NEG WORD PT[R1200H];问 (31200H)=________H CF=________

11.设DS=2200H,BX=1000H,SI=0100H,偏移量 D=0A2B1H,试计算出下列各种寻址方式下的有效地址,

填入括号中。

A. 使用 D的直接寻址 (

)

)

)

)

B. 使用 BX的寄存器间接寻址 ( C.使用 BX和 D的寄存器相对寻址 (

D.使用 BX、SI 和 D的相对基址变址寻址 ( E. 使用 BX、SI 的基址变址寻址 (

三、简答题( 共 20 分 )

5. 程序在数据段中定义的数组如下:(4 分) ARRAY

DB 'YES IS' DB 20 ┇

DB 'DO NOT'

)

请指出下列指令是否正确 ?若不正确,错在哪里?(答案做在旁边) A.MOV BX, OFFSET ARRAY

MOV AX,[BX+8] B.MOV AX,ARRAY C.MOV BX,2

MOV SI, 3

MOV AX, ARRAY[BX][ SI] D.MOV BX,2*2

MOV SI, 3

MOV AX, OFFSET ARRA[Y BX][SI ];在汇编过程中, OFFSET 操作将得到变量的偏移值,但对相

对基址变址寻址方式形成的值,在汇编指令时还是未知的,所以第三条指令不正确。

INC [AX] ;第四条指令中, AX 不能作为基址寄存器用。 6. 如 TABLE为数据段中 0100 单元的符号名,其中存放的内容为

别 ?指令执行后, AX寄存器的内容是什么 ?(3 分) MOV AX,TABLE

MOV AX,OFFSET TABLE 7. 对于下面的数据定义,三条

TAB1 DW 10 DUP(?) TAB2 DB 10 DUP(? TAB3 DB '1234'

┇

MOV AX, LENGTH TAB1 MOV BL, LENGTH TAB2 MOV CL, LENGTH TAB3

8. 子程序的说明文件中应包括哪几方面的内容

?(5 分 )

2

...

0FF00H,试问以下两条指令有什么区

MOV指令分别汇编成什么 ?(3 分,答案写在对应指令的右边 )

...

5、分别指出下列指令中源操作数的寻址方式:(5 分,答案写在对应指令的右边

A. B.

MOV SI, 100 立即寻址

MOV CX, DATA[SI ]寄存器相对寻址

)

C. MOV[SI ], AX寄存器寻址 D. ADD AX,[BX][DI]基址变址寻址

三、简答题(共 20 分) 12. A.正确 B.数据类型不匹配错

C.前两条指令正确,第三条数据类型不匹配 D.前两条正确,后两条不正确,在汇编过程中,

OFFSET 操作将得到变量的偏移值,但对相对基址变址寻

AX 不能作为基址寄

址方式形成的值在汇编指令时还是未知的,所以第三条指令不正确。第四条指令中, 存器用。

13.第一条指令传送的是 第二条指令传送的是地址 14.MOV AX , 10 MOV BL , 10 MOV CL , 1 15. A.子程序名 B.子程序的功能

C.子程序所用到的寄存器、工作单元的情况 D.子程序的输入参数 E.子程序的输出参数 16.A.立即寻址 B.寄存器相对寻址 C.寄存器寻址 D.基址加变址寻址 E.寄存器寻址

四、程序分析 (每小题5 分,共 20 分 )

9.把 DA T1+20 存储单元开始的 10 个字节搬到 DAT2 开始的连续10 个存储单元中。 2.3000H

3.判断 AL 的内容,若为 'A' ~ 'Z'的大写字母时,程序转LETTER 处理,否则转OTHER 处理。 4.0F00H

0100H 单元中的内容 AX=0FF00H 0100H AX=0100H

E. POPHF

)

四、 程序分析 ( 每小题5 分,共 20 分,答案写在程序右边空白处。

1. 列程序段完成什么工作 ?

DAT1 DB 30 DUP(?) DAT2 DB 10 DUP(?)

┇

MOV CX,10

3

...

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4