8086 程序将 ASCII 转换为 BCD 数
在本程序中,我们将了解如何从 ASCII 值找到等效的 BCD 数。
问题陈述
编写 8086 汇编语言程序,从一个 ASCII 值找到等效的 BCD 数。该数字存储在内存位置 2050,并将结果存储在内存位置 3050。
讨论
此程序可以将数字的 ASCII 值更改为其 BCD(十进制)形式。数字的 ASCII 值如下所示
ASCII(十六进制) | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 |
---|---|---|---|---|---|---|---|---|---|---|
BCD | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 |
从该表格中,我们可以很容易地发现 ASCII 值的最后一个半字节实际上是 BCD 等效值。因此,为了取最后一个半字节,我们对上半字节进行掩码处理,并将下半字节作为结果。
Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.
输入
地址 | 数据 |
---|---|
… | … |
2050 | 39 |
… | … |
流程图
程序
输出
地址 | 数据 |
---|---|
… | … |
3050 | 09 |
… | … |
广告