中国石油大学(北京)-《汇编语言程序设计》

一、选择题 (143分)

1、

用于指针及变址寄存器的有()。

A、

AX,BX,CX,DX

B、

SP,BP,IP

C、

CS,DS, SS

D、

PSW

正确答案:

B

2、

完成把汇编语言源程序模块转换为目标模块的程序是()。

A、

编辑程序

B、

汇编程序

C、

连接程序

D、

调试程序

正确答案:

B

3、

指令JMP FAR PTR DONE中的寻址方式属于()。

A、

段内转移直接寻址

B、

段内转移间接寻址

C、

段间转移直接寻址

D、

段间转移间接寻址

正确答案:

 

4、

对于下列程序段:

AGAIN:MOV AL,[SI]

MOV ES:[DI],AL

INC SI

INC DI

LOOP AGAIN

也可用()指令完成同样的功能。

A、

REP MOVSB

B、

REP LODSB

C、

REP STOSB

D、

REPE SCASB

正确答案:

 

5、

在汇编语言程序的开发过程中使用宏功能的顺序是()。

A、

宏定义,宏调用

B、

宏定义,宏展开

C、

宏定义,宏调用,宏展开

D、

宏定义,宏展开,宏调用

正确答案:

 

6、

在程序执行过程中,IP寄存器中始终保存的是()。

A、

上一条指令的首地址

B、

下一条指令的首地址

C、

正在执行指令的首地址

D、

需计算有效地址后才能确定地址

正确答案:

 

7、

AND、OR、XOR、NOT为四条逻辑运算指令,下面解释正确的是()。

A、

指令XOR AX,AX执行后,AX内容不变,但设置了标志位

B、

指令OR DX,1000H执行后,将DX最高位置1,其余各位置0

C、

指令AND AX,OFH执行后,分离出AL低四位

D、

NOT AX,执行后,将AX清0

正确答案:

 

8、

CPU要访问的某一存储单元的实际地址称()。

A、

段地址

B、

偏移地址

C、

物理地址

D、

逻辑地址

正确答案:

 

9、

检查两个无符号数的关系,若要实现AL≥BL时分支去LOP1处,那么在“CMP AL,BL”指令后应跟的分支指令是()。

A、

JE LOP1

B、

JAE LOP1

C、

JC LOP1

D、

JGE LOP1

正确答案:

 

10、

已知变量VAR为字型,则TYPEVAR=()。

A、

1   

B、

2   

C、

3

D、

4

正确答案:

 

11、

完成对CL寄存器的内容乘以2的正确操作是()。

A、

ROL CL,1

B、

MUL 2

C、

SHL CL,1

D、

SHR CL,1

正确答案:

 

12、

假设VAR为变量,指令MOV BX,OFFSET VAR中源操作数的寻址方式是()。

A、

直接寻址

B、

间接寻址

C、

立即寻址

D、

存储器寻址

正确答案:

 

13、

在下列指令中,有语法错误的是()。

A、

MOV [SI],[DI]

B、

IN AL,DX

C、

JMP WORD PTR[BX]

D、

PUSH WORD PTR 20[BX+SI-2]

正确答案:

 

14、

汇编语言语句格式中的名字项,下列哪一个不正确?()

A、

FFFFFH

B、

@Variable

C、

3FFFFH

D、

Third_street

正确答案:

 

15、

下列语句中能实现留空8个字节单元的语句是()

A、

DA1 DT ?

B、

DA2 DW ?,?

C、

DA3DD ?

D、

DA4DQ ?

正确答案:

 

16、

下列指令中,先执行CX-1赋给CX操作,然后再根据CX的值决定是否转移、循环或进行重复操作的指令是()。

A、

JNC

B、

REP

C、

JCXZ

D、

LOOP

正确答案:

 

17、

当使用BP作编程地址时,此时使用的段寄存器是()。

A、

CS

B、

DS

C、

ES

D、

SS

正确答案:

 

18、

设,它们之间的关系是()。

A、

A>B>C

B、

A

C、

A=B=C

D、

A

正确答案:

 

19、

用一条指令实现将寄存器BX和SI中的内容相加,结果送入AX中,这条指令是()。

A、

ADD AX,[SI][BX]

B、

MOV AX,[BX+SI]

C、

AND AX,[BX+SI]

D、

LEA AX,[BX][SI]

正确答案:

 

20、

一般的外部设备接口电路中的状态寄存器是用来存放外设或接口电路的()信息。

