第四章汇编语言程序设计题库.docx

上传人:b****7 文档编号:9899467 上传时间:2023-02-07 格式:DOCX 页数:47 大小:27.91KB
下载 相关 举报
第四章汇编语言程序设计题库.docx_第1页
第1页 / 共47页
第四章汇编语言程序设计题库.docx_第2页
第2页 / 共47页
第四章汇编语言程序设计题库.docx_第3页
第3页 / 共47页
第四章汇编语言程序设计题库.docx_第4页
第4页 / 共47页
第四章汇编语言程序设计题库.docx_第5页
第5页 / 共47页
点击查看更多>>
下载资源
资源描述

第四章汇编语言程序设计题库.docx

《第四章汇编语言程序设计题库.docx》由会员分享,可在线阅读,更多相关《第四章汇编语言程序设计题库.docx(47页珍藏版)》请在冰豆网上搜索。

第四章汇编语言程序设计题库.docx

第四章汇编语言程序设计题库

 

第四章汇编语言程序设计练习题

一、单项选择题(共40题)

1、关于指令MOV[BX],AX,以下叙述正确的是:

A、目的操作数是寄存器操作数

B、源操作数是内存操作数

C、目的操作数是内存操作数

D、源操作数是立即操作数

 

2、执行下列程序,设(SS)=2000H,执行后(SP)=?

MOVSP,2000H

MOVAX,1234H

PUSHAX

A.21FFEHB.20000HC.22000HD.22002H

 

3、运算型指令的寻址和转移型指令的寻址,其不同点在于

A.前者取操作数,后者决定程序的转移地址

B.后者取操作数,前者决定程序的转移地址

C.两者都是取操作数

D.两者都是决定程序的转移地址

4、MOV(),300

A、WORDPTR[DX]B、BYTEPTR[BX]C、WORDPTR[BP]D、AL

 

5、汇编语言程序代码必须位于代码段中,形成代码段物理地址的寄存器对是

A.SS:

SPB.CS:

IPC.DS:

BXD.CS:

BX

 

6、若定义DATDW'A',则(DAT)和(DAT+1)两个相邻的内存中存放的数据是()

A.0041HB.4100H

C.××41HD.4l××H

 

7、执行下面的程序段后,(AX)=()

TABDW

1,2,

3,4,5,6

ENTRY

EQU3

MOVBX,OFFSETTAB

ADDBX,ENTRT

MOVAX,[BX]

A.0003HB.0300H

C.0400HD.0004H

8、下面表示段定义结束的命令是()

A.ENDP

B.ENDS

C.ENDM

D.END

 

9、设AL、BL,中都是带符号数,当

后应选用正确的条件转移指令是()

 

AL<BL

 

时转至

 

NEXT

 

处,在

 

CMPAL

 

,BL

 

指令

 

A.JBEB.JL

C.JNAD.JNLE

 

10、指令LOOPZ它的循环执行条件是()

A.CX不等于0且ZF=0B.CX不等于0或ZF=0

C.CX不等于0且ZF=1D.CX不等于0或ZF=1

 

11、执行下列指令后,SP寄存器的值是()

MOVSP,1000H

PUSHAX

A.0FFEHB.0FFFH

C.1001HD.1002H

 

12、完成将有符号数BX的内容除以2的正确指令是()

A.SHRBX,1B.SARBX,1

C.RORBX.1D.RCRBX,1

 

13、汇编语言源程序经汇编后不能直接生成()

A.OBJ文件B.LST文件

C.EXE文件D.CRF文件

 

14、执行下列程序(AL)=()。

DATASEGMENT

TAB-DADB‘0123456789’

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

MOVBX,OFFSETTAB-DA

MOVAL,04

XLAT

A.52B.33HC.30HD.12

 

15、设BL=05H,要使结果BL=0AH,应执行的指令是()

A.N0TBLB.ANDBL,0FH

C.XORBL,0FHD.ORBL,0FH

 

16、用MOV指令将十进制数89以组合型BCD码格式送入AX,正确使用的指令是()

A.MOVAX,0089B.MDVAX,0809H

C.MDVAX,0089HD.MOVAX,0809

 

17、完成BX—CX结果送AX的错误操作是()

 

A.SUBBX,CX

MOVAX,BX

B.SUBAX,BX

SUBAX,CX

C.XCNGAX,BX

SUBAX,CX

D.MOVAX,BX

SUBAX

,CX

 

18、表示一条指令的存储单元的符号地址称()

A.标号B.变量C.偏移量

 

D.类型

 

19、变量的类型属性如下,下面错误的类型是

A.字节型B.字型

C.字符型D.双字型

 

()

 

20、现用数据定义伪指令定义数据:

BUFDB4DUP(0,2DUP(1,0));

