汇编语言B试题及答案

更新时间:2023-06-05 15:23:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

2009—2010第一学期汇编语言期末考试试题B卷

适用班级:08计科

一、单项选择题(本大题共20小题,每小题1分,共20分)

在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。

1.当执行ADD AX,BX指令后,若AX的内容为4E52H时,设置的奇偶标志位PF=0,下面的叙述正确的是( )

A.表示结果中含1的个数是奇数 B.表示结果中含1的个数是偶数

C.表示该数是奇数 D.表示结果中低8位中含1的个数是奇数

2.设物理地址(21000H)=20H,(21001H)=30H,(21002H)=40H。如从地址21001H中取出一个字的内容是( )

A.2030H B.3040H

C.3020H D.4030H

3.转移指令JMP NEAR PTR PROCA的转移范围是( )

A.8000H~7FFFH B.7FFFH~0FFFH

C.80H~7FH D.0FH~7FH

4.设CF=1,实现AL内容乘2的指令是( )

A.RCL AL,1 B.SAR AL,1

C.SHL AL,1 D.ROR AL,1

5.算术右移指令SAR和逻辑右移指令SHR,两条指令执行结果完全相同的条件是

( )

A.目的操作数最高位为0 B.目的操作数最高位为1

C.目的操作数为任意情况 D.无论什么情况都不可能完全相同

6.没有语法错误的输入指令是( )

A.IN AL,30H B.IN 30H,AL

C.IN DX,AL D.IN AL,[BX]

7.与LEA BX,BUF指令完全等效的指令是( )

A.MOV BX, BUF B.LDS BX,BUF

C.MOV BX,OFFSET BUF D.MOV BX,WOKD PTR BUF

8.设有变量VAR和标号LAB,不正确的指令是( ) ...

A.LEA AX,VAR B.LEA AX,LAB

C.JMP NEAR PTR VAR D.JMP SHORT LAB

9.设SP的初值为1000H,执行指令PUSH AX后SP的值是( )

A.OFFFH B.1001H

C.0FFEH D.1002H

10.下列指令执行后既能使AX=0同时又使CF=0,OF=0的是( )

A.XOR AX,AX B.AND AX,AX

C.OR AX,AX D.TEST AX,0

11.在指令的操作数字段中,允许出现表达式,若BUF1与BUF2均为变量名,下 第1页/共8页

面指令中正确的是( )

A.MOV DX,BUF1*BUF2 B.MOV DX,BUF1/BUF2

C.MOV DX,(BUF1*BUF2)-BUF1 D.MOV DX,BUF2-BUF1

12.汇编语言源程序,可以是( )

A.可以直接由机器执行

B.必须由编译程序生成目标程序才能执行

C.必须由解释程序生成目标程序才能执行

D.必须由汇编程序汇编成目标程序才能执行

13. ORG 200H

BUF DB 12H,34H

MOV AX, WORD PTR BUF

上述指令语句执行后AX中的内容是( )

A.3412H B.1234H

C.0200H D.0012H

14.伪指令DA1 DB 04H DUP(3 DUP(2), 2 DUP(3))在数据区中能构成0203H操作数共有

( )

A.07个 B.04个

C.03个 D.02个

15.设NUM1 EQU 100

NUM2= 64H

下面指令执行后,使BL中为全1的指令是( )

A.MOV BL,NUM1 EQ NUM2 B.MOV BL,NUM1 LT NUM2

C.MOV BL,NUM1 NE NUM2 D.MOV BL,NUM1 GT NUM2

16.设非压缩BCD码(AL)=09H,(BL)=04H在执行SUB AL,BL指令后应选的校正指令是

( )

A.DAA B.AAS

C.DAS D.AAA

17.设AX=9ABCH,DX=8765H

PUSH AX

PUSH DX

POP AX

POP DX

上述4条指令执行后,AX,DX中内容分别是( )

A.AX=9ABCH DX=8765H B.AX=9ABCH DX=9ABCH

C.AX=8765H DX=8765H D.AX=8765H DX=9ABCH

18.DA1 EQU WORD PTR DA2

第2页/共8页

DA2 DB OABH,OCDH

