二进码十进数

✍ dations ◷ 2025-04-05 00:15:58 #数字电子,计算机算术,电脑架构,数字电路

二进码十进数(英语: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 页面存档备份,存于互联网档案馆

相关

  • 红疹疹为皮肤感染疾病的病征之一,疹通常是皮肤上的红肿、痒或皮肤粗糙。疹并没有特定的病因,可以是任何疾病所引起的。通常的病因包括病毒、免疫系统过量、食物或环境过敏所引起的
  • cDNA互补DNA(英语:complementary DNA,缩写cDNA)是一种利用逆转录酶,以RNA(通常是mRNA)为模板做成的复制品,经常用来将真核生物的基因(以mRNA形式)复制到原核生物细胞中。若一个cDNA含有许
  • 异羟肟酸异羟肟酸(英语:Hydroxamic acid),也称酰基羟胺,是具有-C(=O)-NH-OH结构的化合物,具弱酸性。可通过用醛为原料发生Angeli-Rimini反应,或以羟胺为原料制备:异羟肟酸容易水解为羧酸和羟
  • 美国各州首府列表
  • 冈崎令治冈崎令治(日语:岡崎 令治/おかざき れいじ ,1930年10月8日-1975年8月1日),日本分子生物学家,曾任职于圣路易斯华盛顿大学、史丹佛大学以及名古屋大学。冈崎教授是享誉世界的分子生
  • 翁贝托·德·阿伦卡尔·卡斯特略·布朗库翁贝托·德·阿伦卡尔·卡斯特略·布朗库陆军元帅(葡萄牙语:Humberto de Alencar Castelo Branco,1897年9月20日-1967年7月18日),巴西军事领袖及政治家。曾于1964年至1967年担任巴
  • 净菜净菜是一种预包装的蔬菜,可分为即食鲜切和即用鲜切两种类型,经过分选、切割、清洗、杀菌消毒、包装等程序之后上市。消费者购买净菜后,可直接食用或下锅烹饪,无需进行处理。一些
  • ShoesShoes 是一套基于 Ruby 语言的 GUI 开发工具。其最初由 why the lucky stiff(英语:why the lucky stiff) 开发,在他停止了一切公开活动之后,社区接手了该项目并继续开发。Sh
  • 萨尔瓦多行政区划萨尔瓦多全国共被划分为14个省(西班牙语:Departamentos),共下辖262个市镇(西班牙语:Municipios)。上述各省通常被分为如下几个地区:西部地区中部地区东部地区
  • 斯特凡三世 (巴伐利亚)斯特凡三世,(1337年-1413年9月26日)维特尔斯巴赫家族成员,巴伐利亚-因戈尔施塔特公爵(1375年—1413年在位)。巴伐利亚公爵斯特凡二世与第一任妻子西西里国王费德里科二世的女儿西西