汇编语言试卷
一、单项选择题(本大题共20小题,每小题1分,共20分)
1.设A=0.4H,B=0.8H,C=0.4,D=0.4Q,它们之间的关系是(  C )。
A) C+D=BB) A+D=B C) B=DD) A>C>D
2.标志寄存器中属于控制标志位的是(  B )。
A)DF,OF,SF B)DF,IF,TF C)OF,CF,PFD)AF,OF,SF
3.8088/8086存储器分段,每个段不超过(  D )
A)64K个字B)32K个字节C)1兆个字节D)64K个字节
4.设AL中已有压缩型BCD码,为实现对AL的减1操作,可选用的指令序列是(  D )。
A)DEC ALB)SBB AL,0
AAS DAS
C)SUB AL,1D)SUB AL,1
AAS DAS
5.要输入端口1234H中的8位数据,其指令应是(  5 )。
A)MOV DX,1234HB)MOV DX,1234H
OUT DX,AL 1N AL,DX
C)1N AX,1234HD)OUT DX,1234H
6.若AX=-15要得到AX=15应执行的指令是(A)。
A)NEG AXB)NOT AX C)INC AXD)DEC AX
7.8086/8088系统执行传送指令MOV时(A)。
A)不影响标志位B)影响DF方向标志C)影响SF符号标志D)影响CF进位标志
8.MOV AL,79
ADD AL,0B1H
上面指令执行后,设置的标志位CF和OF的值是(  D )
A)CF=0,OF=1B)CF=1,OF=1 C)CF=0,OF=1D)CF=1,OF=0
9.已知AX,BX中均为带符号数,当进行字相除时,下面指令或指令序列正确的是(  B )。
A)DIV BXB)CWD
IDIV BX
C)XOR DX,DXD)CBW
DIV BX IDIVBX
10.下列指令中操作数在代码段中的是(A)。
A)MOV AL,42HB)ADD AL,BL
C)SUB [BX],DID)1NC [DI]
11.用REPE SCASB指令对字符串进行扫描,如CX0时,扫描结束,那么表示(  D )。
A)在字符串中遇上第一个AL中指定的字符
B)在字符串中有一个AL中指定的字符
C)在字符串中有一个不是AL中指定的字符
D)在字符串中遇上第一个不是AL中指令的字符
12.下列指令执行后对源和目的操作数均无影响的是(  D )。
A)MOV [BX+2],AX B)SUB AX,2467H C)SBB [SI],BXD)CMP AX,BX
13.表示过程定义结束的伪指令是(A)。
A)ENDP B)ENDS C)ENDD)ENDM
14.下列有语法错误的语句是(  C )。
A)DB 12HB)DW 4567H C)DD ˋBCDˊD)DB ˋCDˊ
15.DB1 DB 8 DUP(2 DUP(3),3 DUP(2))
MOV AX,WORD PTR DB1 [04H]
上面指令执行后,AX的内容是(A)。
A)0302HB)0203H C)0202HD)0303H
16.BUF1 DB 3 DUP(0,2 DUP (1,2),3)
字符串截取后六位
COUNT EQU $ -BUF1
符号COUNT等价的值是(  B )。
A)6B)18 C)16D)8
17.DA1 DW 2A05H
DA2 DB 0FAH
MOV AL,BYTE PTR DA1
SUB DA2,AL
上述指令执行后,DA2中的内容是(  C )。
A)0DAHB)0FAH C)0F5HD)0D0H
18.设(SS)=338AH,(SP)=450H,执行PUSH BX,和PUSHF两条指令后,堆栈顶部的物理地址是(A)。
A)33CECHB)33CF2H C)33CF4HD)33CE8H
19.设(SP)=0028H,执行段内返回指令RET 6后,SP的内容是(  C )。
A)0036HB)0022H C)0030HD)0020H
20.条件转移指令JNBE产生转移的条件是(A)。
A) CF=0 AND ZF=0B) CF=0 AND ZF=1 C) CF=1 AND ZF=0 D) CF=1 AND ZF=1
二、填空题(本大题共5小题,每小题1分,共5分)
21.8086/8088CPU允许最大的存储空间为1MB,因此CPU的地址总线是20 位。
22.一个语句的名字项可以是标号或变量,在程序中它们两个在书写形式上的主要区别是标号及其所代表的指令之间用冒号分开,变量及其所代表的数据之间用空格分开。。
23.无符号数和带符号数的两组条件转移指令,每条指令都有完全等效的两个指令助记符,例如,JL指令另一个指令助记符是JNGE 。
24.指令MOV AX,SEG BUF的执行,是把BUF所在段的地址送到AX中。
25.如果多个条件转移指令实现多路分支程序设计,那么为实现5路分支,需要  4 个条件转移指令。
三、简答题(本大题共3小题,每小题2分,共6分)假设DS=2000H,COUNT=0100H,
SI=0030H,指令MOV AX,COUNT[ST]
①写出源操作数的物理地址?②该指令可否写成MOV AX,[COUNT+SI]?.①物理地址=20130H
②可以
27.下面指令有无错误?若有错,是什么错误?
①MOV AX,[SI][DI] 不能用两个变址连用,其中一个应为基址。②CMP [SI],[BX] 存储单元之间不能直接比较
28.条件转移指令的判断条件除标志位PF外还有哪几个标志位?OF、ZF、SF 和CF 的标志位
四、程序分析题(本大题共7小题,每小题5分,共35分)
29.ADR DW 1234H,5678H
LEA SI,ADR
LDS BX,ADR
设变量ADR的偏移地址是100H,上述两条指令执行后:SI= 100H ,BX= 1234H 。
30.已知DS和ES指向同一个段,且当前数据段从0000H到00FFH单元内容分别为01,02,03,…,0FF,00H。问下列程序段执行后,0000~0009H的内容是些什么值。
MOV SI,0000H
MOV DI,0001H
MOV CX,0080H
CLD
REP MOVSW 答案:(从0 单元开始的内容是01,01,02,02,04,04,06,06,08,08)
31.STR1 DB ˋCOMPUTERNDPASCALˊ
SCA DB ˋNˊ
LEA DI,STR1
MOV AL,SCA
MOV CX,10H
CLD
REPNE SCASB
NEXT:……
程序运行到NEXT时CX= 7 ZF=    1
32.已知AX=0FFFFH,DX=0001H
MOV CX,2
LOP:SHL AX,1
RCL DX,1
LOOP LOP
上述程序段执行后,DX= 0007H AX= OFFFCH
33.已知DX=0A476H,CX=0302H,CF=1
OR DX,DX
RCR DX,CL
XCHG CH,CL
RCL DX,CL
上述程序段执行后,DX= 48ECH CF=    1
34.MOV AX,10
SHL AX,1
SHL AX,1
MOV BX,AX
MOV CL,2
SHL AX,CL
ADD AX,BX
上述程序段执行后,BX= 40或28H AX= 200或0OC8H
35.已知AX=78H,BX=0804H
SHR BX,1
AND BX,0F0FH
MOV CX,4
LOP:XCHG BH,BL
DIV BL
SAL AX,1
LOOP LOP
上述程序段执行后,AX= 30/1EH BX= 0402H
五、程序填空题(本大题共2小题,每小题6分,共12分)
36.下面程序执行后,AL的内容为ARRAY数组中的最小数,请在空白处各填上一条指令。
ARRAY DB 3,5,-3,-2,4,5,-8,6
MOV CX,7
MOV DI,0
MOV AL,ARRA Y
A1:INC DI
JLE A2
MOV
A2:②
37.下面程序段是判断两个存储单元是否同为正数,如是,则AX置全0,否则AX置非0。试在空白处各填上适当的一条条件转移指令(两空白处要利用不同的标志位选用不同的条件转移指令)。
V AR1 DW ××××
V AR2 DW ××××
MOV AX,V AR1
MOV BX,V AR2
XOR AX,BX
TEST BX
MOV AX,0
NEXT:……
六、编程序(本大题共3小题,共22分)
38.编一程序段将BUF字节单元中的数折成高低四位,并且将分离出的高四位和低四位分别放于BUF+1和BUF+2字节单元的低四位上。(5分)
MOV AL,BUF
MOV BUF+2,AL
AND BUF+2.0FH
MOV CL,4
SHR AL,CL
MOV BUF+1,AL
39.编写一子程序,将AL中一位十六进制数转移为对应的ASCII码并用2号DOS功能调用显示出来,输入参数:被转换的十六进制数已在AL中。(5分)
HEC1 PROC
CMP AL,l0
JC K1
ADD AL,7
K1:ADD AL,30H
MOV DL,AL
MOV AH,2
INT 21H
RET
HEC1 NEDP
40.在数据段中,WEEK是星期一~星期日的英语缩写,DAY单元中有数1~7(1表示星期一,7表示星期日):
WEEK DB ˋMONˊ,ˋTUEˊ,ˋWEDˊ,ˋTHUˊ,ˋFRIˊ,ˋSA Tˊ,ˋSUNˊ
DAY DB X ;数字1~7
试编写一源程序,根据DAY的内容用单个字符显示功能调用(2号功能)去显示对应的英文缩写。(12分)DA TA SEGMENT
WEEK DB  ‵MON ′,‵TUE ′,‵WED ′,‵THU ′,‵FRI ′,‵SA T ′,‵SUN
DAY DB X

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。