汇编语言程序设计.docx

上传人:b****1 文档编号:2673648 上传时间:2023-05-04 格式:DOCX 页数:28 大小:29.49KB
下载 相关 举报
汇编语言程序设计.docx_第1页
第1页 / 共28页
汇编语言程序设计.docx_第2页
第2页 / 共28页
汇编语言程序设计.docx_第3页
第3页 / 共28页
汇编语言程序设计.docx_第4页
第4页 / 共28页
汇编语言程序设计.docx_第5页
第5页 / 共28页
汇编语言程序设计.docx_第6页
第6页 / 共28页
汇编语言程序设计.docx_第7页
第7页 / 共28页
汇编语言程序设计.docx_第8页
第8页 / 共28页
汇编语言程序设计.docx_第9页
第9页 / 共28页
汇编语言程序设计.docx_第10页
第10页 / 共28页
汇编语言程序设计.docx_第11页
第11页 / 共28页
汇编语言程序设计.docx_第12页
第12页 / 共28页
汇编语言程序设计.docx_第13页
第13页 / 共28页
汇编语言程序设计.docx_第14页
第14页 / 共28页
汇编语言程序设计.docx_第15页
第15页 / 共28页
汇编语言程序设计.docx_第16页
第16页 / 共28页
汇编语言程序设计.docx_第17页
第17页 / 共28页
汇编语言程序设计.docx_第18页
第18页 / 共28页
汇编语言程序设计.docx_第19页
第19页 / 共28页
汇编语言程序设计.docx_第20页
第20页 / 共28页
亲,该文档总共28页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

汇编语言程序设计.docx

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

汇编语言程序设计.docx

汇编语言程序设计

"汇编语言程序设计"习题答案

一、单项选择题〔本大题共170小题,每题2分〕

1、在汇编语言程序中,对END语句的表达正确的选项是〔C〕。

A、END语句是一可执行语句

B、END语句表示程序执行到此完毕

C、END语句表示源程序到此完毕

D、END语句在汇编后要产生机器码

2、将D*的内容除以2,正确的指令是〔C〕

A、DIV2B、DIVD*,2

C、SARD*,1D、SHLD*,1

3、以下数值表达式和地址表达式中,错误的选项是〔D〕。

A、MOVAL,8*14+4B、MOVSI,OFFSETBUF+13

C、MOVC*,NUM2-NUM1D、MOVC*,NUM2+NUM1

4、用来存放下一条将要执行的指令地址的存放器是(B)

A、SPB、IPC、BPD、CS

5、要使串处理从低地址向高地址进展,应把标志位置为(D)

A、IF=1B、TF=0C、DF=1D、DF=0

6、设SS=2050H,SP=0140H,则栈顶存贮单元的物理地址是(A)

A、20640HB、2063EH

C、2063FHD、21900H

7、十进制数269变换为十六进制数是〔C〕。

A、10BB、10CC、10DD、10E

8、8位的微型计算机系统是以16位来表示地址,则该微机系统有〔C〕个地址空间。

A、255B、65535C、65536D、1048576

9、8位有符号二进制数能表示的最大十进制数是〔D〕。

A、256B、255C、128D、127

10、十六进制数88H,可表示成下面几种形式,请找出错误的表示〔D〕。

A、无符号十进制数136B、带符号十进制数-120

C、压缩型BCD十进制数88D、8位二进制数-8的补码表示

11、有一个数值152,它与十六进制数6A相等,则该数值是〔B〕。

A、二进制数B、八进制数C、十进制数D、四进制数

12、7位ASCII总共可表示〔C〕个符号。

A、256B、127C、128D、255

13、使用DOS功能调用时,子程序编号应放在(B)

A、ALB、AH

C、A*D、任意指定

14、没有语法错误的输出指令是(B)P76

A、OUTA*,30HB、OUTD*,AL

C、OUTAL,D*D、OUT30H,AH

15、用MOV指令将十进制数89以非压缩BCD码格式送入A*,可使用的指令是(B)

A、MOVA*,89B、MOVA*,0809H

C、MOVA*,89HD、MOVA*,0809

16、设A*=8765H,D*=4321H,执行CWD指令后,D*中的内容是(B)P117

A、4321HB、0FFFFH

C、8000HD、0001H

17、设CL=05H,要获得CL=0AH,可选用的指令是(A)

A、*ORCL,0FHB、NOTCL

C、ORCL,0AHD、ANDCL,0FH

18、使状态标志位CF清零的错误指令是(C)

A、ORA*,A*B、SUBA*,A*

