为什么补体的公式不起作用?

Why didn't the complement's formula work?

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

    -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)

有人可以帮助我吗?谢谢

您无法计算任何包含 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