二进码十进数

✍ dations ◷ 2025-08-03 08:57:59 #数字电子,计算机算术,电脑架构,数字电路

二进码十进数(英语:Binary-Coded Decimal,简称BCD,中国大陆称BCD码或二-十进制编码)是一种十进制数字编码的形式。在这种编码下,每个十进制数字用一串单独的二进制比特来存储与表示。常见的有以4位表示1个十进制数字,称为压缩的BCD码(compressed or packed);或者以8位表示1个十进制数字,称为未压缩的BCD码(uncompressed or zoned)。

这种编码技术,最常用于会计系统的设计里,因为会计制度经常需要对很长的数字做准确的计算。相对于一般的浮点式记数法,采用BCD码,既可保存数值的精确度,又可使电脑免除作浮点运算所耗费的时间。此外,对于其他需要高精确度的计算,BCD编码亦很常用。

BCD码的主要优点是在机器格式与人可读的格式之间转换容易,以及十进制数值的高精度表示。BCD码的主要缺点是增加了实现算术运算的电路的复杂度,以及存储效率低。

对应不同需求,各人亦开发了不同的编码方法,以适应不同的需求。这些编码,大致可以分成和两种:

8421码又称为BCD码,是十进制代码中最常用的一种。在这种编码方式中,每一位二值代码的“1”都代表一个固定数值。将每位“1”所代表的十进制数加起来就可以得到它所代表的十进制数码。因为代码中从左至右看每一位“1”分别代表数字“8”“4”“2”“1”,故得名8421码。其中每一位“1”代表的十进制数称为这一位的权。因为每位的权都是固定不变的,所以8421码是恒权码。

余3码是由8421码加上0011形成的一种无权码,由于它的每个字符编码比相应8421码多3,故称余3码。例如,十进制字符5的余3码等于5的8421码0101加上0011,即为1000。同样,余3码中也有6种状态0000,0001,0010,1101,1110和1111是不允许出现的。余3码也是一种对9的自补代码,因而可给运算带来方便。其次,在将两个余3码表示的十进制数相加时,能正确产生进位信号,但对“和”必须修正。修正的方法是:如果有进位,则结果加3;如果无进位,则结果减3。余3码与十进制之间的转换也是按位进行的,值得注意的是每位十进制数的编码都应余3。

2421码是一种有权码,权值由高到低分别为2、4、2、1,特点是大于等于5的4位二进制数中最高位为1,小于5的最高位为0。如5的2421码表示为1011而不是0101。

以下为三种常见的BCD编码的比较。

BCD-Code 页面存档备份,存于互联网档案馆

相关

  • 开放系统在热力学中,开放系统指与外界交换能量和质量的系统。系统是随意介定的:在研究一些特定组件时,相关的空间领域可被视为系统。开放系统假设了外界能量供应不能减少;实际上,这种外界
  • 杨 卫杨卫(1954年2月-),北京人,中华人民共和国固体力学专家,现任国家自然科学基金委员会主任、党组书记。2006年8月至2013年2月任中国浙江大学校长。教授,中国科学院院士,世界科学院院士
  • 统计学习理论统计学习理论(英语:Statistical learning theory),一种机器学习的架构,根据统计学与泛函分析(Functional Analysis)而建立。统计学习理论基于资料(data),找出预测性函数,之后解决问题。
  • 瓶装水瓶装水(英语:Bottled water,又称包装水、樽装水)是一包装于瓶子内的饮用水,用于个人使用和零售。瓶装水的来源可以是任一地方,包括泉水、井水、纯水、自来水,或甚至有未处理或受污
  • 神舟七号神舟七号飞船(以下简称神七)是中国第三个载人航天器,是中国“神舟”号系列飞船之一,在北京时间2008年9月25日21时10分4秒988毫秒由长征2F火箭发射升空。神七上载有三名宇航员分
  • 西里西亚战争西里西亚战争是指普鲁士与奥地利及其盟友为争夺西里西亚所发生的战争,为奥地利王位继承战争及七年战争的一部分:
  • 虹口乡虹口乡,是中华人民共和国四川省成都市都江堰市下辖的一个乡镇级行政单位。2014年12月起,虹口乡被并入龙池镇。虹口乡下辖以下地区:红色社区村、高原社区村、虹口社区村、联合社
  • AMBER力场AMBER力场是在生物大分子的模拟计算领域有着广泛应用的一个分子力场。开发这个力场的是Peter Kollman课题组,最初AMBER力场是专门为了计算蛋白质和核酸体系而开发的,计算其力
  • 伯尔耐残尸伯尔耐残尸(英语:The Bolney Torso)是指1991年10月,于南英格兰伯尔耐(英语:Bolney)发现的一具身份不明遗体。1991年10月11日,当时62岁的柯林·奥利弗(Colin Oliver)在萨塞克斯郡伯尔耐
  • 和歌山县立医科大学护理短期大学部和歌山县立医科大学护理短期大学部(日语:和歌山県立医科大学看護短期大学部/わかやまけんりついかだいがくかんごたんきだいがくぶ  *)是过去一所位于日本和歌山县和歌山市的