汇编试题答案

汇编试题答案
汇编试题答案

汇编语言程序设计答案

一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题2分,共40分)

1.十六进制数88H,可表示成下面几种形式,请找出错误的表示(②)。

①无符号十进制数136

②带符号十进制数-120

③压缩型BCD码十进制数88

④8位二进制数-8的补码表示

2.某存储单元的物理地址是12345H,可以作为它的段地址有(④)

①2345H②12345H

③12340H④1234H

3.完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是(①)。

①MOV AL,00H

②AND AL,00H

③XOR AL,AL

④SUB AL,AL

4.在汇编语言程序中,对END语句的叙述正确的是(②)。

①END语句是一可执行语句

②END语句表示程序执行到此结束

③END语句表示源程序到此结束

④END语句在汇编后要产生机器码

5.下面的数据传送指令中,错误的操作是(④)。

①MOV SS:[BX+DI],1000H

②MOV DX,1000H

③MOV WORD PTR[BX],1000H

④MOV DS,2000H

6.下面指令执行后,变量DAB中的内容是(③)。

DAW DW 2A05H

DAB DB 0FAH

MOV AL,BYTE PRT DAW

SUB DAB,AL

①0DAH

②0FAH

③0F5H

④0D0H

7.执行下列指令后,正确的结果是(②)。

MOV AL,100

MOV BL,-2

①AL=100H

BL=02H

②AL=64H

BL=0FEH

③AL=64H

BL=82H

④AL=100H

BL=0FEH

8.当一个带符号数大于0FBH时程序转移,需选用的条件转移指令是(③)。

①JLE

②JNL

③JNLE

④JL

9.测试BL寄存器内容是否与数据4FH相等,若相等则转NEXT处执行,可实现的方法是(②)。

①TEST BL,4FH

JZ NEXT

②XOR BL,4FH

JZ NEXT

③AND BL,4FH

JZ NEXT

④OR BL,4FH

JZ NEXT

10.在执行下列指令时,需要使用段寄存器DS的指令是(①)

①STOSW②ADD AL,CL

③NEG BX④INC DA[BX]

11.设AL=0AH,下列指令执行后能使AL=05H的是(③)

①NOT AL②AND AL,0FH

③XOR AL,0FH④OR AL,0FH

12.在下列串操作指令中,同时使用源串和目的串地址指针的指令是(④)

①STOSW②LODSW

③SCASW④CMPSW

13.设SP初值为2000H,执行指令“PUSHAX”后,SP的值是(④)

①1FFFH②1998H

③2002H④1FFEH

14.汇编语言源程序中,每个语句可由四项组成,其中名字项是一个符号,下面列出的有效

名字是(②)

①Variable②First&ld

③0FFFFH ④‘Memphis’

https://www.360docs.net/doc/8e18089118.html,0030H

DA1DB0,‘0’,30H

DWDA1

数据为3000H字存储单元的偏移地址是(①)

①0030H②0031H③0032H④0033H

16.要求将A,B两个字符的ASCⅡ码41H,42H顺序存放在连续两个字存储单元中,可选用

的语句是(①)

①DA1DB‘AB’②DA1DW‘AB’

③DA1DB0ABH④DA1DW0ABH

17.为在一连续的存储单元中,依次存放数据41H ,42H ,43H ,44H ,45H ,46H ,

可选用的数据定义语句是(④)

① DB 41 ,42 ,43 ,44 ,45 ,46

② DW 4142H ,4344H ,4546H

③DW ‘AB’,‘CD’,‘EF’

④DW ‘BA’,‘DC’,‘FE’

18如某存储器分段时,表示偏移地址是18 位二进制代码,那么一个段最多的存储单元数是(③)

① 32K 字节② 32K 字

③64K 字节④ 64K 字

19 .把BL 中的数据输出到端口8CH 中正确指令是(③)

① OUT 8CH ,BL ② IN 8CH ,BL

③ MOV AL ,BL ④MOV AL ,BL

OUT 8CH ,AL IN 8CH ,AL

20 .设SP 初值为3050H ,执行指令PUSH BX 后,SP 的值是(①)

① 304FH ② 304EH

③3048H ④ 3049H

二、简答题(按要求完成下列各题,共35分)

21.已知堆栈寄存器SS的内容是0F0A0H,堆栈指示器SP的内容是00BOH,先执行两条把8057H和0F79BH分别入栈的PUSH指令,然后执行一条POP指令,试画出示意图说明堆栈及SP内容的变化过程。(4分)

答:F0A0H:00B0H→F0A0H:00AEH→F0A0H:00ACH→F0A0H:00AEH(每个一分)

22.写出分配给中断类型号在4AH在中断向量表中的物理地址以及相应的中断服务程序的入口地址。已知

0:4AH=0F0H,0:4BH=88H,0:4CH=90H,0:4DH=10H,0:128H=06H,0:129H=18H,0:12A=00H,0:12B=0F0 H (4分)

物理地址:1280H,中断服务程序的入口地址:F000H:1806H

23.设置中断向量,中断类型号为N,其中中断服务程序入口地址为FFF0:1230H,写出指令序列实现该功能(6分)

mov ah,25h

Mov al,N (2分)

Mov dx,1230H

Mov bx,FFF0h(4分)

Mov ds,bx

Int 21H

24.下面的程序段有错吗若有,请指出错误并改正(15分)

改正错误的每个1分,指出错误的1分

CARY PROC

PUSH AX

PUSH BX

ADD [AX],[BX] ;ADD AX,[BX]

MUL 5 ;MUL AX

MOV AH,BX ;MOV AH,BL

MOV CS,AX ;MOV DS,AX

MOV BX,OFFSET MYDAT[SI];MOV BX,OFFSET MYDAT

POP AX ;POP BX

POP BX ;POP AX

25.已知(IP)=2BC0H,(CS)=0200H,位移量

D=5119H,(BX)=1200H,(DS)=212AH,(224A0H)=0600H,(275B9H)=098AH,

试为以下的转移指令找出转移的偏移地址。(1)段内直接寻址(2)使用BX及寄存器间接寻址方式的段内间接寻址(3)使用BX及寄存器相对寻址方式的段内间接寻址(6分)1:5119H 2:098AH 3:0060H

26.在下列程序的括号中分别填入如下指令(1)LOOP L20 (2)LOOPE L20 (3)LOOPNE L20

试说明在三种情况下,当程序执行完后,AX,BX,CX,DX四个寄存器的内容分别是什么(12分)

CODE SEGMENT

ASSUME CS:CODE,DS:CODE,SS:CODE

ORG 100H

BEGIN:MOV AX,01

MOV BX,02

MOV DX,03

MOV CX,04

L20:

INC AX

ADD BX,AX

SHR DX,1

()

RET

CODE ENDS

END BEGIN

AX=5,BX=10,CX=0,DX=0

AX=2,BX=4,CX=3,DX=1

AX=3,BX=7,CX=2,DX=0

27.编写程序实现对数组ARRY[5]={6,1,7,9,0}按从小到大的顺序排序(13分)

mov ah,25h

Mov al,N (5分)

Mov dx,1230H

Mov bx,FFF0h(5分)Mov ds,bx Int 21H

相关主题
相关文档
最新文档