微机原理实验报告-两个多位十进制数相加的实验等
微机原理实验报告
班级:
学号:
姓名:
实验一 两个多位十进制数相加的实验
一、实验目的
学习数据传送和算术运算指令的用法
熟悉在PC机上建立、汇编、链接、调试和运行汇编语言程序的过程。
二、实验内容
将两个多位十进制数相加,要求被加数和加数均以ASCII码形式各自顺序存放在以DATA1、DATA2为首的5个内存单元中(低位在前),结果送回DATA1处。
三、程序流程图
图 3-1
四、参考程序清单
DATA SEGMENT
DATA1 DB 33H,39H,31H,37H,34H;被加数
DATA1END EQU $-1
DATA2 DB 34H,35H,30H,38H,32H;加数
DATA2END EQU $-1
SUM DB 5 DUP(?)
DATA ENDS
STACK SEGMENT
STA DB 20 DUP(?)
TOP EQU LENGTH STA
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATA
START: MOV AX,DATA
MOV DS,AX
MOV AX,STACK
MOV SS,AX
MOV AX,TOP
MOV SP,AX
MOV SI,OFFSET DATA1END
MOV DI,OFFSET DATA2END
CALL ADDA
MOV AX,4C00H
INT 21H
ADDA PROC NEAR
MOV DX,SI
MOV BP,DI
MOV BX,05H
AD1: SUB BYTE PTR [SI],30H
SUB BYTE PTR [DI],30H
DEC SI
DEC DI
DEC BX
JNZ AD1
MOV SI,DX
MOV DI,BP姓名代码转换器百度
MOV CX,05H
CLC
AD2: MOV AL,[SI]
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论