标准的二进制转换方法如下。 直接举例回答:
分析示例:十进制数29;
BCD码的表示:十进制的十位数字2==BCD码用0010表示;十进制9个位数===BCD码用1001表示;所以,一般情况下,十进制数29用BCD码表示为:00101001
转换过程:将BCD码0010(小数十位为2)翻译成右边4位(实际上是它意味着将其视为一个数字或一个简单的值),然后将其乘以10以将其恢复为十进制重量(因为该数字最初代表十进制中的第十位数字)。 处理完十位数字后,再处理个位数字。
由于BCD码的权重等于二进制的前4位的权重(2^n,n为位数),因此只需将其与数字相加即可十位数之前。
简单分析:0010(十位2BCD码表示)×10+1001(个位9BCD码表示)=二进制数29
>4)*10)+((val)&15))BCD码使用二进制数分数由4位数字组成(每一位的权重为:8421,所以称为代码8421)来表示十进制数。 这里的十进制数需要特别说明。 十进制数只能是0到9之间的值。 例如6代表十进制数6;66代表两位十进制数;666代表一个三位数的十进制数。
扩展信息:
BCD码的特点:
1.8421编码直观易懂。
2.代码5421和代码2421中,大于5的数高位为1,5以下的高位为0。
3.3其余代码为8421代码加3,有上溢和下溢。
4.格雷码中两个相邻的数字仅相差一位。
BCD码的运算规则:
BCD码是十进制数,运算器对数据进行加减运算时,会按照二进制进行处理操作规则。 这样,当BCD码送入运算器进行计算时,需要对结果进行修正。
修正规则为:两个BCD码相加时,若其和等于或小于1001(即十进制数9),若其和在1010至1111之间(即十进制数9),则无需修正。 16基数之间(0AH~0FH),需要加6来固定;如果加法时该位出现进位,还需要加6来纠正。
原因是因为加法机是二进制形式,所以在对4位二进制数进行加法时,是按照“逢十六进制数”的原则进行运算的,实际上是2个十进制数。 。 加数字时,应按照“16加10,加十分之一”即6的原则进行加法,所以当总数大于9或有数字时,必须加6来修正。
参考文献:百度百科-BCD码
上一篇:29转换为二进制是多少
下一篇:二进制转换成十六进制