C.CX=0 AND ZF=0 D.CX=0 AND ZF=1
18.当执行条件转移指令JNS OPR时,如条件成立,相对于转移指令的转移距离是( )
A.-128--+127字节 B.-126--+129字节
C.-128--+129字节 D.-126--+127字节
19. TEST DL,55H
JE NEXT
┆
NEXT:……
…
上述程序段,执行JE指令时能产生转移的情况是( )
A.DL>55H B.DL<55H
C.DL=55H D.DL中第0、2、4、6位均为0
20.寄存器BX和DX中存放有32位二进制数,其中BX中放高16位,下列程序段完成对这32位数扩大四倍的功能;那么该程序段中方框里应填的语句是( )
MOV CX,2
LOP:SHL DX,1
[ ]
LOOP LOP
A.ROL BX,1 B.ROR BX,1
C.RCL BX,1 D.RCR BX,l
二、填空题(本大题共6空,每空1分,共6分)
请在每小题的空格中填上正确答案。错填、不填均无分。
21.若要源程序从标号START开始执行,源程序结束伪指令的格式为__________。
22.与指令LEA DI,AV等效的指令是____________。
23.语句DA2 DW ′AB′汇编后在DA2字节单元中存放__________,在DA2+1字节单元中存放____________。
24.处理指令MOVS和STOS指令可与重复操作前缀_____________联用,联用前必须将数据串长度送到____________寄存器中。
三、简答题(本大题共4小题,每小题2分,共8分)
25.条件转移指令的判断条件,除标志位PF外还有哪几个标志位?
26.DATl DB 1,2,3,4
DAT2 DW 3412H,5678H
┆
MOV AX,DATl+1;将DATl+1字单元内容送入AX中
MOV BL,DAT2+1;将DAT2+1字节单元内容送入BL中
已知上述两条MOV语句有语法错误,请根据注释字段的要求将其改正(分别用一条语句改正)。
27.假设DS=2000H,COUNT=0100H,SI=0030H。指令MOV AX,COUNT [SI]
①写出源操作数的物理地址。
②该指令可否写成MOV AX,[COUNT+SI]?
28.已定义语句如下,请画出从BUFl、BUF2、BUF3开始的内存分配图。
BUFl DB ′AB′,0,0,′CD′,0,0,′EF′,0,0
BUF2 DW ′BA′,0,′DC′,0,′FE′,0
BUF3 DD ′BA′,′DC′,′FE′
四、程序分析题(本大题共6小题,每小题6分,共36分)
29.若48H和93H是无符号数。
SOUR DB 48H,93H
MZ DB?
┆
MOV AL,SOUR
CMP AL,SOUR+1
JA K1
MOV AL,SOUR+1
.K1:MOV MZ,AL
试问:①(MZ)=_____________
②48H和93H是有符号数,JA K1指令应改为什么指令?
30.BUFl DB ′1234ABCDEF′
COUNT EQU $ -BUFl
BUF2 DB COUNT DUP(0)
┆
LEA SI,BUFl
LEA DI,BUF2
MOV CX,COUNT
CLD
LOP:LODSB
CMP AL,39H
JBE K
SUB AL,7
K:ANDAL,OFH
▲
STOSB
LOOP LOP
问:①这段程序执行后,BUF2各字节中存入什么数据?
②若▲处加入OR AL,01H指令后,结果是什么?
31.X DB XX
Y DB XX
Z DW?
┆
XOR CH,CH
MOV CL,Y
MOV AX,1
JCXZ K
LOP:MUL X
LOOP LOP
MOV Z,AX
JMP ENDO
K:MOV Z,AX
ENDO:……
问:①写出程序运算式;
②当Y=0时Z单元内容是什么?
32.阅读下面程序段,回答问题,