补码表示的定点数相加问题!书上是这么说的:加法运算的原则是两-查字典问答网
分类选择

来自卢迪的问题

  补码表示的定点数相加问题!书上是这么说的:加法运算的原则是两个数的补码之和等于两个数之和的补码.例如,如果相求0.1010+(-0.0101),则应当先将其各自转换成补码形式,0.1010的补码为01010,

  补码表示的定点数相加问题!

  书上是这么说的:加法运算的原则是两个数的补码之和等于两个数之和的补码.例如,如果相求0.1010+(-0.0101),则应当先将其各自转换成补码形式,0.1010的补码为01010,-0.0101的补码则为11011,随后补码相加的结果为100101,有溢出,最终结果是00101,恢复二进制0.0101.

  该我说了:完全看不懂,首先这两个0.1010+(-0.0101)的数是几进制的数?怎么各自转换成补码形式?为什么0.1010的补码为01010?还有-0.0101的补码为什么是11011?怎么算的?

3回答
2020-05-06 15:30
我要回答
请先登录
郭金运

  我一个一个回答吧,首先两个二进制数相加肯定还是二进制数;其次,二进制有符号数转化为补码形式的规则如下,正数形式不变(当然小数点不用),负数是将其绝对值集对应正数补码形式按位取反末位加一即可.;最后,相加后保持位数不变,若最高位有进位直接舍去即可.

2020-05-06 15:31:47
卢迪

  -0.0101的补码不是应该是111011嘛?符号不是用1表示吗?他们转换成补码后相加又怎么得到100101的?我会追加分的。

2020-05-06 15:36:33
郭金运

  小数的符号位是用整数位表示的(双符号位除外),所以只要11011即可;加的过程如下01010+11011=100101第一位相加得1,第二位相加为2,进高位1,且此为保留成0(用十进制数加法思考对比下),以此类推,最后,高位有进位,将此位舍去,结果就是0.0101了.注意二进制数相加是逢2进1,其他与十进制数类似。

2020-05-06 15:37:19

最新问答

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读

  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  •