C、MOVCF,0D、CLC

19、设SP=1110H,执行PUSHA*指令后,SP的内容为(B)

A、SP=1112HB、SP=110EHC、SP=1111HD、SP=110FH

20、汇编源程序出现语法错误的指令有(D)

A、MOV[B*+SI],ALB、MOVA*,[BP+DI]

C、MOVDS,A*D、MOVCS,A*

21、当执行指令ADDA*,B*后,假设A*的内容为2BA0H,设置的奇偶标志位PF=1,下面的表达正确的选项是〔D〕

A、表示结果中含1的个数为偶数

B、表示结果中含1的个数为奇数

C、表示该数为偶数

D、表示结果中低八位含1的个数为偶数

22、下面指令中,合理而有意义的指令是〔D〕

A、REPLODSBB、REPSCASBC、REPCMPSBD、REPMOVSB

23、在以下串操作指令中,同时使用源串和目的串地址指针的指令是〔D〕

A、STOSWB、LODSWC、SCASWD、CMPSW

24、4B的字长是〔C〕。

A、8位B、16位C、32位D、64位

25、8086∕8088CPU中可用作存放器间址的存放器是〔B〕。

A、B*、SI、DIB、B*、BP、SI、DI

C、B*、IP、SI、DID、B*,D*,SI,DI

26、指令mov100[si][bp],a*目标操作数的隐含段为〔B〕。

A、数据段B、堆栈段C、代码段D、附加段

27、AL,B*为无符号数,计算AL×B*的乘积,使用下述程序段〔C〕

A、MULB*B、IMULB*C、MOVAH,0D、CBW

MULB*MULB*

28、假设执行ADD指令后AL=8CH,再执行DAA指令,AL中的值是(A)

A、92HB、0104H

C、74HD、8CH

29、MOVAL,79H

ADDAL,B1H

上面指令执行后,设置的标志位CF和ZF的值是(D)

A、CF=0,ZF=1B、CF=l,ZF=1

C、CF=0,ZF=0D、CF=1,ZF=0

30、TESTDL,55HP123

JZNE*T

NE*T:

……

上述程序段,执行JZ指令时能产生转移的情况是(D)

A、DL>55HB、DL<55H

C、DL=55HD、DL中第0、2、4、6位均为0

31、假设AL=28H,执行ROLAL,1指令之后的情况是(D)P125

A、AL=14H,CF=1B、AL=50H,CF=1

C、AL=14H,CF=0D、AL=50H,CF=0

32、当执行指令ADDA*,B*后,假设A*的内容为2BA0H,设置的奇偶标志位PF=1,下面的表达正确的选项是〔A〕。

A、表示结果中含1的个数为偶数B、表示结果中含1的个数为奇数

C、表示该数为偶数D、表示结果中低八位含1的个数为偶数

33、设AH=0,AL=06H,BL=09H,执行以下两条指令之后,其结果应是〔A〕。

ADDAL,BL

AAA

A、AH=01,AL=05B、AH=1,AL=15

C、AH=0,AL=0FHD、AH=0,AL=05

34、设AL=0B4H,BL=11H,指令"MULBL〞和指令"IMULBL〞分别执行后OF,CF的值为〔B〕。

A、OF=1,CF=0B、OF=1,CF=1

C、OF=0,CF=0D、OF=0,CF=1

35、当执行完以下两条指令后,标志位CF和SF的值为〔D〕。

MOVAL,0C4H

ADDAL,9DH

A、0,0B、1,1C、0,1D、1,0

36、98的BCD码是〔B〕

A、10011001B、10011000C、10011010D、10001010

37、–0110110的补码是(A)

A、11001010B、11001001C、10110110D、00110110

38、十进制数92对应的二进制数为(A)

A、01011100B、01011101C、11011100D、11000101

39、假定A*的内容为-32768,在执行了指令NEGAH后,标志位〔SF,OF〕为〔D〕。

A、0,0B、0,1C、1,0D、1,1

40、当A≥B时转移的条件转移指令为〔A,B为带符号数〕〔D〕。

A、JAB、JAEC、JGD、JGE

41、*,Y为带符号数,两个数比拟后,欲判断*≤Y发生转移,应使用〔C〕指令。

A、EB、JLC、JNGD、JNA

42、假定A*和B*存放器中存放的是有符号整数,如果A*>B*则转移到LABEL,应采用下面哪一条指令序列.〔D〕。

A、SUBA*,B*B、SUBA*,B*

JCLABELJNCLABEL

