用汇编编写的两个十进制数相加程序(共3页)_第1页
用汇编编写的两个十进制数相加程序(共3页)_第2页
用汇编编写的两个十进制数相加程序(共3页)_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上用汇编编写的两个十进制数相加程序一、设计目的:对两个用ASCII码表示的十进制数直接相加,以得到它们的和设被加数放在以SBCD1为首地址的单元中,加数放在以SBCD2为首地址的单元中。二、实验设备: 安装汇编软件的可操控计算机一台三、实验分析:需要注意的是如何用ASCII码表示十进制数,并且如何将一个数放入一个地址单元的首地址,而两个数的相加不是本设计的要点,着重在于解决以上两个问题。在这里还有一个结果显示为两位数的问题,设计出的源程序在计算时其能显示的结果的最大值只能到9,无法显示十位数。在随后改进的程序中加入了一个进位的子程序,首先对计算结果进行判断是否大于9,如

2、果大于9则进入子程序。从而使计算结果得以显示出一个十位数。四、程序流程图:五、实验源程序六、实验程序:SSEG SEGMENT PARA STACK 'stack'dw 100h dup(0) ;初始化堆栈大小为100SSEG ENDSDSEG SEGMENTSBCD1 DB ? SBCD2 DB ? SBCD3 DB ?;数据段:在此处添加程序所需的数据DSEG ENDSESEG SEGMENT;附加段:在此处添加程序所需的数据ESEG ENDSCSEG SEGMENTassume cs:CSEG, ds:DSEG, es:ESEG, ss:SSEGMAIN PROC FAR

3、 ;主程序入口mov ax, dsegmov ds, axmov ax,esegmov es, axmov ah,1 int 21h mov SBCD1,almov bl,almov dl,'+'mov ah,2int 21hmov ah,1int 21hmov SBCD2,aladd bl,alsub dl,dlmov dl,'='mov ah,2int 21hmov dl,blsub dl,48cmp dl,57mov bl,dljnz jinweimov dl,blmov ah,2int 21hjmp exitjinwei: mov dl,'1'mov ah,2int 21hsub bl,10mov dl,blmov ah,2int 21hjmp exitexit: mov ah,1int 21hmov ax, 4c00h ;程序结

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论