emu8086编写程序实现两位十进制数相加,并将十进制的和通过DOS调用显示输出
时间: 2024-05-05 13:21:48 浏览: 156
两个多位十进制数相加的汇编程序设计.doc.doc
5星 · 资源好评率100%
下面是使用emu8086汇编语言编写的程序,实现两位十进制数相加并输出结果:
```
.model small
.stack 100h
.data
num1 db 0ah ; 第一个数
num2 db 0bh ; 第二个数
sum db ? ; 两数之和
.code
main proc
mov ax, @data ; 初始化数据段寄存器
mov ds, ax
mov al, num1 ; 将第一个数存储到 al 寄存器
add al, num2 ; 将第二个数加到 al 寄存器中
daa ; 将结果转换为十进制
mov sum, al ; 将结果存储到 sum 变量中
mov ah, 09h ; 调用 DOS 中断显示结果
mov dx, offset sum
int 21h
mov ah, 4ch ; 退出程序
int 21h
main endp
end main
```
在上面的程序中,我们首先将两个数 `0ah` 和 `0bh` 存储到 `num1` 和 `num2` 变量中。然后,我们将第一个数加载到 `al` 寄存器中,并使用 `add` 指令将第二个数加到 `al` 寄存器中。由于我们要输出的是十进制数的和,因此我们使用了 `daa` 指令将结果转换为十进制。最后,我们将结果存储到 `sum` 变量中,并使用 DOS 中断 `int 21h` 显示结果。
阅读全文