搜索
您的当前位置:首页正文

汇编语言程序设计习题

来源:好走旅游网


1.假设字节单元(06925H)=12H,(06926H)=45H,(06927H)=78H,那么字单元(06925H)= C ,字单元(06926H)= D 。

a. 1245H b. 4578H c. 4512H d. 7845H

2.逻辑运算指令都是按 A 进行操作的,指令执行后只设置标志位,不保留结果的逻辑运算指令是 H 。

a. 位 b. 字节 c. 字 d. BCD码

e. AND f. OR g. XOR h. TEST

3.和指令AND AL,55 AND 0F0H 等效的指令是 ,和MOV BX, 0FH EQ 1111B等效的指令是 。

a. AND AL,55H b. AND AL,0F5H c. AND AL,50H d. AND AL, 0F0H

e. MOV BX,0000H f. MOV BX,0FH g. MOV BX,0FFH h. MOV BX,0FFFFH

4.过程定义开始的伪指令是 C 。 宏定义结束的伪指令是 G 。

a. SEGMENT b. MACRO c. PROC d. ASSUME

1

e. END f. ENDS g. ENDM h. ENDP

5.将数据37H定义为字节变量X1的语句是 A ,数据37H定义为字变量X2的语句是 D 。

a. X1 DB 37 b. X2 DB 37 c. X1 DW 37H

d. X2 DW 37H e. X1 DB 37H g. X2 DB 37H

6.互换指令XCHG可以在两个寄存器之间互换数据,也可以在 A 与 C 之间互换数据。

a. 寄存器 b. 立即数 c. 存储单元 d. 堆栈

7.对程序流向的控制和转移,就是对执行指令地址的修改。如在同一段内偏移,则修改 A ,如在两个段之间转移,则修改 C 。

a. IP b. CS c. CS和IP d. CS或IP

1.8088/8086 CPU内部共有 14 个寄存器,其中有 8 个通用寄存器、 2 个变址寄存器、 4 个段寄存器。

2.8088/8086 CPU有 7 种数据寻址方式,其中采用 寄存器 寻址方式的指令执行速度最快。

3.IBM-PC计算机全部指令的集合称为它的 指令系统 。这些指令

2

按功能可以分为六大类:数据传送指令、算术指令、 逻辑指令 、串处理指令、 和 处理机控制转移 。

4.在不改变段寄存器的前提下,IBM-PC计算机内存寻址的最大范围是 216

字节。若CS=1234H,SS=2341H,DS=3412H,BP=8756H,则以BP寄存器间接寻址的非段超越的内存单元的物理地址是 SS:BP 。

5.程序有顺序结构 、 循环 、 分支 和 子程序结构 四种结构。

6.循环程序有两种结构形式,一种是 DO_WHILE ,另一种是

DO_UNTIL ,当有可能一次也无需执行循环体时采用前者。

7.8088/8086允许使用 256 个中断向量,每个中断向量占 4 个字节,系统的低段地址从 0000H 到 5FFH 存放着中断向量表。

8.下面是对DOS功能调用方法的简单说明:

(1)在AH寄存器中存入所要调用功能的 。

(2)根据所调用功能的规定设置 。

3

(3)用 指令转入子程序入口。

(4)相应的子程序运行完后,可以按规定取得 。

1、在指令系统中,段内、段间返回均为RET指令。试回答:

(1)执行段内返回RET指令时,执行的操作是:

(2)执行段间返回RET指令时,执行的操作是:

2、ARY DW 10 DUP(?)

MOV AL,TYPE ARY

MOV BL,LENGTH ARY

MOV CL,SIZE ARY

上述MOV指令序列执行后的结果是什么?

3、设某数据段:

DATA SEGMENT

4

ORG 20H

NUM1=8

NUM2=NUM1+10H

DA1 DB 'COMPUTER'

DB 0AH,0DH

COUNT EQU $-DA1

DA2 DW 'CO','MP','UT','ER'

DATA ENDS

试回答:(1)DA1的偏移地址是:______23H_____________

(2)COUNT的值是__________________AH_________________

(3)DA2+5字节单元的内容是___________ET______________________

13.在一段汇编程序中多次调用另一段程序,用宏指令比用子程序实现起来(参考答案为:B

)。5

B

A.占内存空间小,但速度慢 B.占内存空间大,但速度快

C.占内存空间相同,速度快 D.占内存空间相同,速度慢

14.在程序执行过程中,IP寄存器中始终保存的是( B )。 参考答案为:B

