汇编语言复习题2009 联系客服

发布时间 : 星期三 文章汇编语言复习题2009更新完毕开始阅读e014a8dad15abe23482f4d93

一、单选题(在本题的每一小题的备选答案中,只有一个答案是正确的,请把你认为正确答案的题号,填入题干的括号内。多选不给分。)。

1.十六进制数88H,可表示成下面几种形式,请找出错误的表示( )。 ①无符号十进制数136 ②带符号十进制数-120 ③它的二进制形式是10001000B ④8位二进制数-8的补码表示 2.存放条件码标志、控制标志和系统标志的寄存器是( )。 ①IP ②SP ③BP ④PSW

3.执行加法运算不能使用的寄存器是( )。 ①、 BP ②、 SI

③、 CS ④、 CL

4.下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是( ) ①、AX,BX,CX,DX ②、BX,BP,SI,DI ③、SP,IP,BP,DX ④、CS,DS,ES,SS 4、下列传送指令中有语法错误的是( )。 ①、MOV CS,AX ②、MOV DS,AX ③、MOV SS,AX ④、MOV ES,AX

5.ADD AX , BX 指令执行完后OF=1,下列说法正确的是( ) ①、 如果AX,BX得内容均是带符号数,那么表示执行结果正确 ②、 如果AX,BX得内容均是无符号数,那么表示执行结果不正确; ③、 如果AX,BX得内容均是带符号数,那么执行结果表示溢出;

④、 如果AX,BX得内容均是无符号数,那么执行结果表示溢出;

6.一个有16字的数据区域,它的起始地址是70A0:DDF6,那么该数据单元第三个字单元的物理地址为(①、7E816H ②、7E814H ③、7E7F8H ④、7E7FAH

7、下面指令执行后,改变AL寄存器内容的指令是( )。 ①、TEST AL,02H ②、OR AL,AL ③、CMP AL,BL ④、AND AL,BL

8、与MOV BX,OFFSET VAR指令完全等效的指令是( )。 ①、MOV BX,VAR ②、LDS BX,VAR ③、LES BX,VAR ④、LEA BX,VAR

9.如果AX=0FFFEH,那么单独执行完ADD AX , 1,RCR AX , 1 ,(AX) = ( )

①、0000H ②、8000H ③、0FFFFH ④、7FFFH

10. MOV AL , 88H TEST AL , 66H 指令执行完后,(AL)= ( )

①、88H ②、66H ③、0H ④、0EEH

11、MOV SP,3210H

PUSH AX

执行上述指令序列后,SP寄存器的值是( )。 ①、3211H ②、320EH ③、320FH ④、3212H 12、BUF DW 10H DUP(3 DUP(2,10H),3,5)

上述语句汇编后,为变量BUF分配的存储单元字节数是( )。 ①A、80H ②、100H ③、124 ④、192 13、下面指令执行后,变量DAB中的内容是( )。 DAW DW 2A05H DAB DB 0FAH :

MOV AL,BYTE PTR DAW

第 1 页 共 5 页

)SUB DA,AL

① 0DAH ② 0FAH ③ 0F5H ④ 0D0H

14、设(DS)=2100H,(BX)=0158H,(DI)=10A5H,指令 MOV AX,[BX][DI]操作数的物理地址是( )

①、22B92H ②、86192H ③、221FDH ④、221E9H

15、TABLE DB ‘123456’

MOV AX ,LENGTH TABLE 执行完后(AX)= ( ) ①、6 ②、0 ③、1 ④、8

16、下列哪些语句能实现将一个字数据从端口1500H输入 ( ) ①、IN AX,1500H ②、MOV DX,1500H

IN AL, DX

③、MOV DX,1500H ④、MOV AX,1500H

IN AX, DX IN DX, AX 17、用LINK程序把( )文件转换为( )文件

①、ASM OBJ ②、OBJ EXE ③、ASM EXE ④、EXE OBJ 18、中断类型为6,它的中断处理程序的段地址存放在 ( )里

①、18H-19H ②、1AH-1BH ③、12H-13H ④、14H-15H 19.MOV SP,3210H

PUSH BX PUSH AX

POP AX 执行上述指令序列后,SP寄存器的值是( )。 ①、3211H ②、320EH ③、320FH ④、3212H

20.分别执行完 MOV AX,OFFSET TABLE 和 LEA AX, TABLE 后(AX)分别是多少( 单元的符号名,其中存放的内容是6789H)

①、均为6789H ②、均为0026H ③、分别为0026H和 6789H ④、分别为6789H和0026H 二、判断下列程序中指令是否正确

NAMES db ‘TOM’ db 20 db ‘KATE’

db 2 DUP (0,1,2,?)

(1) MOV AX,NAMES ( ) (2) MOV AX,WORD PTR NAMES+1 ( ) (3) MOV AL,NAMES ( ) INC [AL]

(4) JMP NAMES ( ) (5) MOV BX,OFFSET NAMES ( ) MOV AL,[BX+2]

(6)

MOV SI,2 ( ) MOV DI,3

MOV AL,NAMES[SI][DI]

(7)

MOV AL,NAMES ( ) MOV CS,AL

第 2 页 共 5 页

)?(TABLE 为数据段中0026H (8) MOV SI,1 ( ) MOV BX,OFFSET NAMES[SI]

三、程序分析题 1. A DW 1234H B DW 5678H : PUSH A PUSH B POP A POP B

试回答:①上述程序段执行后(A)= ,(B)= ②设执行前SP=200H,执行后SP=

2.对于下面的数据定义,请根据各条MOV指令单独执行后的情况,填写有关寄存器的内容 TABLE1 DB ?

TABLE2 DW 100 DUP(?)

MOV AX ,TYPE TABLE1 (AX) = MOV CX, SIZE TABLE2 (CX) = 如果 TABLE3 EQU $-TABLE1 那么TABLE3的值是 3.STRING DB ‘ABCDEFGHIJ'' :

MOV AH,01 ;从键盘输入字符1~9 INT 21H AND AL,0FH DEC AL XOR AH,AH

MOV BX,OFFSET STRING ADD BX,AX MOV DL,[BX]

MOV AH,02H ;显示输出 INT 21H :

试回答:(1)上述程序段的功能是什么? (2)如从键盘输入字符‘4'',程序段有什么结果? 4.

Datarea segment sum dw ? daterea ends

coderea segment startup: xor ax,ax mov cx,100 again:

add ax,cx loop again mov sum,ax

第 3 页 共 5 页

codrea ends

end startup

程序执行完后, AX= CX=

SUM=

四、程序填空题(下列各小题中,一个空只能填一条指令。)

1.设AX,BX中的数一个为正数,一个为负数,下面程序段完成将正数送到PLW单元中存放,请将程序中所缺指令语句补上。 TEST AX,8000H MOV PLW,BX JMP DONE

K1: DONE:

2.编程计算SUM= aibi=a1b1+a2b2+a3b3+…+a10b10

所编程序如下 DATA SEGMENT

A DB 1,2,3,4,5,6,7,8,9,10 B DB 1,2,3,4,5,6,7,8,9,10 SUM DW ? DATA ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA BEGIN: MOV AX,DATA MOV DS,AX

MOV DX,0 ;DX(结果)置初值0 MOV SI,0 ;变址寄存器置初值0 MOV CX,10 ;CX←循环计数值10 LOP1: MOV AL,A[SI] ;AL←ai ;AX←ai×bi ;DX←DX+ai×bi

第 4 页 共 5 页