用BCD码进行十进制数加法

用BCD码进行十进制数运算 ( 立竖式 )
256+789=?
帮帮忙,写得详细一点,我自学实在是看不懂,我看书上说得我也不明白!
或者直接把答案告诉我也可以,谢谢!

:
  0 2 5 6 -----> 0000 0010 0101 0110
+ 0 7 8 9 -----> + 0000 0111 1000 1001
--------1--1---------------------------------------------------
  1 0 4 5 0000 1001 1101 1111

最后面的1111,应该是十五。
使用调整指令,就会给它加6,那么它就变成 1 0101了。
还有两个数字,都需要调整。
最终结果:
  0 2 5 6 -----> 0000 0010 0101 0110
+ 0 7 8 9 -----> + 0000 0111 1000 1001
--------1--1---------------------------------------------------
  1 0 4 5   0001 0000 0100 0101
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-03-14
楼上写错了,产生进位应该还加上0110(即十进制的6)进行修正zd,因为BCD码每四位数字表示内一个一位十进制数,但是四位二进制数能表示16个数,当产生进位容时,有6个数没有加上,故产生进位时,要加上6
(1)
0111
0100
1000
+
0001
0110
1001
-------------------
1000
1011
0001
+
0110
0110
-------------------
1001
0001
0111
748+169
=
917
(2)
0011
1001
1001
+
0100
1000
1001
-------------------
1000
0010
0010
+
0110
0110
-------------------
1000
1000
1000
399+489
=888
第2个回答  2012-03-12
BCD码(Binary-Coded Decimal‎)亦称二进码十进数或二-十进制代码。用4位二进制数来表示1位十进制数中的0~9这10个数码。
BCD码可分为有权码和无权码两类:有权BCD码有8421码、2421码、5421码,其中8421码是最常用的;无权BCD码有余3码、格雷码等。
所以你的答案无法解答。你要指出具体是什么BCD码。当然一般情况下指的是8421码,具体如下:
256=0010 0101 0110; 789=0111 1000 1001;
相加:0010 0101 0110
+0111 1000 1001
---------------------------------
1001 1101 1111=9DF(16进制)=9*16^2+D*16+F=2527(10进制)本回答被提问者采纳
第3个回答  2012-03-13
一共是1111
第4个回答  2012-03-13
我也可以,谢谢!

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网