bcd码(bcd码转十进制)

bcd码(bcd码转十进制)

  今天小编给各位分享bcd码(bcd码转十进制),如果能碰巧解决你现在面临的问题,别忘了关注小站,我们一起开始吧!

什么是BCD码?

BCD码也叫二进制十进制数。BCD码可分为加权码和非加权码。

其中,常见的授权BCD码有8421码、2421码和5421码,非授权BCD码有3个及以上码、3个及以上循环码和格雷码。

8421BCD码是最基本和最常用的BCD码。它类似于四位自然二进制码,每一位的权重为8、4、2、1,所以称为授权BCD码。

5421BCD码和2421BCD码都是加权码,它们的权重从高到低分别是5,4,2,1和2,4,2,1。

其余三个码由8421个码加3构成,是一种“9的自补码”。剩下的3个循环码是变权码,在不同的码中每个比特不代表一个固定值。主要特征是两个相邻码之间只有一个比特具有不同的状态。

格雷码是一系列数字,是一个不加权的码,相邻两个码之间只有一个取值范围。

bcd码的功能及其编码方法

二进制编码十进制(BCD)数据类型在计算机系统中已经存在了很长时间。BCD格式通常用于简化使用十进制数字的设备的处理,例如时钟和计时器,它们必须向人们显示数字。处理器不是把十进制数转换成二进制数进行数学运算,然后再变回十进制;相反,您可以将数字保存为BCD格式并执行数学运算。

BCD的名字说明了它的作用。它以二进制格式编码十进制数。每个BCD值是一个无符号的8位整数,范围从0到9。在BCD中,大于9的8位值被认为是非法的。包含BCD值的字节组合在一起表示十进制数。在多字节BCD值中,最低的字节保存一位的十进制值,下一个较高的字节保存十位的值,依此类推。

例如,decimal 214表示为BCD值00000010 0000001 00000100。高位字节保存一百位的值(2),下一个字节保存十位的值(1),最低的八位保存一位的值(4)。

BCD用所有字节表示每个十进制数,浪费空。打包的BCD就是为了弥补这一损失而创建的。压缩BCD允许一个字节包含两个BCD值。字节的低4位包含低BCD值,字节的高4位包含高BCD值。

bcd码的最大范围

BCD码的最大值是9999,因为一个字有16位,每4位代表一个十进制数;

1001100110011001:对应9999,最大值。

上述二进制数在十六进制中也表示为16#9999,但其十进制值不是9999,而是39321。

一个字节的最大十六进制数是:FFFF。

9999十进制数转换成十六进制数没有错。是270F,其中9999不是BCD码,是十进制数。数据在plc中以二进制形式存储,不同的格式代表不同的数字。比如某些数据以BCD码格式存储时,如果要显示为十进制,就必须进行转换,否则值就是错误的。以系统时钟为例,读取的时间值以BCD码存储。如果取今年的年份,那么这个字节对应的BCD码为:0001 0101对应的BCD码值为15,但系统显示的是十进制数,为21;所以必须改造。

///我的理解是,BCD是一种数据存储格式,这个数据可以用在其他数据场合,所以意义不一样。

bcd码为什么有八位?

这是由BCD码的编码规则决定的。首先,我们必须了解什么是BCD码。

BCD码代表一个有四个二进制数字的十进制数。在计算机中,一个基本的存储单位(通常称为字节)是8个二进制位,所以一个字节只能代表一个2位的BCD码。十进制数的最大值是9,所以一个字节代表的BCD码的最大值是99。

BCD码将十进制符号转换成几个二进制数字。

标准二进制的转换方法如下,直接用BCD码表示,并举例说明:十进制数上的十进制数是2 == BCD码是0010;一位上的十进制数= = = BCD码表示为1001;所以一般情况下,十进制数29表示为BCD码:0010 1001转换过程:将BCD码0010(十进制数为第十位的2)右移4位(实际表示为个位数,或者简单的数值),然后乘以10,恢复十进制数的权重(因为这个数原本表示十进制数的第十位)。

处理完十位数上的数字后,再处理一位数上的数字。

因为BCD码的重量和二进制的前四位是一样的(2 n,其中n是位数),直接加到前十位的数字上就行了。简单分析:二进制数C码0010(用十进制位上的两个BCD码表示)× 10+1001(用十进制位上的九个BCD码表示)= 29,意思是:# define BCD _ to _ bin(val)((val)> > 4)* 10)+((val)。

这里,您应该指定一个十进制数。十进制数字只能是介于0和9之间的数值。

比如6代表十进制数6;66是代表两位数的十进制数;666是代表三位数的十进制数。扩展数据:BCD码的特性:

1.8421编码直观易懂。

2、5421码和2421码,大于5的位数都是高阶1,5以下的高阶是0。

3.剩下的3码是8421码加3,有溢出和溢出空空网格。

4.两个相邻格雷码的数量仅相差一位。BCD码是十进制数。当运算符增加或减少数据时,将根据二元运算规则进行处理。

这样,当BCD码传输给操作员进行运算时,结果需要进行修正。校正的规则是:当两个BCD码相加时,如果和等于或小于1001(十进制数9),则不需要校正;如果和在1010到1111之间(即十六进制数0AH~0FH),需要加6修正;如果标准在加的时候产生进位,需要加6来修正。

之所以这样,是因为机器加的是二进制数,所以在加四个二进制数时,是按照“每十六进制一”的原则计算的,而实际加两个十进制数时,要按照“每十进制一”的原则加。16和10的差是6,所以当和超过9或者有进位时,要加6来修正。

BCD码中c代表的十进制数是多少?

BCD(二进制编码十进制码),用4位二进制数表示1位十进制数的10位,是二进制数编码形式,也是二进制编码的十进制码。

十六进制数ABC,A相当于十进制10,B相当于十进制11,C相当于十进制12。

转换成十进制是:

10*16*16+11*16+12 = 2560+176+12 = 2748

2) BCD,d相当于十进制13。换算成十进制,就是11 * 16 * 16+12 * 16+13 = 2816+192+13 = 3021。

以上内容就是为大家分享的bcd码(bcd码转十进制)相关知识,希望对您有所帮助,如果还想搜索其他问题,请收藏本网站或点击搜索更多问题。

以上就是由优质生活领域创作者 嘉文社百科网小编 整理编辑的,如果觉得有帮助欢迎收藏转发~