定义后,存储单元中有数据0100H的字单元个数是()

A.4B.3C.8D.12

 

21、分析下面指令序列执行后的正确结果是()

MOVBX,OFFFCH

MOVCL,2

SARBX,CL

A.3FFFH

B.0FFFFH

C0FFFCH

D.0FFF5H

 

22、下面指令序列执行后完成的运算,正确的算术表达式应是

MOVAL,BYTEPTRX;

SHLAL,1;

DECAL;

MOVBYTEPTRY,AL;

 

 

A.y=2x+1

B.x=y2+1

C.y=2x-1

D.x=y2-1

 

23、

 

TESTVAR,55H

JZZERO

ZERO:

......

上述程序段中,当变量

满足条件转至ZERO处(

 

VAR的内容为何值时,执行

JZZERO条件转移指令后,可

A.(VAR)=0

C.VAR中第

D.VAR中第

B.(VAR)=55H

0,2,4,6位为0

l,3,5,7位为0。

 

24、交换寄存器SI、DI的内容,正确的程序段是()

A.PUSHSIB.PUSHSI

PUSHDIPUSHDI

POPSIPOPDI

POPDIPOPSI

C.MOVAX,SID.MOVAX,SI

 

25、完成41H送[2100H]、42H送[2101H]的正确程序段是

A.MOVAL,41HB.MOVSI,2100H

MOV[2100H],ALMOV[Sl],’A’

INCALINCSI

MOV[2100H],ALMOV[S1],’B’

C.MOVAX,4241HD.MOVAX,‘AB’”

MOV[2100H],AXMOV[2100H],AX

 

()

26、堆栈的工作方式是()

A.先进后出

B。

后进先出

C.先进先出

D.后进先出

27、字变量

ARRAY

 

的偏移地址

(或有效地址

)送寄存器

BX

 

的正确结果是

()

A.LEABX

C.LESBX

,ARRAY,ARRAY

B.LEABXD.MOVBX

,OFFSETARRAY

.ARRAY

28、在用汇编语言开发软件过程中,首先用编辑程序建立扩展名为

经汇编生成扩展名为(F)的目标程序文件,最后连接生成扩展名为

A.TXTB.DOSC.ASMD.EXE

()的文件,

()的可执行文件。

E.COM

F.OBJ

G.PRG

H.BAK

29、DEBUG

A.E

调试工具中,用来显示内存的命令是

B.RC.TD.D

 

30、已知

 

1000H处有一条指令

 

JNCrel

 

,其机器代码是××

 

H、73H,CF=0,试问执行该指

令后,(IP)=()

A.0FF8DHB.1073HC.0FF8BHD.1075H

 

31、执行下列程序,设

 

(SS)=2000H,执行后

 

AL中的数据在内存地址(

 

MOVSP,2000H

MOVAX,1234H

PUSHAX

A.2000HB.22000HC.21FFEHD.21FFH

32、执行下列程序,设(SS)=2000H,执行后

AH中的数据在内存地址(

MOVSP,2000H

MOVAX,1234H

PUSHAX

 

A.20000HB.21FFFHC.22000HD.21FFEH

33、INC指令不影响()标志位。

A.OFB.CFC.SFD.ZF

34、将AL中带符号数乘

10送AL,正确的程序段是(

A

.SALAL,1

B

.ADDAL,AL

MOVBL

,AL

MOVBL,AL

SALAL

,1

ADDAL,AL

SALAL

,1

ADDAL,AL

ADDAL

,BL

ADDAL,AL

C

.MOVCL,4

D

.ADDAL,AL

MOVBL

,AL

ADDAL,AL

SALAL

,CL

ADDAL,AL

ADDAL

,BL

ADDAL,AL

ADDAL,AL

35、在ADD指令中,两个操作数的物理位置不可以安排在()

A.两个主存储单元B.一个主存储单元和一个数据寄存器

C.两个数据寄存器D.一个堆栈单元和一个数据寄存器

中。

 

36、下面表示汇编源程序结束的命令是()

A.ENDPB.ENDS

C.ENDMD.END

37、在汇编语言中()用于定义常数,变量,内存空间的分配和定位.

A.伪指令B.机器指令

C.宏指令D.微指令

38、伪指令一般在()被解释。

A.程序运行时B.编译程序时

C.连接时D.编写源程序时

39、若定义DATADB0A5H,5BH,在指令MOVBX,()DATA

A.WORDB.BYTEPTR

 

中填充,使指令正确执行。

C.WORDPTR

D.OFFSET

40、若定义A.12H

DATADW1234H,执行MOVBL,BYTEPTRDATA指令后,

B.34HC.23HD.14H

(BL)

=()

 

二、填空题(共

50个空)

1、立即数一定存放在

(1)段中

2、如果在一个程序开始执行以前CS=-A7F0H,IP=2B40H试问该程序的第一个字的物理地址

2

3、已知1000H处有一条指令JNCrel,其机器代码是××H、73H,CF=0,试问执行该指

令后,(IP)=(3)

4、现有DS=2000H,BX=0100H,SI=0002H,(20100H)=12H,(20101H)=34H,(20102H)=56H,

(20103H)=78H,(21200H)=2AH,(21201H)=4CH,(21202H)=B7H,(21203H)=65H,试说明下列各条指令执行完后AX寄存器的内容。

 

(1)MOVAX,[1200H];AX=(4

(2)MOVAX,[BX];AX=(

5

(3)MOVAX,1100[BX]

;AX=(

6

(4)MOVAX,[BX][SI]

;AX=(

7

(5)MOVAX,1100[BX][SI]

;AX=(

8)

5、指示性语句的格式为

(9)

6、执行下列程序(AL)=(10)H。

DATASEGMENT

TAB-DADB‘0123456789’

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

MOVBX,OFSETTAB-DA

MOVAL,04

XLATTAB-DA

7、对于下面的数据定义:

A1DW20DUP(?

A2DB20DUP(?

A3DB‘98765432l’

MOVAX,LENGTHA1

MOVBX,LENGTHA2

MOVCX,LENGTHA3

各条指令执行后,相应寄存器的内容为:

AX=(11),BX=(12),CX=(13)

8、分析以下程序段:

SUBAX,BX

JNCL3

JNOL4

JMPSHORT

如果AX和BX的内容给定如下:

AXBX

(1)147B80DC

(2)D0239FD0

(3)94B7B568

该程序执行后,程序转向(14);(15);(16)。

 

9、执行下列程序段,

MOVSP,2000H

MOVAX,0F0H

MOVSI,1234H

MOVDX,5678H

PUSHSI

POPDI

 

SHLDX,1

TESTAX,DX

PUSHDX

 

SP=(17);

 

10、执行下列程序段:

MOVSP,2000H

MOVAX,0F0H

MOVSI,1234H

MOVDX,5678H

PUSHSI

POPDI

SHLDX,1

TESTAX,DX

PUSHDX

 

DH内容所在内存的偏移地址为(18);

 

11、有下列数据定义语句:

DATASEGMENT

ADDRDWNUMBER

NUMBERDB10

ARRAYDB5DUP(0)

TABLEDDRT1,RT2;(RT1,RT2是标号)

DATAENDS

则变量ADDR中存储的内容是(19),变量TABLE占用(20)个字节

12、根据下面的指令序列,CX寄存器中的值应该是(21)。

SHR1DW'AB'

SHR2DB16DUP(?

CNTEQU$-STR1

MOVCX,CNT

13、执行下列指令后:

MOVAX,1234H

MOVCL,4

ROLAX,CL

DECAX

MOVCX,4

MULCX

 

寄存器AH的值是(22),寄存器AL的值是(23).

 

14、对于下面的数据定义,指令执行后,AX=(24)、BX=(25)、CX=(26)、DX=(27)、SI=

 

(28)

TABLE1DB?

TABLE2DW20DUP(?

TABLE3DB‘ABCD’

MOVAX,TYPETABLE1

MOVBX,TYPETABLE2

MOVCX,LENGTHTABLE2

MOVDX,SIZETABLE2

MOVSI,LENGTHTABLE3

 

15、执行下列程序:

MOVAX,0

MOVBX,1

MOVCX,100

A:

ADDAX,BX

INCBX

LOOPA

HLT

执行后的结果为(BX)=(29),(AX)=(30)。

 

16、若定义VARDB2DUP(1,2,2DUP(3),2DUP

(1)),则在VAL存储区内前

5个单元的

数据是(31)。

17、完成输出显示一个字符的

DOSint21h系统功能调用是(

32

)号。

18、执行返回指令,退出中断服务程序,这时返回地址来自(

33

 

19、已知:

(AX)=0202H、(ES)=2000H、(BX)=3000H、(SI)=2060H、(25060H)=00B0H,执行指令XCHGAX,ES:

[BX+SI],则AX=(34),(25060H)=(35)

 

20、下列程序段执行后,寄存器AX=(36),BX=(37)和CX=(38)的内容分别是多少?

ORG0202H

DA_WORDDW20H

MOVAX,DA_WORD

MOVBX,OFFSETDA_WORD

MOVCL,BYTEPTRDA_WORD

MOVCH,TYPEDA_WORD

 

21、假设数据段的定义如下:

P1DW?

P2DB32DUP(?

PLENTHEQU$-P1

试问PLENTH的值为(39)它表示的意义是(40)

 

22、假设BX=54A3H,变量VLAUE中存放的内容为

68H,确定下列各条指令单独执行

BX的值。

(1)XORBX,VALUE;BX=(41)

(2)ORBX,VALUE

;BX=(42)

(3)ANDBX,00H

;BX=(43)

(4)SUBBX,VALUE;BX=(44)

(5)XORBX,0FFH

;BX=(45)

(6)TESTBX,01H

;BX=(46)

23、请用DEBUG调试软件的反汇编命令,反汇编在从2060:

100H开始的长度为

8字节的程序

段,该命令为(

47)。

24、查看内存数据段中偏移地址为

1000H的内容,DEBUG调试命令为(

48)

25、在DEBUG调试命令中,N命令是的功能是(

49),L命令的功能是(

50)。

三、判断题(共30题)

1、8086/8088

微处理器有

14个16位寄存器

2、8086/8088

微处理器的

14个16

位寄存器每个都可分成

2个8位的寄存器

3、8086/8088

微处理器的8

个16位的通用寄存器可分为:

4个数据寄存器、

2个指针寄存

器、2个变址寄存器

4、SUB指令和CMP指令的功能相同。

5、MOVAX,0与XORAX,AX功能相同。

6、SHL和SAL指令功能相同。

7、MOVAX,0FFFFH

INCAX以上两条指令执行后CF=1。

8、有以下定义的数据段,判断该数据段定义下的指令序列正误:

DATASEGMENT

STR1DB1,2,3,4,5

STR2DB‘12345’

COUNTEQU20

NUMBDB3DUP(6)

NUMWDW20H,80H

TABLEDW0

DATAENDS

 

MOVAX,STR1

9、数据定义同第8题,判断该数据段定义下的指令序列正误

MOVBX,OFFSETNUMB

MOV[BX],’+’

10、数据定义同第8题,判断该数据段定义下的指令序列正误

MOVDL,NUMW+2

11、数据定义同第8题,判断该数据段定义下的指令序列正误

MOVBX,OFFSETSTR1

MOVDH,BX+3

12、数据定义同第8题,判断该数据段定义下的指令序列正误

INCCOUNT

13、数据定义同第8题,判断该数据段定义下的指令序列正误

 

MOVSTR1,STR2

14、数据定义同第8题,判断该数据段定义下的指令序列正误

MOVAX,NUMW+2

MOVDX,0

DIVNUMW

15、数据定义如下,指出指令的正误:

ORG100H

DATADB20

DW30

DD40

MOVBX,OFFSETDATA

MOVAL,[BX+5]

16、数据定义同15题,指令正误:

MOVAX,DATA

17、数据定义同15题,指令正误:

MOVAX,WORDPTRDATA+1

18、数据定义同15题,指令正误:

MOVAX,DATA[BX][SI]

19、数据定义同15题,指令正误:

MOVBX,OFFSETDATA[BX][SI]

20、数据定义同15题,指令正误:

LEAAX,DATA[BX][SI]

MOVAL,[AX]

21、数据定义如下,指出指令的正误:

AEQU500

BDB?

CDW64HMOVA,AX

22、数据定义如21题,指出指令的正误:

MOVB,AX

23、数据定义如21题,指出指令的正误:

CMPC,AL

24、数据定义如21题,指出指令的正误:

CMPB,C

25、符号及变量定义如下,指出指令的正误:

26、指出指令正误:

SALCL,5

27、指出指令正误:

JMPEND

28、指出指令正误:

JNABNEXT

29、指出指令正误:

LOOPA5

30、指出指令正误:

ADDAX,[BX][BP]

四、简答题(共20题)

1、简述汇编语言程序的开发过程。

2、内存操作数有哪几种寻址方式?

用MOV指令的源操作数举例进行说明。

3、简述汇编语言、高级语言、机器语言的区别。

 

4、简述汇编语言的指令语句和伪指令语句的区别。

5、汇编语言的标号代表什么?

有哪三种属性?

6、汇编语言中变量的用哪条伪指令进行定义?

有哪三种属性?

7、已知有如下定义的数据段:

DATASEGMENT

ORG0100H

TABLEDW0FF00H

DATAENDS

试分别分析以下两条指令的执行结果?

并指出区别。

8、有如下定义的变量:

DATASEGMENT

ARRAYDW1000H,2000H,3000H,4000H,5000H

BUFDW?

DATAENDS

请分别完成以下操作:

将ARRAY的偏移地址送BX;将ARRAY的第一字节把内容送AL;

 

9、已知某数据段中有

COUNT1EQU16H

COUNT2DW16H

下面两条指令有何异同点:

MOVAX,COUNT1

MOVBX

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 动物植物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1