- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
华北科技学院综合性
实 验 报 告
课程名称 汇 编 语 言
实验学期 2011 至 2012 学年 第 1 学期
学生所在系部 计算机学院网络工程系
年级 专业班级
学生姓名 学号
任课教师
实验成绩
计算机学院制
华北科技学院综合性实验报告
《 汇 编 语 言》课程综合性实验报告
开课实验室:软件一实验室 2011 年 12 月6 日
实验题目 显示学生名次表
一、实验目的
进行汇编语言程序设计应用的综合实验,综合运用汇编语言循环程序和子程序编程的方法,
巩固提高汇编语言程序能力应用水平。
二、设备与环境
PC、汇编ASM2008的软件
三、实验内容
编制一程序,要求从键盘输入的一个班的学生成绩,并存放缓冲区中,然后蜂聚
学生的成绩进行排序,再按分数的由高到低的顺序输出并显示出来。
四、实验结果及分析
⑴代码功能
该代码的功能是实现对已经输入的学生按成绩进行排序,输入时按学号输出时
按照成绩的由小到大输出,在成绩交换位置时成绩对应的姓名和学号也会跟随一起变
化使姓名和分数对应显示。
⑵变量的定义
①缓冲区和存储单元的定义
这个过程是个关键的过程,因为在程序中汇涉及到使用单元空间的单元值,如果
不能明确的定义变量和缓冲区,在输入学生信息,输出学生信息都不能达到想要的效
果,而且在程序中执行循环时也会因为赋值不准确导致程序出现错误,而且这种错误
系统不会提示,这就意味着查找问题很困难,增加了编码的难度和工作量。
②宏定义及其使用
在进行编码时为了使代码量减少,应该适当定义一些宏,此程序定义了5个宏,
hong1实现的功能是定义了回车换行因为在对学生成绩输出时会用到换行而且是反
复的使用,因此定义回车换行的宏可以减少一定的代码量。
hong1 macro ;定义回车换行的宏!!!
MOV DL,0AH
MOV AH,2
INT 21H
MOV DL,0DH
MOV AH,2
第 1 页
华北科技学院综合性实验报告
INT 21H
Endm
hong2定义的功能是提示信息和输入的功能,这个宏的定义主要用在对学生成绩
的输入上,和相关信息的显示,而且这个宏用到了传参因为在调用10号功能和9号
功能都能用这一个程序。
hong2 macro opr1,opr2 ;定义输入输出!!!!
lea dx,opr1
mov ah,opr2
int 21h
endm
其中opr1是传递的缓冲区的亚元,opr2是传递功能号的亚元。
Hong3定义空格的宏,这个宏的定义是为了在学生成绩输出时能显示的更加美
观一些。
hong3 macro ;定义空格!!
mov dl,20h
mov ah,2
int 21h
endm
hong4定义的清楚回车键的宏,因为信息输入用的是10号功能,在信息输入结
束时是以回车键结束的,而且程序中涉及到了信息的转存,如果将回车键也一同转
存到新的存储单元中,在用2号功能实现对学生信息的显示时碰到回车键,就会出现
终止的错误,因此在转存前就先对缓冲区里的回车键进行清空。
hong4 macro opr1,opr2 ;清楚缓冲区里的回车键!!!
mov al,0pr1
ad
文档评论(0)