太多事情要忙,都好久没更新了,废话不多说开始吧!!!!
阅读本文所需知识:进制数转换及运算 。
文章插图
图片来源于网络
BCD码的概念
百度定义:BCD码(Binary-Coded Decimal?)亦称二进制十进制或二-十进制代码 。用4位二进制数来度表示1位十进制数从16位组合中取出的0~9这10个数码 。例如:十进制28用BCD码表示(0010 1000) ps:0010(2)1000(8)概念一目了然
- 它的作用是什么?
因为计算机中数据都是用二进制进行存储,所以二进制和十进制需要相互转换,它们转换是比较麻烦的,然而BCD码正好解决了这个问题 。BCD码把十进制每一位用4位二进制来表示 。上面那个例子就是证明 。
BCD码分类
- 压缩码和非压缩码
非压缩码:用8位二进制数来表示1位十进制数(例如:2(0000 00010))
那么问题来了,为什么不直接使用压缩码? 高效又节省空间 。
ps:因为一个字节是8位,而且每个数据所表示的长度不同 。
- 有权码和无权码
无权码:余三码、余三循环码、格雷码
文章插图
图片来源于网络
有权码8421码
8421码是BCD码最常用的编码方式,也被称为BCD码 。
位权如名:8、4、2、1 (表示范围:0~9(0000~1001),禁用码:10~16(1010~1111)
例如:543D = 0101 0100 0011B (ps:D表示十进制数;B表示二进制数)
8421码对应ASICC码的第四位相同,这特点有利于简化输入输出过程中BCD码和字符代码的转换 。
- 2421码(自补特性)加权码
例如:642D=1100 0100 0010B
问题来了,仔细观察位权里有两个2,这样就会重复问题,比如说:0101和1011都对应5 。
所以做出规定:0101~1010不许用
禁用码:0101、0110、0111、1000、1001、1010
2421码是对9的自补代码(自补性)即每一个2421码只要与自身按位取反,便可得到该数9的补数的2421码 。
例如:0100(4)即各位取反后正好为该数9的补码1011(5) 。
而0101取反后1010对应十进制10显然不满足自补码的要求 。
好处:给运算带来方便,因为可以利用其对9的补数将减法运算转变为加法运算
(0000)和(1111)、 (0001)和(1110)、 (0010)和(1101)、 (0011)和
(1100)、 (0100)和(1011)互为反码,仔细观察它们具有反射特性
做加法是若两个数之和为10正好等于二进制的16(0001+1111=16),于是便能高位自动产生进位信号 。
- 5421
注意位权不同表示的数也不同,看上面的例子相信你们也能理解了 。
禁止码:0101、0110、0111、1101、1110、1111
5421码同样也有2421码的自补性 。
文章插图
真值表
无权码
- 余三码
【BCD码详细,通俗易懂分析 bcd码是什么详解】表示范围:3~12(0011~1100)
禁 用 码 :0~2(0000~0010)、13~16(1101~1111)
那么它的作用及特点是什么?
余三码同样也有对9的自补性,0和9, 1和8,…..5和4的余3码互为反码,这在求对于10的补码很方便 。
两个余3码表示的十进制数相加时,能产生正确的进位信号,但对“和”必须修正 。
修正方式:如果有进位信号则结果+0011(3),如果没有进位信号则结果减0011(3)
例如:
文章插图
有进位需修正 所以结果0010+ 0011(余三码3)= 2(转换十进制) 2+上进位10=12(结果正确)
ps:当两个十进制数的和是10时,相应的二进制编码正好是16,于是可自动产生进位信号,而不需修正,余3码常用在BCD码运算电路中 。
不懂的看下面的真值表对应,理解格雷码再理解余三循环码 。
- 格式化电脑硬盘的详细步骤 笔记本电脑怎么格式化
- 解决Windows10系统的电脑忘记PIN码的方法 电脑pin码是什么忘记了怎么办
- 笔记本的几种解锁方式 笔记本pin码忘记了怎么解锁
- 西安财经大学代码
- 电子健康通行码怎么申请
- 最详细均衡器调整方法 杜比音效十段均衡器最佳调节
- 如何找puk码
- 电脑启用开机密码的方法 人离开电脑屏幕密码怎么设置
- 如何制作报名二维码,教你微信扫描二维码报名怎么做
- 设置自定义快捷键详细方法 电脑默认快捷键在哪里修改