首页 > 编程知识 正文

什么是bcd码,8421bcd编码如何实现,什么是bcd码十进制计数器中的无效状态

时间:2023-05-05 21:22:16 阅读:230255 作者:50

用四位二进制代码来表示一位十进制数,称为二--十进制编码,简称BCD(Binary Coded Decimal)码。根据代码的每一位是否有权值BCD码可分为有权码和无权码两类,应用最多的是8421BCD码,无权码用得较多的是yedbm和格雷码,我们通常所说的BCD码指的是8421BCD码。这些编码跟十进制数对应的关系如下: 十进制数8421BCD码余3码  格雷码00000001100001000101000001200100101001130011011000104010001110110501011000111060110 1001 1010701111010100081000101111009100111000100 8421BCD码中的“8421”表示从高到低各位二进制位对应的权值分别为8、4、2、1,将各二进制位与权值相乘,并将乘积相加就得相应的十进制数。例如,8421BCD码“0111”,0×8+1×4+1×2+1×1=7D,其中D表示十进制(Decimal)数。

    值得特别注意的是,8421BCD码只有0000~1001共十个,而1010、1011...等等不是8421BCD码!!

yedbm是在8421BCD码的基础上,把每个数的代码加上0011(对应十进制数3)后得到的。格雷码的编码规则是相邻的两代码之间只有一位二进制位不同。不管是8421BCD码还是yedbm还是格雷码,总是4个二进制位对应一个十进制数,如十进制数18对应的8421BCD码就是0001  1000。

压缩的BCD码用4个二进制位来表示十进制数,上面提到的就是压缩的BCD码。而非压缩BCD码用一个字节(八个二进制位)表示一位十进制数,高4位总是0000,低4位的0000~1001表示相应的十进制数。例如,十进制数87D,采用非压缩8421BCD码表示为二进制数是00001000 00000111B。这种非压缩BCD码主要用于非数值计算的应用领域中。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。