汇编语言程序第三次作业.docx

上传人:b****2 文档编号:514914 上传时间:2022-10-10 格式:DOCX 页数:19 大小:20.70KB
下载 相关 举报
汇编语言程序第三次作业.docx_第1页
第1页 / 共19页
汇编语言程序第三次作业.docx_第2页
第2页 / 共19页
汇编语言程序第三次作业.docx_第3页
第3页 / 共19页
汇编语言程序第三次作业.docx_第4页
第4页 / 共19页
汇编语言程序第三次作业.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

汇编语言程序第三次作业.docx

《汇编语言程序第三次作业.docx》由会员分享,可在线阅读,更多相关《汇编语言程序第三次作业.docx(19页珍藏版)》请在冰豆网上搜索。

汇编语言程序第三次作业.docx

汇编语言程序第三次作业

一、单项选择题(只有一个选项正确,共10道小题)

1.某数据段如下:

DATASEGMENT

ORG20H

XDB12H

YDW789AH

DATAENDS

则Y单元的偏移址是()。

  (A) 0

  (B) 20H

  (C) 21H

  (D) 12H

你选择的答案:

 未选择  [错误]

正确答案:

C

解答参考:

2.MOVAL,-1

NEGAL

XORAL,65

上述程序段执行后,AL中的容是()。

  (A) 40H

  (B) 64H

  (C) 01H

  (D) 61H

你选择的答案:

 未选择  [错误]

正确答案:

B

解答参考:

3.下面的数据传送指令中,错误的操作是()。

  (A) MOVSS:

[BX+DI],1000H

  (B) MOVDX,1000H

  (C) MOVWORDPTR[BX],1000H

  (D) MOVDS,2000H

你选择的答案:

 未选择  [错误]

正确答案:

D

解答参考:

4.设AH=0,AL=06H,BL=09H,执行指令

ADDAL,BL

AAA

之后,其结果应是()。

  (A) AH=01,AL=05

  (B) AH=1AL=15

  (C) AH=0,AL=0FH

  (D) AH=0AL=05

你选择的答案:

 未选择  [错误]

正确答案:

A

解答参考:

5.BUFAEQUTHISWORD

   BUFBDB80DUP(0)

对以上两条语句而言,下列说法不正确的是()。

  (A) BUFA与BUFB对应同一存储单元地址。

  (B) BUFA与BUFA具有相同的偏移属性。

  (C) BUFA与BUFB具有相同的类型属型。

  (D) BUFA与BUFB具有相同的段属性。

你选择的答案:

 未选择  [错误]

正确答案:

C

解答参考:

6.已定义数据:

FEESDW100DUP(0,2DUP(?

)),执行指令MOVAL,LENGTHFEES后AL寄存器容为()。

  (A) 1

  (B) 100

  (C) 200

  (D) 2

你选择的答案:

 未选择  [错误]

正确答案:

B

解答参考:

7.09号中断的中断向量所处存中相应单元的物理地址为()。

  (A) 00009H

  (B) 00012H

  (C) 00024H

  (D) 00036H

你选择的答案:

 未选择  [错误]

正确答案:

C

解答参考:

8.在VAR单元中存放着数据2010H的地址2000H。

MOVBX,VAR

MOVAX,[BX]

执行上述指令AX和BX寄存器的容分别是()。

  (A) AX=2000H,BX=2010H

  (B) AX=2010H,BX=2000H

  (C) AX=22010H,BX=22100H

  (D) AX=22100H,BX=22010H

你选择的答案:

 未选择  [错误]

正确答案:

B

解答参考:

9.下列指令中能实现把AX,BX寄存器容进行交换的是()。

  (A) XCHGCX,BX

  (B) MOVCL,AX

  (C) PUSHAX

  (D) MOVAX,BX

XCHGAX,CX

MOVAX,BX

PUSHBX

MOVBX,AX

MOVBX,CL

POPAX

POPBX

你选择的答案:

 未选择  [错误]

正确答案:

C

解答参考:

10.数据段定义如下:

DATASEGMENT

0RG0074H

ARRAYDW1,2,+4,3,4

DATAENDS

则执行指令MOVAX,ARRAY[4]后,AX寄存器的容是()。

  (A) 0002H

  (B) 0082H

  (C) 007CH

  (D) 0003H

你选择的答案:

 未选择  [错误]

正确答案:

C

解答参考:

