2012汇编语言试题B
一.单项选择题(每小题1分,共20分)
1.指令指针寄存器是( C )。
A)BP B)SP C)IP D)PSW
2.DA1 DB 67H
NUM EQU 80H
则执行AND DA1,NUM语句后DA1中的内容是( D );
A)E7H B)80H C)67H D)0
3.与指令MOV AX,NOT 0F0H等效的汇编语言指令是( B )。
A)MOV AX,0FH B)MOV AX,0FF0FH
C)MOV AX,000FH D)MOV AX,0F0H
4.一个有16个字的数据区,它的起始地址是70A0H:DDF6,则这个数据区最末一个字单元的物理地址是( C )。70A00+DDF6,总共32个字节,第1个字节的物理地址是7E7F6
第一个字的地址也是7E7F6,第2个字节的物理地址是7E7F7第二个字的物理地址,第最末一个字的物理地址就是第31个字节的物理地址 7E7F6+31=7E7F6+1F=7E815H
A)7E806H B)7E814H C)7E815H D)7E80BH
5.可用作基址变址寻址或寄存器间接寻址的寄存器是( D )。
A)AX,BX,CX,DX B)DS,ES,CS,SS
C)SP,BP,IP,BX D)SI,DI,BP,BX
6.在串操作指令中,下列描述中不正确的是( C )。
A)REP MOVSB B)REP STOSB
C)REPE CMPSB D)REP LODSB
7. ORG 0030H
DA1 DB 0,‘0’,30H
偏移地址为0030H字存储单元的内容是( A )。
A)3000H B)00H C)0030H D)3030H
8.编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令是( D )。
A)CMP B)SUB C)AND D)MOV
9.将高级语言的程序翻译成机器码程序的实现程序是( A )。
A)编译程序 B)汇编程序 C)解释程序 D)目标程序
10.设DS=1E4AH,偏移地址为0056H,该字节的物理地址为( D )。
A)1E4A6H B)1E456H C)1E556H D)1E4F6H
11.假设下列指令中所用的标识符类型均为字类型属性的变量,下述指令中正确的指令是( B )。
A)MOV WORD-DA1, WORD-DA2
B)MOV WORD-DA[BX+4*4][DI], SP
C)MOV AX, WORD-DA[DX]
D)MOV [BX][SI], 3
12.在程序顺序执行时,每取一条指令语句,IP指针增加的值是( D )。
A)1 B)2 C)3 D)由指令长度决定的
13.若AX=349DH,CX=0FH。则执行指令ADD AX,CX 后,AX的值是( B )。
A)349DCH B)000DH C)049DH D)0240H
14.在下列四种描述中,不重复执行循环的是( C )。
A)MOV CX,0 B)MOV CX,-1
LOP:LOOP LOP LOP: LOOP LOP
C)MOV CX,1 D)MOV CX,2
LOP LOOP LOP LOP LOOP LOP
15.若(AX)=2000H,(BX)=0050H,(20050H)=12H,(20051H)=34H,执行MOV AX ,[BX]指令后,AX 寄存器中的内容的( D )。
A) (AX)=0050H B) (AX)=0012H
C) (AX)=1234H D) (AX)=3412H
16.设(AX)=0FC77H,(CX)=504H,CF=1,执行SAR AX,CL指令后,AX的值是( C )。
A)FFC8H B)FFC9H C)FFC7H D)FCC8H
17.假设字节单元(02398H)=12H,(02399H)=34H,(0239AH)=56H,则(02399H)字单元的内容是( C )。
A)3412H B)3456H C)5634H D)1234H
18.INC WORD PTR [BX]指令中的操作数的数据类型是( A )。
A)字 B)双字 C)字节 D)四字
19.下列4条指令中,错误的指令是( B )。
A)SUB CX,DX B)MOV AX,SS:[DX]
C)SHL AX,1 D)ADD AX,[BP+SI]
20.若AX=912DH,CX=OFH,执行指令OR AX,CX后,AX的值是( B )。
A)000DH B)912FH C)912AH D)002FH
二. 填空题(每空1分,共5分)
1.在8086/8088汇编语言中,串操作指令中搜索字符串指令的助记符是( SCAS );
2.当发生除法溢出时,OF=( 1 )。
3.指令JMP WORD PTR[BX] 属于( 段内间接转移 )寻址。
4.当源程序被汇编时,汇编程序对每个宏调用作( 宏展开 )。
5.DD伪指令中定义的每个操作数占有( 4 )个字节。
三.简答题(每小题2分,共6分)
1. ARRAY2 DB 10H,20H,30,40H
ARRAY3 DW 20H,DUP(0,1,2,DUP(2))
……..
MOV BL,SIZE ARRAY2
MOV CL,SIZE A RRAY3
上述两条指令的等效指令是什么?
答:
MOV BL, 1
MOV CL ,40H
2. 请指出下述两条伪指令语句的区别?
COUNT1 DB 48H
COUNT2 EQU 48H
答:
COUNT1 作为地址,在该字节的存储单元中存放数据48H; COUNT2作为符号名,数据48H直接赋值给COUNT2.
3. 请写出完成下列操作所选用的指令。
(1) 将AX的内容减去7A30H和上次运算的借位。
(2) 将变量名TABL的段地址送AX。
答:
(1) SUB AX, 7A30H
(2) MOV AX, SEG TABL
四、程序分析题(每小题5分,共35分)
1.
MOV AH,1
INT 21H
汇编判断指令MOV BL,AL
MOV AH,1
INT 21H
ADD AL,BL
AAA
上述程序完成的功能是什么?
答:
从键盘上输入两个一位数,然后相加,并把结果放在AH和AL中.
2、现有下列程序段:
MOV AX,1234H
MOV DX,4578H
MOV CL,04
SHL DX,CL
MOV BL,AH
SHL AX,CL
SHR AX,CL
OR DL,BL
试问上述程序段运行后,(AX)=( ),(BL)= ( ),(DX)=( )。
答:
(AX)=2340H
(BL)=01
(DX)=6780
3、假设数据区有:
DA1 DB 56H
DA2 DB 34H
DA3 DB ?
DA4 DB ?
(1)、下列程序段完成的功能的什么?
(2)、程序段执行后DA3、DA4字节单元的内容是什么?
MOV AL,DA1
ADD AL,DA2
JO NEXT
MOV DA3,AL
MOV DA4,0
JMP EXIT
NEXT: MOV DA4,1
EXIT: HLT
答:
(1) 两个数相加,判断是否有溢出.
(2) (DA3)=8AH, (DA4)=0
4、已知(AX)=4321H
INC AX
NEC AX
DEC AX
NEG AX
上述几条指令执行后,(AX)=( )。
答:
(AX)=4323H
5、
MOV AX,2
MOV DX,AX
SAL AX,1
SAL AX,1
SAL AX,1
ADD AX,DX
SAR AX,1
问:
(1)、上述程段序段执行后完成什么功能?
(2)、程序段执行完成后AX寄存器的内容是多少?
答:
(1) 完成工作: (AX) *5/2
(2) (AX)=0005H
6、设(BX)=76D1H,指令:
MOV CL,7
AHR BX,CL
执行后,(BX)=( )。
答:
(BX)=00EBH
7、
SUB AL,AH
DAS
若指令执行前,(AL)=86H,(AH)=07;
问:上述指令执行后,(AL)=( ),(CF)=( ),(AF)=( )。
答:
(AL)=79H, (CF)=0, (AF)=1
五、程序填空题(每小题6分,共12分)
1、以DA为起始地址的数组中存放的N个有符号数据,下面程序完成了出N个数中的最大和最小值分别送入AH和AL中。请将程序段补充完整(每一空白处只填一条指令)。
DA DB 12,34,-24,6A,……,98 ;N个有符号数据。
CUNT EQU $ -DA
….
MOV SI, ADR
MOV CX, CUNT
MOV BH, [SI]
MOV BL, BH
LOP1: ( )
CMP AL,BH
( )
MOV BH,AL
( )
LOP2: CMP AL, BL
LGE LOP3
MOV BL,AL
LOP3: DEC CX
( )
MOV AX , BX
答:
(1) LODSB
(2) JLE LOP2
(3) JNZ LOP1
2、下列程序段完成:2+4+……+20共10个偶数的累加和。请将程序段补充完整(每一空白处只填一条指令)。
DATA SEGMENT
SUM DW ?
…
XOR AX, AX
( )
MOV BX, 2
LOP1: ADD AX, BX
INC BX
INC BX
( )
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论