全球旧事资料 分类
天津大学计算机科学与技术学院实验报告
《汇编语言程序设计》实验报告(一)汇编语言程序设计》实验报告(报告
年级:___班级:______学号:______姓名:______
一、实验题目
1
编制一汇编源程序,求出下列公式中的Z值,并放在RESULT单元中。
z
23
xy8x2
用查表的方法将1位十六进制数转换成相应的ASCII码(并在屏幕上显示)。写一个完整的程序放在代码段C_SEG中,要求把数据段D_SEG中的AUGEND和附加段E_SEG中的ADDEND相加,并把结果存放在数据段D_SEG中的SUM中。其中AUGEND、ADDEND和SUM均为双字长变量,AUGEND赋初值为99251,ADDEND赋初值为15962
二、实验要求
1234
分别用远过程和DOS中断4CH的两种方式编制完整的汇编语言源程序掌握汇编语言上机的完整过程:编辑、汇编、连接、运行、调试使用DEBUG察看并修改寄存器和存储器的内容使用DEBUG连续运行、单步运行。
三、程序设计说明
1程序hbsy1_1程序功能:根据公式z
xy8x计算z的值,并将结果存储在result单元中。2
算法:1)在数据段中定义两个变量x和y,并将x赋初值为6,y赋初值为72)定义一个适宜大小的堆栈段3)指令movdxx实现dxx;指令adddxy实现dxxy;指令shldxcl实现dxxy8cl的值为3;指令subdxx实现dxxy8x;指令sardx1实现dxxy82;指令movresultdx将z的值存储到result单元中。2程序hbsy1_2程序功能:将一位十六进制数转换成相应的ASCII码,并在屏幕上显示出来。
共13页第1页
f天津大学计算机科学与技术学院实验报告算法:1)建立一个数据表TABLE存储0到9,A到F所对应的ASCII码。2)在数据段中定义一个字节变量HEX存储一位十六进制数。3)将HEX的值传给AL,再用换码指令XLAT将AL的值换为数据表TABLE中对应的ASCII码。4)调用相应指令将HEX对应的ASCII码显示出来。3程序3程序hbsy1_3功能:将数据段D_SEG中的AUGEND和E_SEG中的ADDEND相加,并把结果存放在数据段D_SEG中的SUM中。算法:1)在数据段D_SEG中定义双字长变量AUGEND,并赋初值为992512)在附加段E_SEG中定义双字长变量ADDEND,并赋初值为159623)将AUGEND的低16位传给AX,高16位传给DX。4)将ADDEND的低16位与AX相加,高16位与DX相加。5)用高低位的方法将AUGEND与ADDEND相加的结果传给SUM。
四、程序调试说明1程序1程序hbsy1_1用MASM编译程序hbsy1_1,再用LINK链接程序hbsy1_1
共13页第2页
f天津大学计算机科学与技术学院实验报告
用DEBUG中的R指令显示寄存器的内容:
用DEBUG中的Dr
好听全球资料 返回顶部