- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
华南师范大学汇编试卷
华南师范大学
计算机学院2004/2005学年(下)学期期末试卷
《汇编语言程序设计》试卷(A卷)
专业____________年级 04级本 班级_______姓名________学号_______
题号 一 二 三 四 五 六 总分 得分 (要求:前四题直接写在试卷上)
一、填空题:(每小题2分,共10分)
1. 数-27的补码表示是_ _(8位),扩展到16位 _。
2. 一个字5678H存到地址[1234H]单元中,则56H存放在 1234 单元,78H存放在 1235 单元。
3. 堆栈的栈顶由 寄存器指出,非栈顶字由 寄存器指出。
4.编程用的操作数有 、 、 。
5.中断向量是 ,中断向量表是 。
二、改错题(每小题2分,共20分)
(在不改变原题意的前提下,在试卷上画出每小题的错误之处,并在右边予以改正。)
1. MOV CX,SEG DATA
MOV ES,CX
MOV DS,ES ( CX )
2. B DW 100
MOV AL(AX),B (16位)
3. MOV DI,30H
MOV [DI],16H
4. MOV AX,BX,
IN AX,BX
5. ADD SI,BX
DAA
6. MOV DX,30
SUB [DX],CX
7. PUSH AL
8. MOV BX,16
MOV AL,256
9. INC AX,1
10. ADD 80H,AL
IN 80H,AL
三、阅读程序(根据题目要求写出结果每小题6分,共30分)
(可以给指令另加注释,也可以不加。)
1. 下面程序的功能是什么?
MOV AX,X
CMP AX,Y
JGE LAB
XCHG AX,Y
LAB:MOV X,AX
2. 执行下列指令后AX、BX寄存器的内容?
MOV SI,10H
MOV AX,1234H
MOV [SI+12H],AX
LEA BX,[SI]
MOV [SI+14H],BX
LES BX,DWORD PTR [SI+12H]
3. 下面程序的功能是什么?
MOV CH,4
LAB:MOV CL,4
ROL BX,CL
MOV DL,BL
AND DL,0FH
ADD DL,30H
CMP DL,3AH
JL PRINT
ADD DL,7
PRINT:MOV AH,02
INT 21H
DEC CH
JNZ LAB
4. 下面程序的功能是什么?
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],A
LAB1: INC SI
LOOP LAB
5. 下面程序的功能是什么?
MOV AX,SEG STRING
MOV DS,AX
LEA DX,STRING
MOV AH,0AH
INT 21H
XOR BX,BX
MOV CX,BX
MOV CL,STRING[1]
LEA SI,STRING[2]
MOV AL,’A’
LAB:CMP AL,[SI]
JNZ LAB1
INC BX
LAB1:INC SI
LOOP LAB
四、问答题(共10分)
1.简述上机运行汇编语言程序的过程。(6分)
2. 简述程序中指令和伪指令的区别。(4分)
五、程序设计题(每小题15分,共30分)
1. 编制完整程序实现下列算式:W=X+Y+36-Z。设X、Y、Z、W均为双字长数据,各自的低十六位数和高十六位数分别存放在X、X+2、Y、Y+2、Z、Z+2的存储单元中,结果的低十六位字和高十六位字分别存放在W和W+2两个单元中。
2.编制程序段实现:将AX寄存器中的16位二进制数分成四组,每组4位,然后把这4组数分别放在AL、BL、CL、和DL中。
六、附加题(10分,不计入总分,仅作参考)
在附加数据段中有一首址为ADDR的没有排序的字数组,数据的第一个字为数组长度,第二个字开始存放数组各元素,在KEY单元存放一个要删除的字数据。要求编写一完整程序,在数组中查找该数,如果找到该数(可能有多个),将其从数组中删除,并修改数组
原创力文档


文档评论(0)