参照《计算机组成原理》唐朔飞 有如下图:
- 可以看到反码 1111 1111 对应真值是-1
计算如下:反码 1111 1111
原码 1000 0001
十进制:-1 - 可以看到反码 1000 0000 对应真值是-128
计算如下:反码 1 000 0000
原码 1 1000 0000
十进制:-128
综上结论:反码负数中是没有-0的,反码可表示的范围是:[-128,-1]
因此补码 负数可以多表示一位,因为没有-0.
正如表中显示的: 补码的+0,-0对应的都是0000 0000。