汇编语言程序设计模拟题 下载本文

MOV CX,CONT MOV AL,?$? XOR DX,DX

NEXT:REPNZ SCASB

CMP CX,0 JZ K1 INC DX JMP NEXT K1: ?

上述程序段运行后,DX中的值表示的意义是什么?

6、DA1 DW 1F28H DA2 DB ? ┇

XOR BL,BL MOV AX, DA1 LOP:AND AX,AX JZ KK

SHL AX,1 JNC LOP ADD BL,1 JMP LOP

KK:MOV DA2,BL

试问:A.程序段执行后, DA2字节单元内容是什么?

B.在程序段功能不变情况下,是否可用SHR指令代替SHL指令? 7、DA1 DB 87H DA2 DB ┇

MOV AH,0 MOV AL,DA1 MOV CL,4 SHR AL,CL MOV DL,10 MUL DL

MOV BL,DA1 AND BL,0FH ADD AL,BL MOV DA2,AL

试回答:A.程序段执行后,(DA2)=______;

B.在程序段功能不变的情况下,是否可以用指令SAR替代指令SHR?

8、MOV AL,BL NOT AL

XOR AL,BL OR BL,AL

程序段执行后,AL=______,BL=______。

21

9、STC

MOV CX,0403H MOV AX,0A433H SAR AX,CL XCHG CH,CL SHL AX,CL

程序段执行后,AX=______,CF=______。 10、BYTE1 DB XX ;任意数 BYATE2 EQU 0FEH ┇

MOV DL,BYTE1 OR DL,BYTE2

程序段执行后,DL=______或______。

11、DA_B DB 0CH,9,8,0FH,0EH,0AH,2,3,7,4 ┇

XOR AX,AX XOR CL,CL XOR BX,BX

LOP:TEST DA_B[BX],01H JE NEXT

ADD AL,DA_B[BX] INC AH

NEXT:INC BX INC CL

CMP CL,10 JNE LOP

上述程序段运行结束后,AH=______,AL=______。如果把“JE NEXT指令改为“JNE NEXT“指令,那么AH=______,AL=______。 12、VAR_B DB 10 DUP(3,5,7,9) ┇

LEA BX,VAR_B MOV CX,10 XOR AX,AX

LOP:ADD AL,[BX] CMP AL,10 JB NEXT INC AH

SUB AL,10 NEXT:INC BX LOOP LOP

上述程序段运行结束后,AH=______,AL=______。

13、已知AX=0FF60H,CF=1 MOV DX,96 XOR DH,0FFH

22

SBB AX,DX

执行上述指令序列后,AX=___________________,CF=___________________。 14、设寄存器AL,BL,CL中内容均为76H, XOR AL,0FH

AND BL,0FH OR CL,0FH

执行上述指令序列后,AL=___________________。 BL=___________________,CL=___________________。

15、已知AX=0A33AH,DX=0F0F0H AND AH,DL XOR AL,DH NEG AH NOT AL

执行上述指令序列后,AH=___________________,AL=___________________。 16、DATA SEGMENT

S9 DB0,1,2,3,4,5,6,7,8,9 DATA ENDS ┇

LEA SI,S9 LEA,DI,S9+1 MOV CX,5 LOP: MOV AL,[SI] XCHG AL,[DI] MOV [SI],AL

ADD SI,2 ADD DI,2 LOOP LOP

上述程序段运行后,S9开始的10个字节存储单元内容是什么? 17、 .MODE SMALL

.DATA

DATA1 DW 2000H DATA2 DW 3000H .CODE .STARTUP

LEA SI,DATA1 MOV DI,OFFSET DATA2 MOV BX,[SI] MOV CX,[DI] MOV [SI],CX MOV [DI],BX .EXIT

END

上述程序段运行后,(DATA1)=_________________,(DATA2)=_________________。 18、DA3 EQU WORD PTR DA4

23

DA4 DB 0ABH,89H ┇

SHR DA3,1 MOV DX,DA3 SHL DA4,1 MOV CX,DA4

上述程序段运行后,CX=___________________,DX=___________________。 19、现有如下程序段:

DATA SEGMENT

ORG 0020H

DA1 DW 12H,23H DA2 DB 11H,21H DA3 EQU 1234H DA4 EQU $-DA2 DA5 DB 31H,32H DATA ENDS

请回答:(1)该程序段已占有的存储字节数是多少?

(2)符号名DA4的值是多少?符号名DA5的值是多少? 20、执行下列程序段后,回答问题。 ORG 1221H

NUM DW 12H

?

MOV AX,NUM

MOV BX,OFFSET NUM

MOV CL,BYTE PTR NUM+1 MOV CH,TYPE NUM HLT

请问:(AX)=______,(BX)=______,(CX)=______。 21、阅读如下程序:

ADRR DB XXH,XXH,??,XXH

NUM EQU $ -ADRR RETT DB? ?

MOV CX,NUM MOV BX,-1 DON:INC BX

CMP ADRR[BX],0 LOOPZ DON JNZ NEXT

MOV BL,0FFH

NEXT: MOV RETT,BL

HLT

请问:(1)该程序完成的功能是什么?

(2)程序执行后指出RETT字节单元中的内容是什么?

24