习 题 3

习 题 3

一、单项选择题(只有一个正确答案)

1.以下名字中正确的是( )。

A.3DATA   B.MR.3      C.6.NEXT      D.AAA

2.在汇编语言程序设计中,伪指令SEG表达的含义是回送变量或标号的( )。

A.段地址值 B.偏移地址值 C.物理地址值   D.操作数

3.在汇编语言程序设计中,伪指令OFFSET表达的含义是回送变量或标号的( )。

A.段地址值  B.偏移地址值   C.物理地址值  D.操作数

4.在ASSUME伪指令设定了段寄存器后,无需在程序段中用指令完成赋值的寄存器是( )。

A.CS     B.DS      C.SS      D.ES

5.伪指令ENDP告诉汇编程序( )。

A.宏定义结束       B.过程定义结束

C.段定义结束       D.过程运行结束

6.伪指令ENDS告诉汇编程序( )。

A.宏定义结束       B.过程定义结束

C.段定义结束       D.过程运行结束

7.在上机操作过程中,LINK命令执行后除了生成一个可执行文件外,根据选择还可以生成一个( )。

A..OBJ文件   B..LIST文件    C..CRF文件    D..MAP文件

8.对于汇编过的程序而言,在( )操作之后产生的程序就可以运行了。

A.EDIT     B.MASM       C.LINK      D.DEBUG

9.在上机操作过程中,如果发现键入的数据段或代码段的值有错,通过调用DE-BUG程序后,再使用( )命令可以进行修正。

A.D命令    B.E命令       C.A命令     D.R命令

10.下列( )语句是正确的。

A.MOV AL,[BX]   B.MOV[BX],16

C.INC[BX]      D.JMP[BX]

二、填空题

1.汇编语言源程序中每个语句可有四项组成,即、操作数项及注释项。

2.一般来说,名字项可以是标号或变量,它们都是用来表示本语句的地址。标号出现在指令代码段中,它有三种属性,即、和

3.变量的类型属性定义该变量所保留的数。

4.在操作数项中使用段名、标号名、变量名和符号名都必须在源程序中,否则汇编程序进行汇编时就会

5.使用伪指令语句进行定义说明时,常用的属性操作符有段操作符、和

6.伪指令指示汇编程序在进行汇编时确定段与段寄存器之间的对应关系。它只影响的定义,而不影响段寄存器的设置。

7.每个段都以符号作为段开始,以语句作为段的结束。

8.每个宏指令都以符号作为开始,以语句作为结束。

9.经汇编程序转换后,OBJ文件已是一个二进制文件,它直接上机运行,经过程序后形成一个可执行文件。

10.如果要从键盘上输入一个字符,需要调用中断;如果要从键盘上输入一串字符,需要调用中断。

11.如果需要输出一个字符,需要调用中断;如果需要输出一串字符,需要调用中断。

三、简答题

1.EQU与=伪指令有何区别?

2.请指出下列每一对伪指令语句的区别:

(1)A1 DB 76 (2)A1 DW 3548H

B2 EQU76A2 EQUBYTE PTRA1

3.按题意要求设置一个数据段DATA-SEG,其中连续存放下列8个变量,用段定义语句和数据定义语句写出数据段。

(1)DATA1为字符串变量:DATA SEGMENT。

(2)DATA2为十进制数的字节变量:72,65,-10。

(3)DATA3为十六进制数的字节变量:109,98,21,40。

(4)DATA4为10个0的字节变量。

(5)DATA5为数字的ASCII码字符字节变量:12345。

(6)DATA6为十进制数的字变量:7,9,298,1967。

(7)DATA7为十六进制数的字变量:785,13475。

(8)DATA8为本段中字变量和字节变量之间的字节单元数之差。

4.已知数据定义如下,问L1和L2等于多少?

B1 DB 1,2,3,‘123’

B2 DB 0

L1 EQU$-B1

L2 EQUB2-B1

5.设伪指令定义如下,要求画出内存示意图。

BUF DB ?

DW‘AB’

DW 1234H

DB‘ABCD’

6.设有下列数据段定义

DATA SEGMENT

D1 DB -1,?,3*2

DB 2DUP(2DUP(?),5),14H)

N EQU10

D2DW -1,?,3456H,N

D3 DB ‘ABC’

D4 DD 0ABCDH

DATA SEGMENT

画出在内存中的示意图。

7.设DATA为数据段中0076H单元的符号,其中存放的内容为3412H,试问执行下列指令后,BX寄存器的内容是什么?

(1)MOV BX,DATA

(2)LEA BX,DATA

(3)MOV BX,OFFSET DATA

8.请判断下列两条指令是否正确,并指出两条指令的功能。

(1)MOV AL,[BX]

(2)MOV[BX],0AH

9.在DEBUG状态下,如何修改寄存器及存储单元中的内容?

10.调用10号DOS中断可以完成什么功能?它要求的格式是如何安排的?

11.如果9号DOS调用最后不以“$”结尾,将会产生什么后果?