C、CMPA*,B*D、CMPA*,B*

JALABELJGLABEL

43、A*=8078H,B*=5610H,指令CMPBL,AH执行后OF,CF的值为〔D〕

A、0,0B、0,1C、1,0D、1,1

44、十六进制38H相应的十进制数是(B)

A、32B、56C、58D、60

45、AL=0AH,以下指令执行后能使AL=05H的是〔C〕。

A、NOTALB、ANDAL,0FHC、*ORAL,0FHD、ORAL,0FH

46、以下串操作指令中,必须同时指明源串和目的串地址的指令是(D)

A、STOSWB、LODSWC、SCASWD、CMPSW

47、设BL中有一无符号数,实现把BL中的数乘以2,应选用的指令是(B)

A、SHRBL,1B、SHLBL,1

C、SARBL,1D、RCRBL,1

48、运算器的主要功能是进展(C)

A、逻辑运算B、算术运算C、逻辑运算与算术运算D、初等函数的运算

49、以下不能做输入的是〔C〕

A、键盘B、扫描仪C、打印机D、鼠标

50、在汇编以下条件转移指令中,两条指令功能不一样的是〔D〕。

A、JZ与JEB、JC与C、JA与JNBED、JP与JS

51、循环指令LOOPNZ终止循环的条件是〔B〕。

A、C*=0,且ZF=0B、C*=0,或ZF=1

C、C*<>0,且ZF=0D、C*<>0,或ZF=1

52、在循环次数的情况下,采用哪种方法控制循环程序最方便〔A〕。

A、计数法B、条件控制法

53、循环控制指令隐含指定哪个存放器作为循环计数器〔B〕。

A、CLB、C*C、ALD、A*

54、完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是〔A〕。

A、MOVAL,00HB、ANDAL,00H

C、*ORAL,ALD、SUBAL,AL

55、8086状态字PSW中表示进位的标志位是〔B〕

A、ZFB、CFC、PFD、OF

56、8086状态字PSW中表示运算结果为零的标志位是〔A〕

A、ZFB、CFC、PFD、OF

57、将一个字数据入栈〔PUSHA*〕,栈指针如何变化〔A〕

A、SP<-SP-2B、SP<-SP-1C、SP<-SP+2D、SP<-SP+1

58、将一个字节数据入栈〔PUSHAL〕,栈指针如何变化〔B〕

A、SP<-SP-2B、SP<-SP-1C、SP<-SP+2D、SP<-SP+1

59、从键盘输入的字符,在计算机内存储的是它的〔A〕

A、二进制编码B、四进制编码C、八进制编码D、十六进制编码

60、执行PUSHA*指令的正确步骤是(A)

A、1.SP←SP-1,(SP)←AHB、1.(SP)←AH,SP←SP-1

2.SP←SP-1,(SP)←AL2.(SP)←AL,SP←SP-1

C、1.SP←SP+1,(SP)←AHD、1.(SP)←AH,SP←SP+1

2.SP←SP+1,(SP)←AL2.(SP)←AL,SP←SP+1

61、CF=1时转移到目标地址的条件转移指令是(B)

A、JNCB、JCC、JZD、JS

62、下面的数据传送指令中,错误的操作是〔D〕。

A、MOVSS:

[B*+DI],1000HB、MOVD*,1000H

C、MOVWORDPTR[B*],1000HD、MOVDS,2000H

63、*存储单元的物理地址是12345H,可以作为它的段地址有〔D〕

A、2345HB、12345HC、12340HD、1234H

64、6位无符号二进制数能表示的最大十进制数是〔B〕。

A、64B、63C、32D、31

65、以下四个存放器中,哪个存放器在程序设计中是不可省略的〔A〕。

A、CSB、DSC、ESD、SS

66、以下指令执行后总是使CF=0,OF=0的是〔A〕。

A、ANDB、NEGC、NOTD、INC

67、假设〔A*〕=10101101B,为了使其内容变为01010010B,以下(A)指令执行一次即可完成此操作.

A、NOT指令B、OR指令C、AND指令D、*OR指令

68、宏指令库以〔C〕格式存放在磁盘上。

A、可执行代码B、目标代码C、源代码

69、指出该条指令的寻址方式MOVA*,[DI]〔C〕

A、立即寻址B、存放器寻址C、存放器间接寻址D、直接寻址

70、CPU处理动作的最小单位是〔B〕

A、指令周期B、时钟周期C、总线周期D、机器周期

71、设B*=1234H,DS=2000H,(21234H)=5678H,则指令"LEASI,[B*]〞执行后的结果是〔B〕

