二进制编码的十进制数运算
![](https://kiyotakawang.oss-cn-hangzhou.aliyuncs.com/%E9%BB%98%E8%AE%A4%E5%A4%B4%E5%83%8F.jpg)
二进制编码的十进制数运算
编码方式:自然BCD码(NBCD,8421码)
- 0~9:0000 ~ 1001
- 符号:正:1100 负:1101
使用原因
- 精度限制(浮点数的精度问题)
- 转换成本高
回顾:补码的加减法运算
加法
有两种情况需要特殊讨论,图中已经标了A、B(上大学之后越来越不会写字了qaq)
对A:每次进位相当于减了16,但实际上只需要加10,所以需要在原来的位上面补一个6(0110)
对B:对10 ~ 15这种值,在十进制中需要进位,所以需要一个加6来实现进位(相当于白送一个6)
因此,当表示十进制中一位的四位二进制 >= 1010时我们就需要加上0110。
加法的硬件实现
减法
总结
- 标题: 二进制编码的十进制数运算
- 作者: Kiyotaka Wang
- 创建于 : 2022-10-28 15:20:18
- 更新于 : 2022-11-21 13:00:51
- 链接: https://hmwang2002.github.io/2022/10/28/er-jin-zhi-bian-ma-de-shi-jin-zhi-shu-yun-suan/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。