两个多位十进制数相加的实验Word版_第1页
两个多位十进制数相加的实验Word版_第2页
两个多位十进制数相加的实验Word版_第3页
两个多位十进制数相加的实验Word版_第4页
两个多位十进制数相加的实验Word版_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

1、传播优秀Word版文档 ,希望对您有帮助,可双击去除!学生实验报告( 2010 学年第 学期 )课程名称:微型计算机原理与接口技术 开课实验室: 2011年 月 日年级、专业、班学号姓名成绩实验项目名称两个多位十进制数相加的实验指导教师教师评语 教师签名: 年 月 日注:报告内容按实验须知中几点要求进行。一、实验目的1、学习数据传送和算术运算指令的用法。2、熟悉在PC机上建立、汇编、链接、调试和运行8088汇编语言程序的过程。3、学会PC机得安装4、认识编程过程二、实验原理及基本技术路线图或实验内容(方框原理图或程序流程图)将两个多位十进制数相加。要求被加数均以ASCII码形式各自顺序存放在以

2、DATA1和DATA2为首的5个内存单元中(低位在前),结果送回DATA1处。传播优秀Word版文档 ,希望对您有帮助,可双击去除!程序框图 三、所用软件传播优秀Word版文档 ,希望对您有帮助,可双击去除!四、实验步骤整个程序分为4个部分:显示加数、转换、相加、输出结果。五、源码程序编制及分析注释CRLF MACRO ; 宏定义指令(回车执行程序) MOV DL,0DH ; 回车 MOV AH,02H ; 2号调用,显示回车 INT 21H MOV DL,0AH ; 换行 MOV AH,02H ; 2号调用换行 INT 21H ENDM ;宏指令定义结束 DATA SEGMENT ;数据段定

3、义 DATA1 DB 33H,39H,31H,37H,34H ; 第一个数据(作为加数)47193 DATA2 DB 36H,35H,30H,38H,32H ; 第二个数据(作为被加数)28056 DATA ENDS ;数据段定义结束 STACK SEGMENT ; 堆栈段定义 STA DB 20 DUP(?) ;定义从STA开始20个单元作为堆栈使用 TOP EQU LENGTH STA ;TOP等于堆栈单元数传播优秀Word版文档 ,希望对您有帮助,可双击去除! STACK ENDS CODE SEGMENT ;代码段定义 ASSUME CS:CODE,DS:DATA,SS:STACK,E

4、S:DATA START: MOV AX,DATA MOV DS,AX ;设置数据段 MOV AX,STACK MOV SS,AX ;设置堆栈段 MOV AX,TOP MOV SP,AX MOV SI,OFFSET DATA2 ;DATA2的偏移地址送SI MOV BX,05 ; 计数次数为5次 CALL DISPL ; 调用多次显示子程序DISPL(显示28056) CRLF ;回车换行 MOV SI,OFFSET DATA1 ; DATA1的偏移地址送SI MOV BX,05 ; 计数次数为5次 CALL DISPL ; 调用多次显示子程序DISPL(显示47193) CRLF ; 回车换

5、行 MOV DI,OFFSET DATA2 CALL ADDA ;使用加法运算程序 MOV SI,OFFSET DATA1 ; 将和显示在屏幕上 MOV BX,05 ; 显示结束 CALL DISPL ; 调用多次显示子程序DISPL CRLF ; 执行回车换行程序 MOV AX,4C00H ; 返回系统提示符 INT 21H DISPL PROC NEAR ;多次显示子程序 DS1: MOV AH,02 ; 显示功能号 MOV DL,SI+BX-1 ; 显示字符串中一字符 INT 21H ; DOS的中断调用 DEC BX ; BX减1,修改偏移量传播优秀Word版文档 ,希望对您有帮助,可

6、双击去除! JNZ DS1 ; 如果BX未减到零跳到DSL执行指令 RET ; 返回 DISPL ENDP ; 完成显示功能子程序定义 ADDA PROC NEAR ; 实行加法运算子程序定义、属性为NEAR MOV DX,SI MOV BP,DI MOV BX,05 ; 转换5次 AD1: SUB BYTE PTR SI+BX-1,30H ; 把加数的ASCLL转换为16进制 SUB BYTE PTR DI+BX-1,30H ; 把被加数的ASCLL转换为16进制 DEC BX ; 修改偏移量 JNZ AD1 MOV SI,DX MOV DI,BP MOV CX,05 ;包括进位,共5位 CLC ;清进位 AD2: MOV AL,SI MOV BL,DI ADC AL,BL ;进行代进位加法 AAA ;非组合BCD码的加法调整 MOV SI,AL ;结果送被加数区 INC SI INC DI ; 指向下一位 LOOP AD2 ; 循环 MOV SI,DX MOV DI,BP MOV BX,05 AD3: ADD BYTE PTR SI+BX-1,30H ADD BYTE PTR DI+BX-1,30H DEC BX ; 十六进制的数字串转化 JNZ AD3传播优秀Word版文档 ,希望对您有帮助,可双击去除! RET ADDA ENDP ; 加法程序结束 CODE END

温馨提示

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

评论

0/150

提交评论