A.上一条指令的首地址 B.下一条指令的首地址

C.正在执行指令的首地址 D.需计算有效地址后才能确定地址

15.PSW寄存器中共有( A )位条件状态位,有( )位控制状态位。答案为:A

A.6、3 B.3、6 C.8、4 D.4、8

16.下列指令执行时出错的是( a )。 参考答案为:A

A.ADD BUF1,BUF2 B.JMP DWORD PTR DAT [BX]

C.MOV AX,[BX+DI] NUM D.TEST AL,08H

17.已知(AX)=1234H,执行下述三条指令后,(AX)=( D )。 案为:D

MOV BX,AX

参考参考答6

NEG BX

ADD AX,BX

A.1234H B.0EDCCH C.6DCCH D.0000H

18.在下列指令中,( D )指令的执行会影响条件码中的CF位。 参考答案为:D

A.JMP NEXT B.JC NEXT C.INC BX D.SHL AX,1

19.串指令中的目的操作数地址是由( C )提供。 参考答案为:C

A.SS:[BP] B.DS:[SI] C.ES:[DI] D.CS:[IP]

20.将DX的内容除以2,正确的指令是( C )。 参考答案为:C

A.DIV 2 B.DIV DX,2 C.SAR DX,1 D.SHL DX,1

l.变量和标号的区别是___标号为机器码,变量为第一个操作数的首地址_____。

2.下述指令的目操作数是存放在堆栈段中,请填入正确答案。ADD byte ptr BP[BX],CH。

3.段地址和偏移地址为2000:5076的存储单元物理地址是____。

4.在下列程序段括号中,填入正确的答案。

7

( data) SEGMENT

BUF DB 12H,56H

DATA ENDS

...

CODE ( ends)

5.指出下列指令错误原因,填入括号中。

A. MOV AX,BL ;( )

B. MOV CS,AX ;( )

C. DEC GAMA[BX];( )dec 操作必须为寄存器

D. MOV ES,5600H;( )

E. SUB AX,DS ;( )

6.下列语句在存贮器中分别为变量分配多少字节?请填入括号中。VR1 DW ? ;( 2)

8

VR2 DW 4 DUP(?),2;( 10)

CONT EQU 10 ;( )

1.在8086/8088系统中,存储器是分段的,每段最大长度是_______字节,段内偏移地址从___0000____到___ffffh____。

2.在程序调试时,显示某指令存放地址是2340:0056,则物理地址是_______。

3.汇编语言源程序中的语句有三种类型,它们是____指令性___语句,__指示性_____语句和_______语句。

4.指令MOV AX,[BX+SI+10H]源操作数寻址方式是_______。

5.执行段间返回指令RET时,将栈顶的一个字弹出到____IP___后,又弹出一个字到___CS____寄存器中。

6.已知DS=3000H,DI=1200H,(31200H)=64H,(31201H)=93H,执行NEG WORD PTR[DI]后,(31200H)=_______,(31201H)=_______。

7.执行下列指令序列

MOV AL,80H

MOV BL,08H

9

CBW

IDIV BL

则AH=___00h____AL=__ ___。

8.已知数据定义语句

ORG 120H

VECT1 DW 200H

VECT2 DW VECT1

执行 MOV AX,VECT1 AX=_______

MOV BX,VECT2 BX=_______。

判断以下各语句是否有错误,如有错误请说明错误原因1.MOV AX, 0

2.MOV [1000H], 1000H

3.MOV BL, AX

10

4.MOV [0], AX

5.PUSH PSW

6.SHR DX, BL

7.MUL AL, BL 目的操作数必须为16或32位

8.AND AX, [1000]

9.XCHG CS, DS

10.LDS AL, [BX]

1.下列语句在存储器中分别为变量数据区分配多少个字节单元?

(1)VAR3 DD 10

(2)VAR4 DW 4 DUP(?),2

2.设DS=2000H,BX=1256H,变量TABLE的偏移地址为20A1H,(232F7H)=3280H.下列指令分别执行后,IP的值各是多少?

(1)JMP BX IP=___________________

(2)JMP TABLE[BX] IP=___________________

11

3.选用NOT,AND,OR XOR逻辑指令编写一指令序列,实现将AL第0位,第2位同时置1,其他位变反。

1.指令 ARRAY DB 100 DUP (0,3 DUP (1,2),0,3) 汇编后为ARRAY存储单元分配 ( ) 个字节。