A、

数据

B、

控制

C、

状态

D、

前三者

正确答案:

 

21、

执行下述指令序列后,AX的内容是()。

MOVCX,5

MOVAX,50

NEXT: SUBAX,CX

LOOPNEXT

A、

65

B、

55

C、

35

D、

25

正确答案:

 

22、

有宏定义如下:

FUNCTIONMACROP1,P2,P3

MOVAX,P1

P2P3

ENDM

若有宏调用语句 FUNCTION 100,DEC,AX

则寄存器AX的内容为()。

A、

100

B、

99

C、

101

D、

0

正确答案:

 

23、

执行下述指令序列后,CL的内容是()。

STR1DW‘AB’

STR2DB 16 DUP(?)

CONTEQU $-STR1

MOV CX,CONT

A、

12H

B、

0EH

C、

0FH

D、

10H

正确答案:

 

24、

执行下述指令序列后,AX的内容是()。

TABDB1,2,3,4,5,6

ENTRYEQU3

MOVBX,OFFSETTAB

ADDBX,ENTRY

MOVAX,WORD PTR [BX]

A、

0203H

B、

0302H

C、

0405H

D、

0504H

正确答案:

 

学生答案:

25、

下列叙述正确的是()。

A、

对两个无符号数进行比较采用CMP指令,对两个有符号数比较用CMPS指令

B、

对两个无符号数进行比较采用CMPS指令,对两个有符号数比较用CMP指令

C、

对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/JNL指令

D、

对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/JNB指令

正确答案:

C

26、

在寄存器间接寻址方式下,可存放操作数有效地址的寄存器有()。

A、

AX,BX,CX,DX

B、

SP,BX,SI,DI

C、

CS,DS,ES,SS

D、

BX,BP,SI,DI

正确答案:

 

27、

下面指令序列执行后,所完成运算的正确算术表达式应是()。

MOV AL,BYTE PTR X

SHL AL,1

DEC AL

MOV BYTE PTR Y,AL

A、

Y=2X+1

B、

X=2Y+1

C、

X=2Y-1

D、

Y=2X-1

正确答案:

 

28、

下列指令执行时出错的是()。

A、

ADD BUF1,BUF2

B、

JMP DWORD PTR DAT [BX]

C、

MOV AX,[BX+DI] NUM

D、

TEST AL,08H

正确答案:

 

29、

8086处理器在基址变址的寻址方式中,变址寄存器可以为()。

A、

BX或CX

B、

CX或SI

C、

DX或SI

D、

SI或DI

正确答案:

 

30、

无论BH中原有的数是奇数或偶数,若要使BH中的数一定为奇数,应执行的指令是( )。

A、

ADD BH,01H

B、

OR BH,01H

C、

XOR BH,01H

D、

TEST BH,01H

正确答案:

 

31、

执行后使BX=0的同时也使CF=0,OF=0的指令是()。

A、

XOR BX,BX

B、

OR BX,BX

C、

AND BX,BX

D、

CMP BX,BX

正确答案:

 

32、

循环指令LOOPNZ重复执行循环的条件是()。

A、

CX=0,且ZF=0

B、

CX=0,或ZF=1

C、

CX≠0,且ZF=0

D、

CX≠0,或ZF=1

正确答案:

 

33、

执行下述指令序列:

MOV SP,3210H

PUSH AX

SP寄存器的最终值是()。

A、

3211H

B、

320EH

C、

320FH

D、

3212H

正确答案:

 

34、

CPU发出的访问存储器的地址是()。

A、

物理地址

B、

偏移地址

C、

逻辑地址

D、

段地址

正确答案:

 

35、

比较两个带符号的数A、B,当A=B时程序转移,测试的条件为()。

A、

ZF=1

B、

ZF=0

C、

SF=1

D、

SF=0

正确答案:

A

36、

计算机的软件系统一般分为()两大部分。

A、

系统软件和应用软件

B、

操作系统和计算机语言

C、

程序和数据

D、

DOS和Windows

正确答案:

 

37、

定义双字变量的定义符是()。

A、

DW

B、

DQ

C、

DD

D、

DT

正确答案:

C

38、

8086CPU中断号为8的中断向量存放在()。

A、

0FFFFH:0008H

B、

0000H:0008H

C、

0000H:0020H

D、

0020H:0000H

正确答案:

 

39、

段定义语句以()语句结束。

A、

END

B、

ENDS

C、

