在8086程序中加算两个16位数,有或无进位
在本文中,我们将了解如何在8086程序中加算两个带或不带进位的16位数。
问题表述
编写8086汇编语言程序,以加算存储在内存位置3000H-3001H和3002H-3003H中的两个16位数。
讨论
8086是16位寄存器。我们可以直接将内存中的数字取到AX和BX寄存器,然后再使用ADD指令对其进行加算。如果存在进位,则将进位存储到内存中,否则只将AX存储到内存中。
- 我们取两个数BCAD + FE2D = 1BADA
输入:
| 地址 | 数据 |
|---|---|
| … | … |
| 3000 | AD |
| 3001 | BC |
| 3002 | 2D |
| 3003 | FE |
| … | … |
流程图

程序
输出
| 地址 | 数据 |
|---|---|
| … | … |
| 3004 | DA |
| 3005 | BA |
| 3006 | 01 |
| … | … |
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C编程
C++
C#
MongoDB
MySQL
Javascript
PHP