我对此有点迷失。我需要使用两个小数位0.(a-1)(a-2)
像这样,现在我可以使用.00 .01 .10
and .11
但我也需要负数(2的补码),所以会.10
be -.5
?或者会是-.25
?
与.11
,那就是-.75
?或者会是-.5
?
我很确定这两种情况都是前者,但我并不完全肯定。
在二进制补码表示法中,负数的所有最高有效位都设置为 1。假设您将这些数字存储为 8 位,其中 2 位于“二进制小数点”的右侧。
根据定义,x + -x = 0
,所以我们可以写:
0.5 + -0.5 = 0.10 + 111111.10 = 0 // -0.5 = 111111.10
0.25 + -0.25 = 0.01 + 111111.11 = 0 // -0.25 = 111111.11
0.75 + -0.75 = 0.11 + 111111.01 = 0 // -0.75 = 111111.01
等等。
像这样使用8位,你可以存储的最大数字是
011111.11 = 31.75
最小正数是
000000.01 = 0.25
最小负数是
111111.11 = -0.25
最小的(即最负的)是
100000.00 = -32
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)