(注意:

若有主观题目,请按照题目,离线完成,完成后纸质上交学习中心,记录成绩。

在线只需提交客观题答案。

二、主观题(共21道小题)

11. 从缓冲区写信息到一个文件,如果没有关闭文件,可能会出现什么问题?

参考答案:

文件结尾的部分信息就没有被写入磁盘,从而造成写入的文件不完整。

12. 下面的ASCIZ串有什么错误?

PATH_NAMEDB‘C:

\PROGRAMS\TEST.DAT’

参考答案:

此ASCIZ串的最后少了一个全0字节,应改为:

PATH_NAMEDB‘C:

\PROGRAMS\TEST.DAT’,0

13. 据定义如下:

 

X1DB10H,100,-1

X2DW10H,100,-1

X3DD?

COUNTEQUX3-X1

变量COUNT的值是,其表示的意义是                   。

参考答案:

9X1和X2两个变量所占存字节单元的个数。

(写为存单元的个数也正确。

如果写为字单元则为错误)

14. 执行指令

MOVAX,0

MOVAL,09H

ADDAL,4

若要获得结果AX=0103H,则在ADD指令之后,加一条          指令,若要获得结果AL=13H,在ADD指令之后加一条         指令。

参考答案:

DAAAAA

15. 实现AL中高四位置1的指令为。

实现AL中高四位取反的指令为。

参考答案:

ORAL,0F0HXORAL,0F0H

16. 存贮器的地址区域___________为中断向量区。

参考答案:

◎最低1K字节◎(0-3FFH)◎0000开始的1K字节

以上三个答案都正确

17. X、Y、Z是双精度数,他们分别存放在X、X+2、Y、Y+2、Z、Z+2的存单元中,高位字存放在高位地址中,低位字存放在低位地址中,下列指令序列实现X+Y+24-ZW。

并且用W和W+2单元存放运算结果:

MOVAX,X

MOVDX,X+2

ADDAX,Y

ADCDX,Y+2

ADDAX,24

SUBAX,Z

SUBDX,Z+2

MOVW,AX

MOVW+2,DX

分析以上指令序列,指出程序中出现的错误:

参考答案:

       在ADD和SUB两条指令之间加上ADCDX,0(仅仅写出这条指令就正确)

把SUBDX,Z+2改成SBBDX,Z+2(仅仅写出这条指令就正确)

18. 在数据段中有一个字符串,其长度是17,要求把他们传送到附加段中的一个缓冲区。

DATASEGMENT

MESS1DB‘PERSONALCOMPUTER’

DATAENDS

EXTRASEGMENT

MESS2DB17DUP(?

EXTRAENDS

CODESEGMENT

MAINPROCFAR

                ASSUMECS:

CODE,DS:

DATA,ES:

EXTRA

START:

PUSHDS

SUBAX,AX

PUSHAX

LEASI,MESS1

LEADI,MESS2

CLD

REPMOVSB

RET

MAINENDP

CODEENDS

ENDSTART

以上是完整的程序段,请分析主过程,修改主过程中的错误。

1、;

2、;

3、;

4、;

5、。

参考答案:

    MOVAX,DATA

MOVDS,AX

MOVAX,EXTRA

MOVES,AX

MOVCX,17只要写出以上5条指令就给分,每条指令1分。

评分标准:

指令中没有写出逗号、没有写对相应数据、写错操作码都视为错误答案。

19. 已知主程序和子程序之间的调用如下:

STACKSEGMENT

DB100DUP(0)

STACKENDS

CODE1SEGMENT

ASSUMECS:

CODE1,SS:

STACK

BEG:

¼

MOVAX,0A3BH

MOVCX,1234H

CALLFARPTRAA;断点(IP)=1110H,(CS)=0200H

¼

CODE1ENDS

CODE2SEGMENT

ASSUMECS:

CODE2

AAPROCFAR

PUSHAX

PUSHCX

BB:

¼

RET

AAENDP

CODE2ENDS

ENDBEG

画出执行到标号BB时,堆栈的情况图。

参考答案:

1234H

0A3BH

1110H

0200H

 

20. 试编写一个程序把BX寄存器的二进制数用十六进制数的形式在屏幕上显示出来。

参考答案:

1、 CODESEGMENT

MAINPROCFAR

ASSUMECS:

CODE

START:

PUSHDS

SUBAX,AX

PUSHAX

MOVCH,4

ROTATE:

MOVCL,4

ROLBX,CL

MOVAL,BL

ANDAL,0FH

ADDAL,30H

CMPAL,3AH

JLPRINTIT

ADDAL,07H

PRINTIT:

MOVDL,AL

MOVAH,2

INT21H

DECCH

JNZROTATE

RET

MAINENDP

CODEENDS

ENDSTART

21. 写出一段子程序,完成输出空行的功能。

空出的行数在AX寄存器中。

参考答案:

CODESEGMENT

MAINPROCFAR

ASSUMECS:

CODE

START:

PUSHDS

SUBAX,AX

PUSHAX

MOVAX,5

OUTPUT:

PUSHAX

CALLDISP

POPAX

DECAX

22. 假定(DS)=2000H,(SS)=1500H,(SI)=00A0H,(BX)=0100H,(BP)=0010H则

MOVAX,[BX+10]的寻址方式是;操作数的物理地址是。

MOVAX,[BP][SI]的寻址方式是;操作数的物理地址是。

参考答案:

寄存器相对寻址物理地址:

20110H

基址变址寻址物理地址:

150B0H

23. 如果TABLE为数据段中0032H单元的符号名,其中存放的容为1234H,则执行MOVAX,TABLE后AX寄存器的容是;执行LEAAX,TABLE后AX寄存器的容是。

参考答案:

1234H0032H

24. 如果TABLE为数据段中0032H单元的符号名,其中存放的容为1234H,则执行MOVAX,TABLE后AX寄存器的容是;执行LEAAX,TABLE后AX寄存器的容是。

参考答案:

1234H0032H

25. 1、汇编语言程序上机操作的步骤是;

;;

参考答案:

用编辑器编写汇编源程序ASM文件

用MASM命令编译ASM文件为

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

当前位置:首页 > 解决方案 > 学习计划

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

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