考研帮 > 数学 > 每日一练

2.1 制与编码

2.1.3 BCD码

  BCD(Binary Code Decimal,二进制编码的十进制数)是把十进制数的各位数字变成一组对应的二进制代码。BCD码常见的表示形式一般有两种:压缩BCD码和非压缩BCD码。
  压缩BCD码的每位BCD码用4位二进制表示,1个字节(8位二进制)表示2位BCD码,如10010011B表示二进制数93;非压缩BCD码的每位BCD码用1个字节表示,高4位总是0000,低4位的0000~1001表示0~9。由此可见,不管是压缩BCD码还是非压缩BCD码,表示数据的有效位都是4位,4位其实可以表示0~15这16种不同的状态,但在BCD码中只需要其中的10种状态。那么其组合的方式就可以有多种,换句话说,就是可以有多种不同的BCD编码方案,目前,常见的BCD编码主要有8421码、2421码和余3码等。
  8421码又称自然BCD码,其4位有效位的二进制代码的位权从高到低分别为8、4、2、1,这种编码的主要特点是简单直观。8421码是一种有权码,设其各位的值为b3b2b1b0,则它所表示的十进制数为D=8b3+4b2+2b1+1b0,在8421码中不允许出现1010~1111。
  2421码的4位有效位的二进制代码的位权从高到低分别为2、4、2、1,它也是一种有权码,设其各位的值为b3b2b1b0,则它所表示的十进制数为D=2b3+4b2+2b1+1b0。在2421码中不允许出现0101~1010。
  余3码是一种无权码,余3码是在8421码的基础上加0011形成的,因每个数都多余3,故称余3码。在这种编码中,各位的1不表示一个固定的十进制数值,因而不直观,且容易搞错;不允许出现0000~0010、1101~1111。
  由于BCD码的特性,在用BCD码进行运算时,可能需要进行修正。
  例如,计算3+5,对应的8421码表示为0011+0101=1000,即答案为8,这是正确的。但是,如果我们计算6+7,对应的8421码表示为0110+0111=1101,这已经不在8421码的范围内,此时需要进行修正。修正的方法是本位加6,并向高位进1。
  在使用余3码进行计算时,从最高位产生的进位是真正的进位,对每4位的结果,如果是小于等于9的,则减3;如果大于9,则加3。

关于"最后阶段,真题的正确打开方式_备考经验_考研帮"15名研友在考研帮APP发表了观点

扫我下载考研帮

考研帮地方站更多

你可能会关心:

来考研帮提升效率

× 关闭