A、SI=5678HB、SI=1234H

C、SI=2000HD、SI=3234H

72、设B*=1234H,DS=2000H,(21234H)=5678H,则指令"MOVSI,[B*]〞执行后的结果是〔A〕

A、SI=5678HB、SI=1234H

C、SI=2000HD、SI=3234H

73、汇编程序使用〔C〕伪指令使重复块重复屡次。

A、LOOPB、REPEC、REPTD、LOCAL

74、8086∕8088微处理器可访问的I∕O地址空间大小为〔B〕。

A、1KBB、64KBC、1MBD、16MB

75、以80*86为CPU的PC机,在实地址工作方式下,其中断向量长度为〔B〕。

A、8个字节B、4个字节C、2个字节D、1个字节

76、指令mova*,10[si]的源操作数字段的寻址方式是〔C〕。

A、存放器寻址B、存放器间址C、变址寻址D、基址寻址

77、以下语句汇编后,CENTH的值是〔A〕。

buf1dw8,19

buf2db6,'abc$',10dup〔'5'〕

CENTHequbuf2—buf1

A、4B、8C、14D、17

78、执行以下指令后,正确的结果是〔B〕。

MOVAL,100

MOVBL,-2

A、AL=100H,BL=02HB、AL=64H,BL=0FEH

C、AL=64H,BL=82HD、AL=100H,BL=0FEH

79、完成同指令*CHGA*,B*一样功能的指令或指令序列是〔D〕。

A、MOVA*,B*B、MOVB*,A*

C、PUSHA*D、MOVC*,A*

POPB*MOVA*,B*

MOVB*,C*

80、假设栈顶的物理地址为20210H,当执行完指令PUSHA*后,栈顶的物理地址为〔D〕。

A、20212HB、20211HC、200FFHD、200FEH

81、JMPSI的目标地址偏移量为〔A〕。

A、SI的内容B、SI所指向的内存字单元之内容

C、SI+IP的内容D、IP+[SI]

82、JMPWORDPTR[B*]转移的目标地址是〔D〕。

A、B*的内容B、SP+B*之和

C、IP+[B*]之和D、B*指出的内存单元之内容

83、在执行NEG指令时,对标志位CF有影响,其影响的规则是(C)

A、对正数求补时,CF=0B、对负数求补时,CF=0

C、对非零数求补时,CF=1D、对零求补时,CF=1

84、算术右移SAR和逻辑右移SHR两条指令执行后结果完全一样的情况是(A)

A、目的操作数最高位为0B、目的操作数最高位为1

C、目的操作数为任意情况D、无论什么情况都不可能一样

85、为了使MOVA*,VAR指令执行后,A*存放器中的内容为4142H,下面哪一条数据定义会产生不正确的结果.〔C〕

A、VARDW4142HB、VARDW16706

C、VARDB42H,41HD、VARDW‘AB’

86、假定用伪指令DATADB12H,34H定义了两个字节数据,现需要将数据12H取入存放器AL,将数据34H取入存放器AH,能完成此功能的程序段是〔D〕。

A、MOVA*,DATAB、MOVSI,DATA

MOVA*,[SI]

C、LEASI,DATAD、MOVSI,OFFSETDATA

MOVA*,[SI]MOVAL,[SI]

MOVAH,[SI]MOVAH,[SI+1]

87、POP指令的操作数不能是〔D〕。

A、BPB、[B*]C、字变量的SUMD、CS

88、汇编语言语句格式中对名字项的规定如下,请找出其中错误的说法〔B〕

A、名字的第一个字符可以是大写英文字母及小写英文字母;

B、名字的第一个字符可以是字母、数字及、、_;

C、名字的有效长度≤31个字符;

D、在名字中不允许出现$。

89、设AL=04H,BL=0F8H,执行IMULBL指令后,结果是(D)

A、A*=0032HB、A*=00E0HC、A*=03E0HD、A*=0FFE0H

90、指令的操作数中,允许出现表达式,例如BUF1与BUF2均为变量名,下面指令中语法正确的选项是(D)

A、MOVA*,BUFl*BUF2

B、MOVA*,BUF1/BUF2

C、MOVA*,BUF1+ES:

BUF2

D、MOVA*,BUF2-BUF1

91、在执行以下指令时,需要使用段存放器DS的指令是〔D〕

A、STOSWB、ADDAL,CLC、NEGB*D、INCDA[B*]

92、CALLB*执行前SP=100H,执行后SP的内容为〔D〕。