ENDP

D、

ENDM

正确答案:

B

40、

DOS系统功能调用中,将子程序编号送入()寄存器。

A、

AH

B、

AL

C、

BH

D、

BL

正确答案:

A

41、

在“先判断后工作”的循环程序结构中,循环执行的次数最少是()。

A、

1

B、

0

C、

2

D、

不确定

正确答案:

 

42、

用MOV指令将十进制数89以非压缩BCD码格式存入AX,可使用的指令是()

A、

MOV AX,89

B、

MOV AX,0809   

C、

MOV AX,89H

D、

MOV AX,0809H

正确答案:

 

43、

指令SCAS的寻址方式是()。

A、

源操作数为寄存器寻址,目的操作数为寄存器间接寻址

B、

源操作数为寄存器间接寻址,目的操作数为寄存器间接寻址

C、

源操作数为寄存器间接寻址,目的操作数为寄存器寻址

D、

源操作数为寄存器寻址,目的操作数为寄存器寻址

正确答案:

 

44、

在计算机中表示地址时使用()。

A、

无符号数

B、

原码

C、

反码

D、

以上都不对

正确答案:

 

45、

执行下述指令后,寄存器AL的值是()。

MOVAX, 1234H

MOVCL, 4

ROLAX, CL

DECAX

MOVCX, 4

MULCX

A、

60H

B、

00H

C、

04H

D、

08DH

正确答案:

 

46、

下述指令序列的功能是()。

BEGIN:LEA BX,BUFFER

XORAL,AL

MOVCL,64H

REPEAT:MOV BYTE PTR[BX],AL

INC BX

DEC CL

JNZ REPEAT

A、

将长度为64H个字节的缓冲区清零

B、

将长度为64个字节的缓冲区清零

C、

为长度为64H个字节的缓冲区赋初值64H   

D、

为长度为64个字节的缓冲区赋初值64

正确答案:

 

47、

执行下述指令序列后,CX的内容是()。

DAT1DB 12H,34H,56H

N=$-DAT1

MOVCX,N

A、

2

B、

3

C、

4

D、

5

正确答案:

 

48、

执行下述指令序列后,BX的内容是()。

MOVCL, 3

MOVBX, 0B7H

ROLBX, 1

RORBX, CL

A、

002DH

B、

00EDH

C、

C02DH

D、

000DH

正确答案:

 

49、

已知BX=2000H,SI=1234H,则指令MOV AX,[BX+SI+2]的源操作在()中。

A、

数据段中偏移量为3236H的字

B、

附加段中偏移量为3234H的字

C、

数据段中偏移量为3234H的字

D、

附加段中偏移量为3236H的字

正确答案:

 

学生答案:

50、

选出所有格式正确的移位指令()。

A、

SHLBX,CX

B、

SHL BX,CH

C、

ROL AX,CL

D、

ROR CL,AX

正确答案:

 

51、

已知:X=00FFH,Y=0AAAAH,则()。

A、

X∧Y=00AA0H

B、

X∨Y=0AAFBH

C、

X∧Y=00AAH

D、

X∧Y=0ABCDH

正确答案:

 

52、

下列指令中错误指令为()。

A、

MOV CS,AX

B、

PUSH AX

C、

XOR AX,AX

D、

MOV AX,BX

正确答案:

A

53、

与MOV BX,OFFSET VAR指令完全等效的指令是()。

A、

MOV BX,VAR

B、

LDS BX,VAR

C、

LES BX,VAR

D、

LEA BX,VAR

正确答案:

 

54、

在下列指令中,()指令的执行会影响条件码中的CF位。

A、

JMP NEXT

B、

JC NEXT

C、

INC BX

D、

SHL AX,1

正确答案:

 

55、

在一段汇编程序中多次调用另一段程序,用宏指令与用子程序实现相比()。

A、

占内存空间小,但速度慢

B、

占内存空间大,但速度快

C、

占内存空间相同,速度快

D、

占内存空间相同,速度慢

正确答案:

 

学生答案:

56、

将DX的内容除以2,正确的指令是()。

A、

DIV 2

B、

DIV DX,2

C、

SAR DX,1

D、

SHL DX,1

正确答案:

 

57、

汇编语言源程序中,每个语句由四项组成,如语句要完成一定功能,那么该语句中不可省略的项是()。

A、

名字项

B、

操作项

C、

操作数项

D、

注释项

正确答案:

 

58、