2.指令 LEA SI ,DATA1 可用指令( )代替。

3.中断向量表的地址范围是( )。

4.指令 MOV AX , 256[BX][SI]的寻址方式是 ( ) 。

5.STRING DB ‘AB’,0,0,‘CD’,0,0,‘EF’,0,0

请用DW伪指令改写上述语句,必须保持内存单元内容不变。

( )

1.在指令系统中,段内、段间返回均为RET指令。试回答:

(1)执行段内返回RET指令时,执行的操作是:

(2)执行段间返回RET指令时,执行的操作是:

2.用两种办法,分别只用一条指令实现将DA1数据区中数据个数送入CX。

12

DA1 DB 20H DUP(?)

DA2 DW 10H,45H,7856H

3.已知:BX=1357H,BP=2468H,SI=1000H,DI=2000H,SS=1000H,DS=2000H,ES=3000H,试分别指出下列各指令中存储器操作数的物理地址。

MOV AL,[BP+20H]的物理地址是 :

MOV [BX+DI-80H],AL的物理地址是:

MOV BL,ES:[SI+40H]的物理地址是:

简答题

1. DA1 DB 20H DUP(?)

DA2 DW 10H,45H,7856H

请用两种办法,分别只用一条指令实现将DA1数据区中数据个数送入CX。

2. 用三种不同方法实现在字存储单元DB1中存储2000H。

3. 已知:BX=1357H,BP=2468H,SI=1000H,DI=2000H,SS=1000H,DS=2000H,ES=3000H,试分别指出下列各指令中存储器操作数的物理地址。

13

MOV AL,[BP+20H]的物理地址是 。

MOV [BX+DI-80H],AL的物理地址是 。

MOV BL,ES:[SI+40H]的物理地址是 。

判断题(共10分,每小题1分)

1.8086/8088内存分段存取,受其内存总量的限制,最多只能分为16个段来使用。( )。

2.汇编语言接近于自然语言,易学、易用、通用强( )。

3.任意一程序模块最后一条语句必须是END [地址] ( )。

4.一个子程序必须有一条RET语句,也可以有多条( )。

5.指令执行后的结果为0。则零标志为0( )。

6.把若干个模块连接起来成为可执行文件的系统程序是汇编程序( )。

7.用指令的助记符、符号地址、标号等符号书写程序的语言成为汇编语言,汇编语言能被计算机直接识别( )。

8.指令INT 21H引起的中断是内中断( )。

14

9.直接寻址方式中,有效地址存放在代码段中指令操作码之后,但操作数一般存放在数据段中( )。

10.立即数不能直接送段寄存器( )。

15、在汇编语言程序的开发过程中使用宏功能的顺序是( )。

A、宏定义,宏调用 B、宏定义,宏展开

C、宏定义,宏调用,宏展开 D、宏定义,宏展开,宏调用

16、汇编语言源程序中,每个语句由四项组成,如语句要完成一定功能,那么该语句中不可省略的项是( )。

A、名字项 B、操作码项 C、操作数项 D、注释项

17、编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令有( )。

A、CMP B、SUB C、AND D、MOV

18、为使CX=-1时,转至MINUS而编制了一指令序列,其中错误的序列是( )。

A、INC CX B、SUB CX,0FFFFH

JZ MINUS JZ MINUS

15

C、AND CX,0FFFFH D、XOR CX,0FFFFH

JZ MINUS JZ MINUS

19、设ES=3000H,DI=00FFH,CX=0005H,AL=41H,DF=0,从300FFH开始的连续5个字节单元内容分别是44H,43H,42H,41H,41H。 执行REPNZ SCASB指令后,正确的结果是( )

A、DI=0104H,CX=0000H B、DI=0103H,CX=0001H

C、DI=0102H,CX=0002H D、DI=0101H,CX=0003H

20、与LEA BX, ARRAY功能相同的指令是( )

A、MOV BX,ARRAY B、MOV BX, SEG ARRAY

C、MOV BX,OFFSET ARRAY D、LDS BX, ARRAY

1.现有如下程序段:

DATA SEGMENT

ORG 0020H

DA1 DW 12H,23H

16

DA2 DB 11H,21H

DA3 EQU 1234H

DA4 EQU $-DA2

DA5 DB 31H,32H

DATA ENDS

请回答:(1)该程序段已占有的存储字节数是多少?

(2)符号名DA4的值是多少?符号名DA5的值是多少?17

因篇幅问题不能全部显示,请点此查看更多更全内容

Top