8421BCD码的加6修正问题的疑惑
我是以在校学生,刚接触到8421BCD码,啥都不懂。书上说当计算机进行二进制加法的时候,当低四位向高四位进位的或者低位大于9的时候需要加6修正,即0110。我想知道为什么...
我是以在校学生,刚接触到8421BCD码,啥都不懂。书上说当计算机进行二进制加法的时候,当低四位向高四位进位的或者低位大于9的时候需要加6修正,即 0110 。我想知道为什么不是加7或者加5,也就是说 6 是怎么推导出来的?我想知道详细的推导过程。希望高手不吝赐教。谢谢。
展开
展开全部
调整原理:先看一个例子
计算8+9 0000 1000
见右式 + 0000 1001
——————
0001 0001 =11
高4位上的1代表16,而实际上仅应为10,即多进了6.
结果应为17,而计算机相加为11,原因在于运算过程中,如遇到低4位往高4位产生进位时,是按逢十六进一的规则,但BCD码要求逢十进一,因此只要产生进位,个位就会少6,这就要进行加6调整 ,另外实际上当低4位的结果大于9时,也应进行加6调整,原因是逢十没有进位,故用加6的方法强行产生进位 (希望能帮到你)。
计算8+9 0000 1000
见右式 + 0000 1001
——————
0001 0001 =11
高4位上的1代表16,而实际上仅应为10,即多进了6.
结果应为17,而计算机相加为11,原因在于运算过程中,如遇到低4位往高4位产生进位时,是按逢十六进一的规则,但BCD码要求逢十进一,因此只要产生进位,个位就会少6,这就要进行加6调整 ,另外实际上当低4位的结果大于9时,也应进行加6调整,原因是逢十没有进位,故用加6的方法强行产生进位 (希望能帮到你)。
展开全部
BCD码就是10进制码,8421表示不同位上代表的数值是多少
比如
23用8421码表示为 0010 0011,再比如9 + 6 = 15分别表示为
9 1001
6 0110
9 + 6 1111
但是15表示 0001 0101
为了让 9+ 6 =15,这时候 1111 +
6 0110
= 0001 0101 正好是15,所以都要加6
也可以理解为16进制 - 10进制 = 6.
如果有17进制那就要加7了,15进制就要加5了。可惜没有这个进制
比如
23用8421码表示为 0010 0011,再比如9 + 6 = 15分别表示为
9 1001
6 0110
9 + 6 1111
但是15表示 0001 0101
为了让 9+ 6 =15,这时候 1111 +
6 0110
= 0001 0101 正好是15,所以都要加6
也可以理解为16进制 - 10进制 = 6.
如果有17进制那就要加7了,15进制就要加5了。可惜没有这个进制
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
8421BCD 码,是代表一位十进制数的。
十进制数的运算,是:逢十进一。
计算机,是按照二进制来运算,是:逢二进一。
对于四位二进制,则是:逢十六进一。
如果超过了十,它还不进位!
那么,就给它加个六!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询