我想找到 0000 的 2 的补码
I want to find 2's complement of 0000
我想设计一个硬件来给出输入的 4 位二进制数的 2 的补码。但是我停留在第一个输入: 0000.Because 我通常用来求 2 的补码的方法是先找到二进制数的 1 的补码,然后将 1 添加到 it.But 如果我对 0000 做同样的事情,那么它会给我 5 位数 10000。这就是问题所在。
如果您使用 n
位值,则必须 切断 高位。四位0000
的二进制补码是10000
的后四位,即0000
。否则 100
的补码将是:
1111111111...ad infinitum...1111111011
而不是正确的 011
。
那(无关位的切断)是有道理的,因为零的否定是零(尽管这对于一个的补码或符号幅度可能是有争议的,其中 -0
是一种明显的可能性)。
如果你设计硬件,请参阅产生4位补码的硬件电路。
我想设计一个硬件来给出输入的 4 位二进制数的 2 的补码。但是我停留在第一个输入: 0000.Because 我通常用来求 2 的补码的方法是先找到二进制数的 1 的补码,然后将 1 添加到 it.But 如果我对 0000 做同样的事情,那么它会给我 5 位数 10000。这就是问题所在。
如果您使用 n
位值,则必须 切断 高位。四位0000
的二进制补码是10000
的后四位,即0000
。否则 100
的补码将是:
1111111111...ad infinitum...1111111011
而不是正确的 011
。
那(无关位的切断)是有道理的,因为零的否定是零(尽管这对于一个的补码或符号幅度可能是有争议的,其中 -0
是一种明显的可能性)。
如果你设计硬件,请参阅产生4位补码的硬件电路。