SHL DA1,1

SHR DA2,1

上述两条指令执行后,DA2中两字节单元内容分别是( )

A.0ABH,0CDH B.2BH,9BH

C.4DH,57H D.56H,9BH

19.无条件转移指令JMP实现段间间接转移,转移的目标地址在( )

A.某个字存储单元中 B.某个双字存储单元中

C.某个16位通用寄存器中 D.两个16位通用寄存器中

20.检查BUF单元的内容是否为正偶数,下面程序段正确的是( )

A.MOV AL,BUF B.MOV AL,BUF

JS K1 AND AL,11H

SHR AL,1 JNE K1

JC K1 …… ;是正偶数

…… ;是正偶数

K1:……

K1:……

C.MOV AL,BUF D.MOV AL,BUF

JNP K1 TEST AL,81H

TEST AL,80H JNE K1

JNE K1 …… ;是正偶数

…… ;是正偶数

K1:……

K1:……

二、填空题(本大题共5小题,每小题1分,共5分)

21.8086/8088存贮器地址分段时,每个段起始地址的特征是___________。

22.执行带符号数字节相乘指令IMUL BL后,CF=1,OF=1意味着___________。

23.假设执行前AX=7862H,指令XOR AX,AX执行后AX中的值是___________。

24.ARRAY DB 0,2 DUP(1,2),0,3汇编时生成的数据依次是___________。

25.在存取一个存储器操作数时,段地址必须由___________提供。

三、简答题(本大题共3小题,每小题2分,共6分)

26.在汇编源程序时,下面数据段共分配多少个字节存储单元?变量BUF的偏移地址是多少?

DATA SEGMENT

ORG $+20H

DA1 DB 10H DUP(2,3)

DA2 DW 10H DUP(2,3)

ORG $+20H

BUF DD DA1,DA2

DATA ENDS

第3页/共8页

27.设BX=0FFFFH,下面指令序列中,每条指令执行后,分别为0,1表示SF、ZF、CF的值,若对标志位无影响,用斜杠/表示 SF ZF CF STC

XOR BX, BX ______________________

ADD BX,8001H ______________________

SAR BX,1 ______________________

28.如果执行NEG AL指令后AL中的内容仍保持不变,那么AL中的值是多少?执行后OF的值又是多少?

四、程序分析题(本大题共7小题,每小题5分,共35分)

29. DA1 DB ′01234′

DA2 DB 5 DUP(0)

MOV SI,0

MOV CX,5

LOP:MOV AL,DA1[SI]

ADD AL,11H

OR AL,01H

MOV DA2[SI],AL

INC SI

LOOP LOP

试问:(1)程序段执行后,写出DA2各字节中的数据。

(2)程序中MOV AL,DA1[SI]指令的源操作数是什么寻址方式

30.VAR1 DW 1234H,89,255,-2,-0AH

VAR2 DB 34,78H,44,22,19,-12

MOV AH,23H

LEA BX,VAR1+4

MOV AL,BYTE PTR [BX+1]

MOV SI,WORD PTR VAR2+3

程序段执行后AX=_______,SI=_______。

31.BUF DW 1,0,0AB1CH,582H,9,3A04H,9,0

LEA DI,BUF

MOV CX,8

MOV AX,9

REPNZ SCASW

JNZ K1

SUB DI,OFFSET BUF

MOV DX,DI

SHR DX,1

第4页/共8页

MOV AH,2

INT 21H

K1:……

上述程序执行后:(1)程序完成什么功能?(2)显示输出的是什么值?

32. MOV BX,1

XOR AX,AX

MOV CX,5

NEXT:ADD AX,BX

INC BX

LOOP NEXT

上述程序段执行后AX=_______;BX=_______。

33.设AL中高低4位分别有大于7的数,

MOV AH,AL

AND AH,88H

MOV AL,AH

OR AL,11H

程序段运行后,AH=_________,AL=_________。

34.AT DB 0AH,0BH,0CH,0DH,0EH,0FH,00H

MOV BX,0

LOP:MOV DL,AT[BX]

CMP DL,0

JZ DONE

ADD DL,37H

MOV AH,2

INT 21H

INC BX

