Binary 如何使用2'表示有符号的数字;补语

Binary 如何使用2'表示有符号的数字;补语,binary,Binary,表示有符号数字的一种方法是使用符号位 另一种方法是使用2的补码?我说得对吗 如果是, 考虑数字8。等价二进制是0000 1000 然后根据2的补码法 我们将反转位,使0000 1000变为1111011 2.添加一个,使11110111变为1111000. 使用1111 1000。它们是如何表示符号位的?在2的补码中,最高有效位表示负值。因此,对于8位数字,每个位的十进制等效值为: -128 64 32 16 8 4 2 1 因此,11111000个和等于-8。符号位将是最左边的一个:0-正,1

表示有符号数字的一种方法是使用符号位

另一种方法是使用
2的补码
?我说得对吗

如果是, 考虑数字8。等价二进制是
0000 1000

然后根据2的补码法

  • 我们将反转位,使
    0000 1000
    变为
    1111011
    2.添加一个,使
    11110111
    变为
    1111000.

  • 使用
    1111 1000。
    它们是如何表示符号位的?

    在2的补码中,最高有效位表示负值。因此,对于8位数字,每个位的十进制等效值为:

    -128 64 32 16 8 4 2 1

    因此,11111000个和等于-8。

    符号位将是最左边的一个:0-正,1-负。另一种方法是(假设为8位数字):

    所以,当你使用2的补码时,你实际上有不同数量的“符号位”,在这个例子中,你有4个

    更新


    上面写错了,上面写的是“最左边的”,应该是“最右边的”

    假设我们刚刚给出了一个二进制1111 0001。您将如何在有符号数和震级数之间进行分类。i、 e,有多少个msb用于签名bit@Vinoth是的,我在上面的回答中弄错了,2的补码是:从右到左复制到第一个1,包括第一个1,然后把所有的东西都反转到左边。不管怎样,当你在2的补码中工作时,你总是可以把MSB看成是一个符号位。@ GPEGE“不同的”符号位“,”,符号位的变化数将是固定的。或者数量不同number@Vinoth如果你只想知道这个数字是正数还是负数,你可以只看最重要的位,就像1的补码2的补码符号位不被使用一样。所以在2的补码末尾我们得到11111000。我们要在这里使用msb来查找符号。我的困惑是,所有8位都将仅用于查找值?
    number 8 -> 1000
    +8: fill from the leftmost 1 leftwards with sign bit 0 = positive -> 0000 1000
    -8:  fill from the leftmost 1 leftwards with sign bit 1 = negative -> 1111 1000