汇编语言程序第三次作业Word格式文档下载.docx
《汇编语言程序第三次作业Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《汇编语言程序第三次作业Word格式文档下载.docx(19页珍藏版)》请在冰豆网上搜索。
上述程序段执行后,AL中的容是()。
40H
64H
01H
61H
B
3.下面的数据传送指令中,错误的操作是()。
MOVSS:
[BX+DI],1000H
MOVDX,1000H
MOVWORDPTR[BX],1000H
MOVDS,2000H
D
4.设AH=0,AL=06H,BL=09H,执行指令
ADDAL,BL
AAA
之后,其结果应是()。
AH=01,AL=05
AH=1AL=15
AH=0,AL=0FH
AH=0AL=05
A
5.BUFAEQUTHISWORD
BUFBDB80DUP(0)
对以上两条语句而言,下列说法不正确的是()。
BUFA与BUFB对应同一存储单元地址。
BUFA与BUFA具有相同的偏移属性。
BUFA与BUFB具有相同的类型属型。
BUFA与BUFB具有相同的段属性。
6.已定义数据:
FEESDW100DUP(0,2DUP(?
)),执行指令MOVAL,LENGTHFEES后AL寄存器容为()。
1
100
200
2
7.09号中断的中断向量所处存中相应单元的物理地址为()。
00009H
00012H
00024H
00036H
8.在VAR单元中存放着数据2010H的地址2000H。
MOVBX,VAR
MOVAX,[BX]
执行上述指令AX和BX寄存器的容分别是()。
AX=2000H,BX=2010H
AX=2010H,BX=2000H
AX=22010H,BX=22100H
AX=22100H,BX=22010H
9.下列指令中能实现把AX,BX寄存器容进行交换的是()。
XCHGCX,BX
MOVCL,AX
PUSHAX
MOVAX,BX
XCHGAX,CX
PUSHBX
MOVBX,AX
MOVBX,CL
POPAX
POPBX
10.数据段定义如下:
DATASEGMENT
0RG0074H
ARRAYDW1,2,+4,3,4
DATAENDS
则执行指令MOVAX,ARRAY[4]后,AX寄存器的容是()。
0002H
0082H
007CH
0003H
(注意:
若有主观题目,请按照题目,离线完成,完成后纸质上交学习中心,记录成绩。
在线只需提交客观题答案。
)
二、主观题(共21道小题)
11.
从缓冲区写信息到一个文件,如果没有关闭文件,可能会出现什么问题?
参考答案:
文件结尾的部分信息就没有被写入磁盘,从而造成写入的文件不完整。
12.
下面的ASCIZ串有什么错误?
PATH_NAMEDB‘C:
\PROGRAMS\TEST.DAT’
此ASCIZ串的最后少了一个全0字节,应改为:
\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,要求把他们传送到附加段中的一个缓冲区。
MESS1DB‘PERSONALCOMPUTER’
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
CODE2
AAPROCFAR
PUSHAX
PUSHCX
BB:
RET
AAENDP
CODE2ENDS
ENDBEG
画出执行到标号BB时,堆栈的情况图。
1234H
0A3BH
1110H
0200H
20.
试编写一个程序把BX寄存器的二进制数用十六进制数的形式在屏幕上显示出来。
1、
CODESEGMENT
MAINPROCFAR
ASSUMECS:
CODE
START:
SUBAX,AX
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
MAINENDP
CODEENDS
ENDSTART
21.
写出一段子程序,完成输出空行的功能。
空出的行数在AX寄存器中。
MOVAX,5
OUTPUT:
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.
25.
1、汇编语言程序上机操作的步骤是;
用编辑器编写汇编源程序ASM文件
用MASM命令编译ASM文件为