JMP LOP

DONE:……

①上述程序段执行后在屏幕上显示的内容依次是:

②执行后BX=___________。

35.DEC2 DB′56′

XOR DI,DI

MOV BL,DEC2[DI+1]

AND BL,0FH

MOV AL,DEC2[DI]

AND AL,0FH

MOV DL,10

MUL DL

第5页/共8页

上述程序段运行后,AL=_______,BL=________。

五、程序填空题(本大题共2小题,每小题6分,共12分)

36.NUM和NUM+1单元分别存有一个8位带符号数,下面程序段将两数中大者 NUM单元,小者 NUM+1单元,请在方框处各填一条指令补充完整。 MOV AL,NUM

CMP AL,NUM+1

MOV NUM,AL

DONE:……

37.下面程序段是将BUFF单元的绝对值送入DAR单元,请将空白处各填上一条指令

BUFF DW ××××

DAR DW?

NEXT六、编制程序题(本大题共3小题,共22分)

38.用字符串指令编制一程序段,把以DAT1为首址的数据区中的100个字节数据依次传送到以DAT2为首址的数据区中。要求:在程序中按地址递减方式进行数据传送。(5分)

39.设有DX:AX构成一个32位数据,从AX的低位(第0位)开始,逐位向高位和DX置1,置1的个数由CX的内容确定(已知CX<32)。试编制一程序段,实现上述要求。(5分)

40.编写一完整源程序,将DB1中的二进制数按位倒排送DB2中,即DB1第0位送DB2第7位,DB1第1位送DB2第6位,依次类推。(12分)

DATA SEGMENT

DB1 DB XX;任一字节数

DB2 DB?

DATA ENDS

2009—2010第一学期汇编语言期末考试试题A卷答案

适用班级:08计科

第6页/共8页

一、单选题

1、D 2、D 3、A 4、C 5、A 6、A 7、C 8、C 9、C 10A

11、D 12、D 13、A 14、C 15、A 16、B 17、D 18、B 19、B 20D

二、填空题

21.在十六进制表示的地址中,最低位为0或二进制表示的地址中,最低4位均为0

22.乘积的高8位不是低8位的符号位扩展

23. 0

24.0,1,2,1,2,0,3

25.段寄存器

三、简答题

26(1)共分配0A8H个字节存储单元

(2)BUF的偏移地址是0A0H

27 SF EF CF

/ / 1

0 1 0

1 0 0

1 0 1

28 AL=-128或80H

OF=1

四、程序分析题

29、(1)DA2 DB ‘ACCEE’

(2)是变址寻址

30、AX=23FFH

SI=1316H

31、(1)从数据表中找出第一次出现值为9的元素

(2)显示输出该元素在BUF中的位置=5

32、AX=15或0FH BX=06H

33、AH=88H AL=99H

34、(1)执行后显示的内容依次是ABCDEF

(2)执行后BX=6

35、AL=56/38H BL=6

五、程序填空题

36、(1)JG DONE(2)XCHG AL,NUM+1

37、(1)TEST AX,8000H (2)NEG AX

六、编程题

38、STD

MOV CX, 100

LEA SI, DAT1

LEA DI, DAT2

ADD SI, CX

ADD DI, CX

第7页/共8页

DEC SI

DEC DI

REP MOVSB

39、 XOR AX, AX

XOR DX, DX

LOP:STC

RCL AX, 1

RCL DX, 1

LOOP LOP

40、DATA SEGMENT

DB1 DB X X

DB2 DB ?

DATA ENDS

STACK1 SEGMENT PARA STACK

DB 10H DUP(0)

STACK1 ENDS

CODE SEGMENT

ASSUME CS:CODE, SS: STACK1, DS: DATA START: MOV AX, DATA

MOV DS, AX

MOV CX, 8

MOV AL, DB1

XOR AH, AH

LOP: SAL AL, 1 或SHR AL, 1

RCR AH, 1 RCL AH, 1

LOOP LOP

MOV DB2, AH

MOV AH, 4CH

INT 21H

CODE:ENDS

END START

第8页/共8页

本文来源:https://www.bwwdw.com/article/x7e1.html

Top