某存储单元的物理地址是12345H,可以作为它的段地址有()。

A、

2345H   

B、

12345H

C、

12340H

D、

1234H

正确答案:

 

59、

在执行下列指令时,需要使用段寄存器DS的指令是()。

A、

STOSW

B、

ADD AL,CL

C、

NEG BX

D、

INC DA[BX]

正确答案:

 

60、

REPZ CMPSW指令,重复执行的终止条件是()。

A、

CX=0或ZF=0

B、

CX=0且ZF=0

C、

CX=0或ZF=1

D、

CX=0且ZF=1

正确答案:

 

61、

汇编语言源程序经MASM汇编后可直接生成文件的后缀是()。

A、

EXE

B、

OBJ

C、

ASM

D、

MAP

正确答案:

 

62、

假设V1和V2是用DW定义的变量,下列指令中正确的是:()。

A、

MOV V1,20H

B、

MOV V1,V2

C、

MOV AL,V1

D、

MOV 2000H,V2

正确答案:

 

63、

在下列串操作指令中,同时使用源串和目的串地址指针的指令是()。

A、

STOSW

B、

LODSW

C、

SCASW

D、

CMPSW

正确答案:

 

64、

BUF DW 10H DUP(3 DUP(2,10H),3,5)

上述语句汇编后,为变量BUF分配的存储单元字节数是()。

A、

80H

B、

100H

C、

124

D、

192

正确答案:

 

65、

下列指令中不合法的指令是()。

A、

INAX,03F8H

B、

MOVBX,AX

C、

REPCMPSB

D、

SHRBX,CL

正确答案:

A

66、

循环程序的基本结构形式不包括下面哪一部分?()

A、

循环参数置初值部分

B、

循环工作部分

C、

循环控制部分

D、

设置段寄存器部分

正确答案:

 

67、

中央处理器CPU是由()组成的。

A、

运算器

B、

控制器

C、

寄存器组

D、

前三者

正确答案:

 

68、

设DF=1,每次执行CMPSW指令时,SI和DI均要分别()。

A、

减1

B、

减2

C、

加1

D、

加2

正确答案:

B

69、

已知:BX=4567H,执行下述指令序列后,BX的内容是()。

NEG BX

INC BX

NEG BX

DEC BX

A、

4565H

B、

4566H

C、

4567H

D、

4568H

正确答案:

 

70、

执行下述指令序列后,BX的内容是()。

MOV BX,0FFFCH

MOV CL,2

SAR BX,CL

A、

3FFFH

B、

0FFFFH

C、

0FFFCH

D、

0FFF5H

正确答案:

B

71、

下述指令序列的功能是()。

STRING DB 100 DUP(?)

......

MOV AX,SEG STRING

MOV DS,AX

LEA SI,STRING

MOV CX,100

LAB:MOV AL,[SI]

CMP AL,’a’

JB LAB1

CMP AL,’z’

JA LAB1

SUB AL,32

MOV [SI],AL

LAB1:INC SI

LOOP LAB

A、

将STRING中的大写字母转换成相应的小写字母

B、

将STRING中的小写字母转换成相应的大写字母

C、

把STRING中小写字母的ASCII码值累加在一起

D、

把STRING中大写字母的ASCII码值累加在一起

正确答案:

 

72、

执行下述指令序列后,AX的内容是()。

MOV AX,0

MOV BX,1

MOV CX,100

LOOP1:ADD AX,BX

INC BX

LOOP LOOP1

A、

5000

B、

5050

C、

5100

D、

5150

正确答案:

 

二、简答题 (120分)

73、

用汇编语言编程:字节数组X中存放着 0~F共16个十六进制数,请将这些数以十六进制形式显示在屏幕上。

正确答案:

data segment

x db 0,1,2,3,4,5,6,7,8,9,0ah,0bh,0ch,0dh,0eh,0fh

data ends

code segment

assumecs:code,ds:data

mainproc far

start:

movax,data

movds,ax

mov cx,16

mov si,0

L1: movdl,x[si]

add dl,30h

cmp dl,39h

jbe L2

add dl,7

L2:mov ah,02h

int 21h

incsi

loop L1

mov ax,4c00h

int 21h

mainendp

code ends

end start

74、

用汇编语言编程:统计一个16位二进制数中1的个数,并将结果输出。

 

95分答案,想了解的加我weixin吧:ichenfu

 

你可能感兴趣的:(中国石油大学(北京)-《汇编语言程序设计》)