0

我刚刚了解到,要找到第一个补码的公式是

    -x = 2^n - x - 1

我设法将它应用于二进制案例:

     -00001100 (base 2) = 2^8 - 12 - 1 
                        = 243
                        = 11110011 (1s)

但是,当我尝试将相同的公式应用于以 5 为底的数字时,

     -1042 (base 4) = 5^4 - 1042 - 1
                    = 625 - 1042 - 1
                    = - 400 (which is not the answer)

有人可以帮我吗?谢谢

4

1 回答 1

1

你不能用 2 个不同的基数计算任何公式,你必须使用它们的十进制表示(或你可以处理的其他表示)

我会在 12 月试一试:

1042 (base 5) = 1* 5^3 + 4* 5^1 + 2 = 125 + 20 + 2 = 147 dec
5^4 - 147 - 1 = 477 dec
477 = 3* 5^3 + 4* 5^2 + 2 = 3402 (base 5)

在基数 5 中:

5^4 - 1042 - 1 = 10000 - 1043 = 3402
于 2015-01-26T10:25:15.610 回答