什么是-33二进制?

时间:2016-03-29 17:22:45

标签: binary

我的印象是它会是10100001,但我会通过以下选项获得多项选择题。我在这里缺少什么?

11100011

10101011

11011111

11001100

2 个答案:

答案 0 :(得分:1)

我相信答案是1101111,因为你可能正在使用two's complement代表。

首先,以二进制形式写3300100001

现在颠倒它(得到一个补码):11011110

现在添加一个(以获得两个补码):11011111

答案 1 :(得分:0)

它是11011111。经典方法由@blazs解释:用二进制写入33:00100001,反转:11011110并添加一个:11011111

为了更好地理解这种方法,首先要弄清楚如何表示-1。它小于0,比00000000小1。最自然的答案是11111111(可能更容易接受11111111以上的00000000 {。}}。

所以你有:

  3    00000011
  2    00000010
  1    00000001
  0    00000000
 -1    11111111
 -2    11111110
 -3    11111101
 -4    11111100
...    ...
-33    11011111

当您分析一段时间时,您应该能够自己重建两个补码方法(反转,添加一个)。