BCD码

用4位二进制数来表示十进制数中的0~9这十个数码的编码形式,简称为BCD码。

BCD码全称

BCD码英文全称为Binary-Coded Decimal,简称为BCD码或者二-十进制代码,亦称为二进码十进数。

BCD码优点

这种编码形式使二进制和十进制之间的转换能够快捷进行。采用BCD码,既可保存数值的精确度,又可避免使电脑作浮点运算时所消耗的时间。

BCD码应用

最常用于会计系统的设计里,因为会计制度经常需要对很长的数字串做准确的计算。也被用于其他需要高精度计算的场合。

大数计算等等问题可能都会应用到该问题。

有权码和无权码

有权码和无权码区别是每一位是否有权值。

例如,8421BCD码“0111=7”,0×8+1×4+1×2+1×1=7,8无权值,其他都有权值。

BCD码分类

(1)BCD码分为有权和无权两类:有权BCD码:8421码,2421码,5421码,...

无权BCD码:余3码,格雷码,...

其中,8421码是最常用的有权BCD码。

(2)BCD码又可分为压缩式和非压缩式两类。非压缩式一般是一个字节来表示,其中高四位置0,低四位表示相应数字。压缩式仅采用四位表示相应的数字。

8421码

其他较常用的BCD码

各种BCD码的特点

8421码编码直观,易于理解,最常用

5421码和2421码中大于5的数字都是高位为1,5以下的高位为0

余3码是在8421码基础上加上3,有上溢出和下溢出的空间

BCD码举例

以8421码为例。

(1)十进制数:123

对应的8421码为:0001 0010 0011

(2)8421码:0011 0010 0001

对应的十进制数为:321

8421码的进位

因为8421码中的9为1001,10为0001 0000,可见8421码遇见1001就产生进位。而普通的二进制码,到1111才产生进位10000。

BCD码运算

将BCD码传送给运算器运算时,需要进行修正。

修正规则为:当两个BCD码相加,如果和等于或小于 1001(即十进制数9),不需要修正;

如果相加之和在 1010 到1111(即十六进制数 0AH~0FH)之间,则需加 6 进行修正;

如果相加时,本位产生了进位,也需加 6 进行修正。

运算举例

(1)计算1+2。

0 0 0 1

+0 0 1 0

0 0 1 1

结果为3,小于9,不需要修正。

(2)计算5+8。

0 1 0 1

+1 0 0 0

1 1 0 1

结果大于9,需加 6 进行修正。

1 1 0 1

+0 1 1 0

1 0 0 1 1

10011对应的十进制数为13。

参考资料

(1)百度百科:BCD码

--------------------- 本文来自 三五月儿 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/yl2isoft/article/details/16916889?utm_source=copy

bcd码 php,转载:BCD码相关推荐

  1. java bcd码_java中BCD编码

    Java中实现的BCD编码,供有兴趣的参考,欢迎批评指正 public class BCDCode { /** * * * @param bcd 数字字符串 * @return * @see [类.类 ...

  2. 计算机编程ebcdic码,EBCDIC和BCD码

    EBCDIC EBCDIC(Extended Binary Coded Decimal Interchange Code)(扩展二进制编码的十进制交换码),是字母或数字字符的二进制编码,是 IBM 专 ...

  3. BCD码、8421码、余三码、格雷码

    用四位二进制代码来表示一位十进制数,称为二--十进制编码,简称BCD(Binary Coded Decimal)码.根据代码的每一位是否有权值BCD码可分为有权码和无权码两类,应用最多的是8421BC ...

  4. BCD码 —— 8421码,余3码,2421码

    引入 在计算机内部,数值数据的表示方法有以下两大类 直接用二进制数表示.无符号数用来表示无符号整数(如地址等信息):定点数用来表示整数:浮点数用来表示实数 二进制编码的十进制数.一般采用BCD码来表示 ...

  5. php bcd编码,什么是BCD码、8421码、余三码、格雷码

    用四位二进制代码来表示一位十进制数,称为二--十进制编码,简称BCD(Binary Coded Decimal)码.根据代码的每一位是否有权值BCD码可分为有权码和无权码两类,应用最多的是8421BC ...

  6. 计算机中bcd的中文意思,BCD码

    同义词 bcd(Binary-Coded Decimal‎缩写)一般指BCD码 BCD码(Binary-Coded Decimal‎),用4位二进制数来表示1位十进制数中的0~9这10个数码,是一种二 ...

  7. php压缩bcd码,什么是BCD码,什么是压缩的BCD码?二者有什么区别?

    在数字系统中,各种数据要转换为二进制代码才能进行处理,而人们习惯于使用十进制数,所以在数字系统的输入输出中仍采用十进制数,这样就产生了用四位二进制数表示一位十进制数的方法,这种用于表示十进制数的二进制 ...

  8. BCD码中的8421码 2421码 5421码和余3码的简单使用

    BCD码 二进制编码的十进制数(Binary Code Decimal,BCD).通常采用4位二进制数来表示一位十进制数中的0~9这十个数.这种编码可以使二进制和十进制之间的转换得以快速进行.但是二进 ...

  9. BCD码-8421码、5421码、2421码、余3码

    一.BCD码的转换原理 「BCD码」使用 4 位二进制来表示 1 位十进制,即使用 4 个位来存储一个十进制的值,使二进制和十进制之间的转换以快捷的进行. 比如 使用4位二进制 0000 表示 十进制 ...

最新文章

  1. Java 服务端推送消息有那么难吗?
  2. Ubuntu下安装make
  3. 事件绑定、事件监听、事件委托
  4. php5.6.16,OSX 10.11 中重新编译PHP5.6.16问题
  5. Wamp升级php到7.3版本
  6. 基于《悉尼协议》框架下Java课程案例教学研究
  7. 【Unity新闻】Unity发布白皮书《11种有效的玩家参与策略》
  8. springmvc中Date类型转换
  9. IE6 与 GZIP, BUG汇总
  10. 高等数学(第七版)同济大学 习题1-8 个人解答
  11. 2022快速计算机视觉EI国际会议汇总
  12. 寄人东篱下,愤然见南山
  13. WhatsApp使用教程
  14. 在SVG中旋转图形,需要设置各个图形的旋转中心点
  15. CSS3初级学习(二)背景图片叠加
  16. 腾讯优图api接口+Python SDK(1)
  17. Vue - 判断终端是否为:IE内核、opera内核、苹果、谷歌内核、火狐内核、是否为移动终端、ios终端、android终端、是否为iPhone或者QQHD浏览器、是否iPad、是否微信、是否QQ
  18. R语言在图上标出点坐标_R语言做图plot参数
  19. loadrunner 操作mysql_loadrunner学习笔记(从MYSQL中取数据)
  20. 滤波电容为什么要靠近放置,储能电容为什么均匀放置?去耦半径是什么?滤波电容如何打孔?

热门文章

  1. c语言求粮食分配问题该怎么编程,关于C语言编程题,额不会,求赐教!!
  2. win10无法关机解决方法
  3. 毫米波雷达ADC数据采集
  4. (建议收藏)服务器宕机了不要慌,这样排查效率高
  5. 计算机科学与技术学习路线编程基础四大件应用实践编程(含C++学习路线)
  6. Flutter 使用GridView模仿微信群聊UI
  7. aix安装bff_AIX程序打包
  8. python房价预测_您的选房系统已上线——利用python和R如何进行房价预测
  9. VB创建写字板小程序
  10. jquery实时监控屏幕宽度