A、100HB、102HC、98HD、0FEH

93、SP=100H,指令RET〔远返回〕执行后SP的值为〔B〕。

A、106HB、104HC、0FCHD、0FAH

94、中断向量是指〔B〕。

A、中断向量表的地址B、中断处理子程序的入口地址

C、被中断程序的入口地址D、被中断程序的断点地址

95、使用DOS系统功能调用时,使用的软中断指令是〔B〕

A、INT21B、INT10HC、INT16HD、INT21H

96、假设将以2000H为段地址的整个段空间当作栈使用,是(B)。

A、0001HB、0000HC、FFFFHD、FFFEH

97、下面指令中,操作数的寻址方式为存放器间接寻址的指令是(C)

A、INCWORDPTR[B*+SI]

B、INCC*,[SI+COUNT]

C、NEGBYTEPTR[B*]

D、ADDA*,B

98、NUMEQU80H

DADB34H

ANDDA,NUM

上述语句执行后,DA中的内容是(D)

A、0B4HB、80HC、34HD、0

99、当程序顺序执行时,每取一条指令语句,IP指针增加的值是〔D〕

A、1B、2C、3D、由指令长度决定的

100、以下属于合法的指令是〔D〕。

A、MOVDS,ESB、MOV[SI],[DI]

C、MOVA*,BLD、MOV[DI],BL

101、以下存放器组中在段内寻址时可以提供偏移地址的存放器组是(B)。

A、A*,B*,C*,D*B、B*,BP,SI,DI

C、SP,IP,BP,D*D、CS,DS,ES,SS

102、以下传送指令中有语法错误的选项是(A)。

A、MOVCS,A*B、MOVDS,A*

C、MOVSS,A*D、MOVES,A*

103、与MOVB*,OFFSETVAR指令完全等效的指令是(D)。

A、MOVB*,VARB、LDSB*,VARC、LESB*,VARD、LEAB*,VAR

104、在程序执行过程中,IP存放器中始终保存的是〔B〕

A、上一条指令的首地址C、正在执行指令的首地址

B、下一条指令的首地址D、需计算有效地址后才能确定地址

105、直接、间接、立即三种寻址方式指令的执行速度,由快至慢的排序为(A)

A、立即、直接、间接B、直接、间接、立即

C、直接、立即、间接D、不一定

106、语句DA1DB2DUP(3,5,7)汇编后,该语句可等同于的语句是(D)

A、DA1DB3,5,7

B、DA1DB2,3,5,7

C、DA1DB3,5,7,2

D、DA1DB3,5,7,3,5,7

107、MOVAL,80H

MOVCL,2

SARAL,CL

上述指令序列执行后,结果是(D)

A、AL=40HB、AL=20HC、AL=0C0HD、AL=0E0H

108、生成E*E之后用Debug加载后,查看存放器内容如下:

ds=0c3ees=0c3ess=0b4ecs=0b4fip=0000

程序的起始地址的段地址是〔A〕

A、0c4eB、0c3eC、0c4fD、0

109、用MOV指令将十进制数89以非压缩BCD码格式送入A*,可使用的指令是(B)

A、MOVA*,89B、MOVA*,0809H

C、MOVA*,89HD、MOVA*,0809

110、以下关于堆栈的说法,错误的选项是〔D〕

A、以"先入后出〞为原则。

B、栈区最高地址单元的前一个单元为栈底。

C、运行中SP存放器动态跟踪栈顶位置。

D、压栈和弹出都是以字节为单位。

111、关于8086/8088微机系列,以下说法哪个是正确的〔D〕

A、一个存储单元由16个二进制位组成,简称字。

B、当存储一个字数据时,低字节放高地址位,高字节放低地址位。

C、在内存中,可以无限分配段,且段的大小不受限制。

D、段与段之间可以邻接,也可以重叠。

112、1KB的存储器有(B)个存储单元.

A、1000B、1024C、512D、256

113、以下指令执行时出错的是〔A〕

A、ADDBUF1,BUF2B、JMPDWORDPTRDAT[B*]

C、MOVA*,[B*+DI]NUMD、TESTAL,08H

114、设A*=8765H,D*=4321H,执行CWD指令后,D*中的内容是(B)

A、4321HB、0FFFFHC、8000HD、0001H

115、下面是实现将AL内容加1的压缩型BCD码加法程序段,其中正确的指令序列是(A)

A、INCALB、ADDAL,1

DAADAS

C、ADDAL,1D、STC

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

当前位置:首页 > 小学教育 > 其它课程

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2