模拟试卷三 下载本文

模拟试卷三

一. 单项选择题(每小题1分,共20分)

1. 设段地址和偏移地址是2F4BH:00C7H,那么它所对应存储单元的物理地址是(C)。 A.3F4B7H B。3F598H C.3F577H D。3EB76H 2.在一列段寄存器中,堆栈段寄存器是( D )。 A。ES B。CS C。DS D。SS 3.下列段寄存器中,正确的指令是( B )。

A.MOV [BX][BP],AX B。AND DH,DL C.ADD [SI],DA_BYTE D.LEA DS, 40[SI]

4.下面指令执行后,变量DA_BYTE中的内容是(C )。 DA_WORD DW AC05H DA_BYTE DB 0FAH …

MOV AL, BYTE PTR DA_WORD SUB DA_BYTE, AL

A.0EAH B.0FAH C.0F5 D.00H 5.设数据段中已有: DA1 DB 12H,34H DA2 DW 56H,78H

下面有语法错误的语句是( A )。

A.MOV DA1+2 ,AX B。ADR DW DA1

C.MOV BYTE PTR DA2+1,AL D。MOV WORD PTR DA1+1,AX 6.若(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

7.在执行PUSH[BX]指令寻找目的的操作数时,段地址和偏移地址分别是( B )。 A.无段地址和偏移地址 B。在DS和BX中 C.在ES和BX中 D。在SS和BP中 8.已定义DA _WORD DW 50 DUP (0),则指令MOV CX,SIZE DA_WORD 汇编后的等效指令是( B )。

A.MOV CX,50 B。MOV CX,100

C.MOV CX,200 D。MOV CX,100 DUP(0)

9.完成将带符号数AX的内容除以2的正确指令是( B )。 A. RCR AX,1 B。ROR AX,1 C. SHR AX,1 D。SAR AX,1 10.设BL=40H,SI=0600H,DS=3000H,(30600H)=0C0H,CF=1。执行SBB BL,[SI]后,正确的结果是( C )。

A.BL=5FH,SF=1,CF=1 B。BL=60H,SF=1,CF=0 C.BL=5FH,SF=0,CF=1 D。BL=60H,SF=0,CF=0

11.设SP=1FFD,下列指令执行后,SP寄存器的内容是( C )。 ……

PUSH BX POPF ……

A.1FFB B。1FFF C。1FFD D。2000

12.下面指令执行后,改变AL 寄存器内容的指令是( D )。 A.CMP AL,BL B。OR AL,AL C.TEST AL,BL D。AND AL,BL

13.INC BYTE PTR[BX]指令中的操作数的数据类型是( C )。 A.双字 B。字 C。字节 D。四字

14.用指令的助记符、符号地址、标号和伪指令、宏指令等书写程序的语言称为(A )。 A.汇编语言 B。高级语言 C.机器语言 D。低级语言

15.完成将累加器AX清零,下列指令中错误的是( D )。 A.XOR AX,AX B。SUB AX,AX C.AND AX,00H D。OR AX,00H 16.下列各组伪指令中,使用错误的是( C ) A. ATACK_SEG SEGMENT ‘STACK’ B. SEGMENT ‘CODE’

C. MAIN_PROC PROC FAR

MAIN_PROC NEDP END MAIN_PROC

D. MYDATA SEGMENT ‘DATA’ …

ENDS

17.在8086/8088系统中,存储器是分段组织的,每段最大字节的长度是( C )。 A,8K B。16K C。64K D。1M 18.设(AX)=0A8H,(CL)=3,CF=1,执行RCL AX,CL指令后,AX寄存器的内容是( B )。

A.0545H B。0544H C。0547H D。00B5H

19已知DS=2000H,BX=1000H,COUT=0020H,SI=6D50H,(21020)=1080H,(21022)=4000H,则执行指令LDS SI,COUT[BX]后,SI、DS寄存器的内容分别是(C )。 A.SI=6D50H,DS=2000H B。SI=1080H,DS=2000H C.SI=1080H,DS=4000H D。SI=6D50H,DS=1080H 20.执行下列指令后,正确的结果是( D )。 MOV AL,81H ADD AL,AL SBB AL,AL

A.AL=01H B。AL=10H C。AL=00H D。AL=0FFH 二、填空题(每小题1分,共5分)

名词解释:请将各小题的叙述与下面的词语联系起来,,在括号内填上对应的A,B,C,D,E。

1.保存当前栈顶地址的寄存器是( D )

2.惟一代表存储空间中每个字节单元的地址是( C )。

3.能被计算机直接识别的语言是( E )。

4.记录指令操作结果的标志:OF、SF、ZF、AF、PF、CF是( A )。 5.由汇编程序在汇编过程中执行的指令是( B )。 词语:A。状态标志 B。伪指令 C。物理地址 D.SP E。机器语言

三、简答题(每小题2分,共6分) 1.已知在数据段中定义的数据如下: NAME DB ‘TOM’ DB 20

DB ‘STRING’

请指出下列指令是否正确。若不正确,错在哪里?

(1) MVO AX,NAME 答:不正确,数据类型不匹配。 (2) MOV BX,4*3

MOV SI,7 答:前两条指令正确,第三条数据类型不匹配。 MOV AX,NAME [BE][SI]

2. 下列两条语句有何区别? X EQU 1000H

Y=1000H 答:X不能多次赋值,Y可以多次赋值。 3. 有符号定义语句如下: ARRAY1 DB 3,6,9,‘123’

ARRAY2 DB 0

L EQU ARRAY2-ARRAY1 问L的值是多少? L的值为6。

四、程序分析题(每小题5分,共35分) 1.设寄存器AL=45H,BL=76H,CL=85H XOR AL,0FH AND BL,0FH OR CL,OFH

执行上述指令序列后,AL=( 4AH ),BL=(06H),CL=(8FH )。 2.下列语句执行后,AX寄存器的内容是多少? AX=1E00H ARRAY DW 10,20,30,40,50 ENTRY DW 3 ……

MOV EX,OFFSET TABLE ADD BX,ENTRY MOV AX,[BX] 3.现有程序段如下: MOV AX,01H MOV BX,02H MOV CX,03H LOP:INC AX ADD BX,AX SHR AX,1 LOOP LOP

上述程序段执行后,AX,BX寄存器的值分别是多少? AX=1,BX=8 4.已知(SP)=2000H,(SS)=5000H,(52000H)=4500H,(DS)=4000H,(BX)=1200H,则POP[BX]指令执行完后,(SP)=(1002H),(41200H)=(4500H)(一个字的内容)。 5.已知AL=35H,DL=29H 执行:

ADD AL,DL DAA

上述程序段执行后,AL=(64H),CF=(0 ) 6. 设AX=6FF8H,CF=1 MOV DX,80 XOR DH,0FFH SBB AX,DX 上述程序段执行后,(AX)=(7078 ),CF=(1 )。 7. 设:

XOR AX,0 MOV BX,1 MOV CX,10 LOP: ADD AL,BL INC BL INC BL LOOP LOP 问:

(1) 该程序完成的功能是什么? 完成的功能是求10个奇数的累加和 (2) 程序执行后(AX)=(64H )。 五、程序题(每小题6分,共12分) 1.已知数据段定义如下: DATA SEGMENT (ORG 20H) DA1 DB 12,34 DA2 DB 56,78 ADRR DW DA1,DA2 DATA ENDS

为使ADDR+2字存储单元中存入的内容为“0022H”,上述空格中应填写什么语句? 2.下列程序实现把20个字符“A”的字符串从原缓冲区伟送到目的缓冲区的功能。 DATA SEGMENT ;define data segment SOURCE_STRING DB 20 DUP(‘A’) DATA ENDS

EXTRA SEGMENT ;define extra segment DEST_STRING DB 20 DUP(?) EXTRA ENDS

CODE SEGMENT ;define code segment ASSUME CS:CODE,DS:DATA,ES:EXTRA START: MOV AX,DATA MOV DS,AX