汇编语言考试复习题及答案
- 格式:pdf
- 大小:259.78 KB
- 文档页数:11
一、单项选择题(从下列每题的四个选择中选择一个正确的,填入答题纸的相应位置。每小题2分,共30分)1.下列指令有语法错误的是__________。A) PUSH AL B) ADDC AX,50HC) MOV [SI],[DI] D) JMP WORD PTR[BX+5]见书:35页,PUSH2.执行下列程序段后,(AX)= ________。TAB DW 1,2,3,4,5,6ENTRY EQU 3 MOV BX, OFFSET TAB ADD BX,ENTRY MOV AX,[BX] A) 0003H B) 0300H C) 0400H D) 0004H3.NC 指令不影响 _________标志。A) OF B) CF C) ZF D) SF
4.执行下列指令后:STR1 DW ‘AB’STR2 DB 16 DUP(?)CNT EQU $ -STR1 MOV CX,CNT MOV AX,STR1 HLT寄存器CL的值是________,寄存器AX的值是________。① A) 10H B) 12H C) 0EH D) 0FH② A) 00ABH B) 00BAH C) 4142H D) 4241H
5.汇编语言源程序经汇编后不能直接生成 文件。
A).OBJ B).LST C).EXE D).CRF
6. 8086 CPU在基址加变址的寻址方式中,已知BX=2000H,SI=1234H,则指令“MOV
AX,[BX+SI+2]”的源操作在 中。
(A)数据段中偏移量为3236H的字节
(B)数据段中偏移量为3234H的字节
(C)附加段中偏移量为3236H的字节
(D)附加段中偏移量为3234H的字节
(A)19,20 (B)20,无右孩子 (C)无左孩子,20 (D)无左孩子,无右孩子
7.执行下面的程序段后,DAT1单元的值 是。
DAT1 DB 12H,34H
DAT2 DB 56H,78HMOV AX,WORD PTR DAT1
CMP AX,WORD PTR DAT2
JA DONE
MOV BX,WORD PTR DAT2
MOV WORD PTR DAT2,AX
MOV WORD PTR DAT1,BX
DONE:HLT
A)12H B)34H C)56H D)78H
8.下列指令中,正确的一条是 。
A) MOV BYTE PTR [BX],1000
B) MOV AX,[SI][DI]
C) LEA BX,4[BX]
D) MOV AX,ARRAY1+ARRAY2
9.执行下列指令后:
MOV AX,1234H
MOV CL,4
ROL AX,CL
DEC AX
MOV CX,4
MUL CX
HLT
寄存器AH的值是 。
A) 92H B) 8CH
C) 8DH D) 00H
10.设(SP)=0100H,(SS)=2000H,执行PUSH BP指令后,栈顶的物理地址是 。
A) 200FEH B) 0102HC)20102H D) 00FEH
11.对于下列程序段:
AGAIN:MOV AL,[SI]
MOV ES:[DI],AL
INC SI
INC DI
LOOP AGAIN
也可用指令 完成同样的功能。
A) REP MOVSB B)REP LODSB
C) REP STOSB D) REPE SCASB
12.下列指令中,不影响标志位的指令是 。
A) ROR AL,1 B) JNC Label
C) INT n D) SUB AX,BX
13.下列指令中,正确的一条是 。
A) MOV AH,BX B) MUL AX,BX
C) MOV SP,SS:DATA-WORD[BX][SI]
D) LEA DS,35[DI]
14.假设V1和V2是用DW定义的变量,下列指令中正确的是 。
A) MOV V1,V2 B) MOV V1,20H
C) MOV 2000H,V2 D) MOV AL,V1
二、填空题(将正确答案填入答题纸相应的地方。每题2分,共20分)1.假定(SS)=2000H,(SP)=0100H,(AX)=2107H,执行指令push ax后,存放数据21H的物理地址是_________。2.假定(AX)=96H,(BX)=65H,依次执行ADD AX,BX和 DAA指令后,(AL)=______。3.若定义 DATA DW 1234H ,执行MOV BL,BYTE PTR DATA指令后,(BL)=______。4.若定义 DATA DB 0A5H,5BH,在指令MOV BX,___________DATA中填充,使指令正确执行。5.在 MOV WORD PTR[0074H],55BBH指令的机器代码中,最后一个字节是________。6.写出将寄存器AX 的内容求反的正确指令是___________________。7.设(AX)=2001H,执行CMP AX,AX 后 (AX)=_________________。8.寄存器间接寻址方式中,操作数在__________中。
9.下面两个语句的区别在于 不能多次赋值, 可以多次赋值。
X1 EQU 1000H
X2=1000H
三、程序分析题(每题5分,共20分)1.执行下列程序后,指出相应寄存器的当前值。 MOV SP,2000HMOV AX,0F0HMOV SI,1234HMOV DX,5678HPUSH SIPOP DISHR AX,1TEST AX,DXPUSH DXHLTSP=_________; DL内容所在存储器的偏移地址为_________;
AX=_________;DX=__________;标志位ZF为_________。
2.执行下列程序段后,给出指定寄存器的内容。
MOV AL,45H MOV BH,AL AND BH,0FH MOV CL,4 SHR AL,CL MOV BL,AL BH=__________; BL=________
3.执行下列程序段后,给出指定寄存器的内容。
MOV AX,0 MOV BX,1 MOV CX,100 A: ADD AX,BX INC BX LOOP A HLT执行后的结果为(BX)=______;
(AX)=______。
该程序段的功能是________________________。4.执行下列指令后:
STR1 DW ‘AB’STR2 DB 16DUP(?)CNT EQU $-STR1 MOV CX,CNT MOV AX,STR1 HLT1、 寄存器CL的值是__________;2、 寄存器AX的值是___________;3、 如将STR1 DW ‘AB’ 改为 STR1 DB ‘AB’用“MOV AX,WORD PTR STR1” 代替“MOV AX,STR1”后,寄存器AX的值是______________。 5、执行下列指令后: MOV AX,1234HMOV CL,4ROL AX,CLDEC AXMOV CX,4MUL CXHLT寄存器AH的值是___________;寄存器AL的值是___________。
四、程序设计题(每题15分,共30分)1.编程从键盘输入一字符串存放在IN-BUF 缓冲区中,然后在下一行以相反顺序显示出来。2.编写将压缩BCD码转化为对应的两个ASCII码的子程序。
模拟试卷 答案
(答案不一定正确)
1、 选择题
1. A
A选项,请先查阅书56页,PUSH指令的用法,一次只能压入一个
字(16位)。B选项,ADC指令(书56页),符合语法要求 (AX) =
(AX) + 50H + CF,C选项,书51页 图3-16,[SI] 即 DS:[SI] 指示的是内
存的存储空间,[DI] 即 DS:[DI] 指示的是该物理地址指向的空间存
放的数值,该操作即“存储单元 立即数”,有关该寻址方式见书
P42页下方“4.寄存器间接寻址方式”。D.见书92页“(1) PTR”此处
WORD PTR是为了明确[BX+5]存储单元的属性。
2. B
说明:EQU伪指令类似于C语言的#define宏,在编译前被转化,见书96页。 由图可知此题应为 0300H
3. B
INC指令见书56页最下方。
4. B C
STR1 DW ‘AB’ 见书98页下方字符串表达式
STR2 DB 16 DUP(?) DUP重复指令见书99页
CNT EQU $-STR1 EQU见书96页,$见书104页,EQU不影响
$值
MOV CX, CNT
MOV AX, STR1
HLT 一般用来表示程序结束,见书80页
由“STR1 DW ‘AB’”和“STR2 DB 16 DUP(?)”可以写出如右图的
存储示意。注意的是代码编译时变成。
STR1 DW ‘AB’
STR2 DB 16 DUP(?)
MOV CX, $-STR1 这里的$要在前两句的基础上增加1,表
示当前,$=0012H。
MOV AX, STR1
又因为STR1的地址为0000H,所以(CL)=0012H。根据书第98页到第
99页图(b) 可知应选4142H,选C
5. C见书86页 由图可知,经过汇编后不能直接生成EXE文件,EXE文件
必须由LINK.EXE连接生成。
6. A
见书43页,[BX+SI+2]的默认段前缀为DS,偏移量应该是BX + SI + 2
= 3236H
7. C
DAT1 DB 12H,34H
DAT2 DB 56H,78H
MOV AX,WORD PTR DAT1 (AX) = 3412H
CMP AX,WORD PTR DAT2 (AX) < 7856H
JA DONE 由于上面略过这句
MOV BX,WORD PTR DAT2 (BX) = 7856H
MOV WORD PTR DAT2,AX
MOV WORD PTR DAT1,BX DAT1存放56H
DONE:HLT
8. C
A选项,MOV不能将立即数存入内存中,B缺少基地址寄存器。
9. C
MOV AX,1234H (AX) = 0001 0010 0011
0100B
MOV CL,4
ROL AX,CL (AX) = 2341H 书69页
DEC AX (AX) = 2340H
MOV CX,4 (CX) = 4
MUL CX 书59页 (AX) = 8D00H
∴(AH)=8DH
HLT
10. A
见书35页,由于PUSH压入的是一个字,因此 SP自减2,
∵(SP)=0100H,(SP)=(SP)-2 ∴(SP)=00FEH。因为(SS)*16D+
(SP)=20000H+00FEH=200FEH。
11. A
12. B
ROR见书69,影响CF,SUB见书58,AF、CF、OF、PF、SF和ZF,
INT改变中断标志位,JNC仅判断CF标志位。
13. C