- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《汇编语言程序设计》实验报告一
《汇编语言程序设计》实验报告___ 班级:______ 学号:______ 姓名:______
实验题目
编制一汇编源程序,求出下列公式中的Z值,并放在RESULT单元中。
用查表的方法将1位十六进制数转换成相应的ASCII码(并在屏幕上显示)。
写一个完整的程序放在代码段 C_SEG中,要求把数据段D_SEG中的AUGEND和附加段E_SEG中的ADDEND相加,并把结果存放在数据段D_SEG中的SUM中。其中AUGEND、ADDEND和SUM均为双字长变量,AUGEND赋初值为99251,ADDEND赋初值为-15962
实验要求
1. 分别用远过程和DOS中断4CH的两种方式编制完整的汇编语言源程序;
2. 掌握汇编语言上机的完整过程:编辑、汇编、连接、运行、调试;
3. 使用DEBUG察看并修改寄存器和存储器的内容;
4. 使用DEBUG连续运行、单步运行。 程序设计说明
程序hbsy1_1
功能:根据公式 计算z 的值,并将结果存储在result 单元中。
算法:1)在数据段中定义两个变量x和y ,并将x赋初值为6,y赋初值为7
2)定义一个适宜大小的堆栈段
3)指令 mov dx,x 实现dx=x;指令 add dx,y 实现 dx=x+y;
指令shl dx,cl实现dx=(x+y)*8(cl的值为3);指令sub dx,x实现dx=(x+y)*8-x;
指令sar dx,1实现dx=((x+y)*8)/2;指令mov result,dx将z的值存储到result单元中。
程序hbsy1_2
功能:将一位十六进制数转换成相应的ASCII码,并在屏幕上显示出来。
算法:1)建立一个数据表TABLE存储0到9,A到F所对应的ASCII码。
2)在数据段中定义一个字节变量HEX存储一位十六进制数。
3)将HEX的值传给AL,再用换码指令XLAT将AL的值换为数据表TABLE中对应的ASCII码。
4)调用相应指令将HEX对应的ASCII码显示出来。
3.程序hbsy1_3
功能:将数据段D_SEG中的AUGEND和E_SEG中的ADDEND相加,并把结果存放在数据段D_SEG中的SUM中。
算法:1)在数据段D_SEG中定义双字长变量AUGEND,并赋初值为99251
2)在附加段E_SEG中定义双字长变量ADDEND,并赋初值为-15962
3)将AUGEND的低16位传给AX,高16位传给DX。
4)将ADDEND的低16位与AX相加,高16位与DX相加。
5)用高低位的方法将AUGEND与ADDEND相加的结果传给SUM。
程序调试说明
1.程序hbsy1_1
用MASM编译程序hbsy1_1,再用LINK链接程序hbsy1_1:
用DEBUG中的R指令显示寄存器的内容:
用DEBUG中的D指令显示存储器的内容:
用DEBUG中的T指令对程序进行单步调试:
用DEBUG中的G指令对程序设置断点进行调试:
2.程序hbsy1_2
用MASM编译程序hbsy1_2,再用LINK链接程序hbsy1_2:
用DEBUG中的相应指令对程序进行调试:
3.程序hbsy1_3
用MASM编译程序hbsy1_3,再用LINK链接程序hbsy1_3:
用DEBUG中的相应指令对程序进行调试:
实验结果与结论
1.程序hbsy1_1
程序hbsy1_1运行的结果:
2.程序hbsy1_2
程序hbsy1_2运行后,屏幕显示结果为4:
3.程序hbsy1_3
程序hbsy1_3运行的结果:
使用说明
1.程序hbsy1_1
在DOS环境下,进入到程序hbsy1_1.exe 所在的目录下,然后输入“hbsy1_1.exe”回车,就可以运行程序hbsy1_1.exe。
2.程序hbsy1_2
在DOS环境下,进入到程序hbsy1_2.exe 所在的目录下,然后输入“hbsy1_2.exe”回车,运行程序hbsy1_2.exe,屏幕上显示字符“4”。
3.程序hbsy1_3
在DOS环境下,进入到程序hbsy1_3.exe 所在的目录下,然后输入“hbsy1_3.exe”回车,就可以运行程序hbsy1_3.exe。
实验中遇到的问题及解决方法
1.
文档评论(0)