BCD码不是二进制数,而是用4位二进制码对十进制数字符号进行编码后的十进制数,即二进制编码的十进制数,简称BCD(Binary Coded Decimal)码。BCD码与十进制数之间的转换是按4位二进制码对应1位十进制数,直接进行转换的,即1个n位十进制数对应的BCD码一定为4n位二进制码。数字系统中常用的BCD码有8421码、2421码和余3码,3种编码的特点可归纳如下。
1.8421码
8421码是一种用4位二进制码表示1位十进制数字符号的有权码,其4位二进制码从高位至低位的权依次为8、4、2、1,故称为8421码。
例如,(369)10=(0011 0110 1001)8421
8421码的位权与4位二进制数的位权完全相同,但8421码不允许出现1010~1111六种组合。其次,8421码与ASCII码的低4位相同,两者转换非常方便。
2.2421码
2421码是一种用4位二进制码表示1位十进制数字符号的有权码,其4位二进制码从高位至低位的权依次为2、4、2、1,故称为2421码。
例如,(369)10=(0011 1100 1111)2421
2421码不允许出现0101~1010六种组合。其次,2421码是一种“对9的自补代码”,可给运算带来方便。
3.余3码
余3码是由8421码加上0011形成的一种无权码,由于它的每个字符编码比相应8421码多3,故称为余3码。
例如,(369)10=(0110 1001 1100)余3码
余3码不允许出现0000、0001、0010、1101、1110和1111六种组合。其次,余3码是一种“对9的自补代码”,可给运算带来方便。