- 1、本文档共4页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编语言程序设计试验报告四算术运算程序试验
汇编语言程序设计实验报告四(算术运算程序实验)
实验目的
熟悉算术运算指令的功能与应用。
学习编写加法和乘法运算程序。
二、实验内容
二进制运算
计算23579+7684和0A5H+34H
原始数据分别存于A、B、C、D开始听内存单元中,运算结果分别存E、G开始的内存单元中。(低位数在低字节中)
前两个数据在程序中用十进制表示,后两个数据在程序中用十六进制表示。
十进制数定义成字变量,用16位加法。十六进制数定义成字节变量,用8位加法。
多字节加法
在内存中以FIRST和SECOND开始的单元中分别存放有两个10位压缩型十进制数(BCD码),低位在前。求这两个数的压缩十进制数和,并存到THIRD 开始的单元中。
压缩十进制数亦称组合十进制数,一个字节存放二位BCD码。
两个加数可直接直接在程序中设置。
二进制乖法
在内存DATA1和DATA2单元中分别存放着两个8位无符号二进制数A和B 。求AXB,结果存于DATA3开始的内存单元中。
在FIRST和SECOND开始的内存单元中,分别存放着两个16位带符号二进制数D和E,求DXE,结果存于THIRD开始的内存单元中。
实验准备
仔细阅读本实验教材。
认真预习加法、乖法和十进制调整指令。精心设计运算使用的实验数据。(注意:应准备多组不同数据以备实验。)
根据实验内容,分别画出各个程序的流程图,并在实验前编好各个源程序。
实验步骤
二进制数运算
题目的具体要求,将原始数据及存放结果的内存单元分别定义成字变量或字节变量。
(2)辑程序,把编写好的源程序建立为汇编语言源程序文件并存盘。
对源程序文件进行汇编、连接,且修改至无错误,然后运行程序。
利用调试程序观察运行结果。如果有错,分析并找出错误原因,改写程序并重新调试。
2、多字节加法程序
在FIRST 和SECOND开始的内存单元中建立各为10位的压缩型BCD码的数据区,数据要选择得当。要考滤位间有进位和最高位也要有进位等不同情况。数据从低字节开始存放。
把编写好的源程序,用编辑程序建立为汇编语言程序源文件并存盘。
注意多字节运算加法指令的选择以及相应状态(如CF位)位的设置。进行BCDD码运算时,要选择合适的十进制调节调整指令;运算结果的最高位进位情况要处理。
汇编、连接源程序,且修改至无错误,然后运行程序。
3、
(1)选择相应的数据存放于内存单元中。为了考查多种情况,数据选择要合理。对于8位无符号数应使其在职~255的范围内,并使得积大于8位无符号数的范围;对于16位有符号数的选择应兼顾到正、负数的情况。注意乖法指令的选择要考滤有符号乖法和无符号乖法的不同情况;有符号乖数如果为负数,则数据在内存中以二进制补码形式存放。
实验报告要求
程序流程图
开始 开始
AX A CX 6
AX AX+B SI 0
E AX 清CF
AL C AL (SECOND+[SI])
AL AL+D AL AL+(FIRST+[SI])
C AL (THIRD+[SI]) AL
结束,返回系统 SI SI+1
CX CX-1
二进制运算流程图
CX=0?
Y
结束,返回系统
书馆 多字节加法流程图
源程序代码清单
二进制运算程序清单
DATA SEGMENT
A DW 23579
B DW 7684
C DB 0A5H
D DB 34H
E DW ?
G DW ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV AX,A
ADD AX,B
MOV
文档评论(0)