例子2:A=-0.1010010,B=0.0110100,补码的结果是1,1.1100010,为什么原码是-0.0011110,能介绍下计算过程么
来源:4-8 定点数的加减法运算

tony_CTO
2019-07-14
例子2:A=-0.1010010,B=0.0110100,补码的结果是1,1.1100010,为什么原码是-0.0011110,能介绍下计算过程么
写回答
2回答
-
尚鱼
2019-07-18
首先要明白,计算机在计算的时候是以两个数的补码形式进行计算的,也就是说求出来的数值也是补码形式的。
原码求补码的方法是每一位取反(1变0,0变1),然后加1,得出补码。同样,你拿到一个补码,要想求出它的原码,也是每一位取反(1变0,0变1),然后加1,得出原码。
这里结果是1,1.1100010,这是补码形式,那么要求它的原码,就要每一位取反(1变0,0变1),然后加1。
最高位(左边第一位)是符号位(0表示正数,1表示负数),符号位仅表示这个数正负,不参与转原码的过程,所以把符号位去掉得到1.1100010,每一位取反得0.0011101,然后加1得到原码表示0.0011110,最后把去掉的符号位补上(把负号补上),就是-0.0011110。
112019-07-18 -
咚咚呛
2019-07-14
结果的补码:
1,1.1100010,先得到反码:
1,0.0011101,然后末位加一:
1,0.0011110。
00
相似问题