2014汇编语言复习题与答案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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

1、十进制数86= B= H。

2、总线是指传送信息的一组公共导线,是计算机各功能部件之间进行信息传输的通道。、和之间通过数据总线DB(Data Bus)、地址总线AB(Address Bus)和控制总线CB(Control Bus)相连,这三组总线统称为系统总线。

3、对源程序进行的逻辑分段有四类,分别是:、、、。

4、指令语句在汇编时被翻译成指令,伪指令语句则在汇编时由

执行,而不被翻译成机器语言指令。

5、一个有32个字的数据区,它的起始地址为60A0:DDF0。请写出这个数据区首字单元的段地址= 、偏移地址= 、

物理地址= 。

6、循环程序一般由、、和三个部分组成。

7、判断经1110 1011B+1000 1100B运算后,CF= ,OF= ,AF= 。

二、单项选择题(每题2分,共20分)

1、8086CPU在执行8位无符号数运算后,产生溢出是结果超出了()。

A、0~255

B、+128~-128

C、+255~-256

D、+127~-128

2、将累加器AX的内容清零的正确指令是()。

A、OR AX,0

B、XOR AX,AX

C、TEST AX,AX

D、CMP AX,AX

3、不影响8086堆栈指针SP值的指令是()。

A、JMP

B、PUSH AX

C、POP CX

D、INT 21H

4. 假设X1和X2是用DB定义的变量,下列指令中正确的是( )。

A、MOV AX,X1

B、MOV X2,X1

C、MOV AL,X2

D、MOV 3000H,X2

5. 计算机处理问题中会碰到大量的字符、符号,对此必须采用统一的二进制

编码。目前,计算机中普遍采用的是()。

A.BCD码

B. 二进制码

C.ASCII

D. 十六进制码

6.下列寄存器不能存放操作数有效地址的为()。

A、SI

B、DI

C、BX

D、DX

7. 在需要从端口378H读入数据时,下列指令中正确的是()。

A.IN AL, 378H

B. OUT 378H, AL

C. MOV AL, 378H

D. MOV DX, 378H IN AL, DX

8. 设数据段中已有

DA1 DB 12H, 34H

DA2 DW 56H, 78H

下面有语法错误的语句是()。

A、ADDR1 DW DA1

B、MOV DA1+1,AX

C、MOV BYTE PTR DA2+1,AL

D、MOV WORD PTR DA1+1,AX

9. 下面程序段完成的算术表达式是()。

MOV AL, BYTE PTR X

SHL AL, 1

DEC AL

MOV BYTE PTR Y, AL

A. Y=2X+1

B. X=2Y+1

C.Y=2X-1

D.X=2Y-1

10.下面指令执行后,改变AL内容的指令是( )。

A.TEST AL,02H B.OR AL, AL

C.CMP AL, BL D.AND AL, BL

三、分析题(共30分):

1、设(DS)=3879H,(BX)=1000H,(SI)=0002H

ORG 1000H

X DB 12H,34H,56H,78H

Y DW X

指出下列指令中源操作数的寻址方式以及各条指令执行后的结果?(每小题2分,合计10分)

MOV AX,[1000H] (1)源操作数的寻址方式:执行结果:(AX)=

MOV AX,[BX] (2)源操作数的寻址方式:执行结果:(AX)=

MOV AX,[BX+SI] (3)源操作数的寻址方式:执行结果:(AX)=

MOV AX,[BX+2] (4)源操作数的寻址方式:执行结果:(AX)=

MOV AX,BX (5)源操作数的寻址方式:执行结果:(AX)=

2、执行下列程序后,回答问题。(4分)

MOV AX, 0

MOV BX, 2

MOV CX, 5

L1:ADD AX, BX

ADD BX, 2

LOOP L1

HLT

问(1) 该程序完成的功能是什么?

(2)AX=?

3、设有宏定义如下:

TRAN MACRO N1,N2

MOV AX,N1

MOV BX,N2

MOV N1,BX

MOV N2,AX

ENDM

请将宏调用:TRAN BUF1,BUF2进行宏展开(4分)

4、CMP AL, 0FBH

JNL NEXT

NEXT:……

上述程序中,当满足条件转到NEXT标号执行时,AL中的值是 (范围)(2分)

5、下列程序完成求三个带符号字数据中的最大值,并将最大值存入MAX字单元中。设三个带符号数分别在三个字变量X、Y、Z中存储。

完成程序填空。(10分)

DATA SEGMENT

X DW -0ABH

Y DW 205

Z DW 200

MAX DW ?

DATA ENDS

CODE SEGMENT

ASSUME DS:DATA,CS:CODE

START:

MOV AX, (1)

MOV DS, AX

MOV AX, X

CMP AX, Y

(2)L1

MOV AX, Y

L1:

CMP AX, Z

(3)EXIT

MOV AX, Z

EXIT:

MOV (4), AX

MOV AH, 4CH

INT (5)

CODE ENDS

END START

四、设计题(共30分):

1、编程将数据区以BUFFER为首地址,连续100个字节的存储单元清零。(10分)

2、编程要求能从键盘接受一个一位数N,然后响铃N次(响铃的ASCII为07)。(10分)

3、采用子程序结构编程,完成10以内所有奇数的累加和,结果存放在SUM为首址的存储单元中。(10分)

标准答案和评分标准

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

1、0101 0110,56

2、CPU,存储器,I/O接口电路

3、代码段,数据段,附加段,堆栈段

4、机器语言,汇编程序

5、60A0H、DDF0H、6E7F0H

6、循环初始化部分;循环体;循环控制部分

7、1;1;1

二、单项选择题(每题2分,共20分)

1~5 A B A C C

相关文档
最新文档