BCD ( Binary - Coded Decimal )码,也叫二-十进制码,主要就是用4位二进制数来表示1位的从0~9的十进制数。 BCD 码主要分为有权码(8421码,5421码,2421码)和无权码(余3码,余3循环码)

8421码

数值权值为8、4、2、1;0~9就是按照二进制来的。超出9以后把10进制情况下的数按照个十百千万的位数拆开,并把每一位按照二进制合起来。

例如:19      十位:1=0001       个位:9=1001合起来后为:00011001=(0*8+0*4+0*2+1*1)*10+(1*8+0*4+0*2+1*1)=19

5421码

数值权值为5、4、2、1;将0-9分为两部分,0-4与二进制相同,5-9转化为余三码,即二进制加上0011。

例如:48      二进制:4:0100  8:1000   5421码:4:0100 8:1000+0011=1011

01001011=(0*5+1*4+0*2+0*0)*10+(1*5+0*4+1*2+1*1)=48

2421码

数值权值为2、4、2、1;2421BCD码 具有自补性,即十进制4、5代码,3、6代码,2、7代码,1、8代码,0、9代码互为反码,权对应同位置的二进制数相加,二进制为1的时候加权值,二进制为0的时候加0。

例如: 9   二进制:1001 2421:1111=1*2+1*4+1*2+1*1=9

余3码

余三码(余3码)是由8421码加上0011形成的一种无权码,它的每个字符编码比相应的8421码多3。余3码的特点:当两个十进制数的和是9时,相应的余3码的和正好是15,于是可自动产生进位信号,而不需修正。

例如:  8     二进制:1000    

余3码:1000+0011=1011

 

 

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