我正在学习计算机科学,我无法想象自己的东西。
有这个数字:-233
使用10位表示
我需要做的是用超额表示法表示数字(2^n-1)
所以,我想出了:
1 base 10 = 0000000001
2^10-1 = 1000000000
我的符号中的1个基数10 = 1000000001
所以,我的-256是0000000001
我的255是1111111110
此符号后的-233号是什么?
本书的结果是0 1 0 0 0 1 0 1 1 1
我的结果:0 0 0 0 0 1 0 1 1 1
希望你们能帮帮我。
答案 0 :(得分:1)
我认为你走的是正确的道路,但只是做了一个小错误。
由于我不熟悉这种符号,我不得不先看看它。似乎K通常被选为2 ^(n-1)= 2 ^ 9 = 512.这意味着00 0000 0000
= -512和11 1111 1111
= 511.我不知道你是怎么得到的 - 256,也许是你的错误。
现在,从-512(00 0000 0000
)到-233,差异为279(01 0001 0111
)。这似乎是你的例子的结果。
为了便于施工,您可以这样做(假设K = 2 ^(n-1)) - 示例编号-12:
00 0000 1100
10 0000 1100
01 1111 0011
01 1111 0100