BCD码是将十进制数符转换成几位二进制
转化标准二进制方法如下,直接用例子来回答:用BCD码表示:十位上的十进制数为2==BCD码表示为0010;个位上的十进制数9===BCD码表示为1001;所以总的来说十进制数29用BCD码表示为:00101001转换过程:把BCD码0010(十进制数为十位上的2)右移4位(其实表示当作一个个位数,或者说单纯的数值),然后乘以10还原到十进制的权重(因为这个数本来表示的就是十进制数中的十位)。
处理完十位上的数,接着处理个位上的数。
因为BCD码的权重和二进制的前四位权重是一样(2^n,n为位数),所以直接用前面的十位上的数加上它就可以了。简单点分析:0010(十位上的2BCD码表示)×10+1001(个位上的9BCD码表示)=29的二进制数C代码表示:#defineBCD_TO_BIN(val)((((val)>>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、格雷码相邻的2个数只有一位不同。BCD码是十进制数,而运算器对数据做加减运算时,都是按二进制运算规则进行处理的。
这样,当将BCD码传送给运算器进行运算时,其结果需要修正。修正的规则是:当两个BCD码相加,如果和等于或小于1001(即十进制数9),不需要修正;如果相加之和在1010到1111(即十六进制数0AH~0FH)之间,则需加6进行修正;如果相加时,本位产生了进位,也需加6进行修正。
这样做的原因是,机器按二进制相加,所以4位二进制数相加时,是按“逢十六进一”的原则进行运算的,而实质上是2个十进制数相加,应该按“逢十进一”的原则相加,16与10相差6,所以当和超过9或有进位时,都要加6进行修正。
相关文章
- 建行银行装修贷款利率?
- 申请过的网贷怎么注销?
- 网贷举报投诉平台有哪些?
- 什么贷款最好办?
- 001042基金净值查询今天 ?
- i贷今日额度已被抢光,您出手慢了是什么意思?
- 花呗补充资料提额8000可信吗?花呗立即提额方法有吗?
- picc车险电话号人工服务电话
- 农业银行开户行查询短信查询 ?
- 贷款50000一年利息是多少?计算方式有什么?
- 网上好借钱的平台有哪些可靠?
- 用房子贷款10万一年多少利息呢?
- 2018平安i贷几点开额度?
- 在分期乐上借10000得还多少?
- 津巴布韦最大面值货币
- 360借条开通要查征信吗我的征信会不会有影响
- 华融湘江银行大额存单有风险吗?
- 18岁网贷能过的口子
- 西安征信报告打印地点
- 贷款1万元一年利息大约是多少?