【笔记】原码反码补码
前言
有符号数的原码、反码、补码
原码
- 原码能够表示的数值范围为[-127,127]
- 第一位为符号位,其他位表示数
- 正数符号位为0,负数符号位为1
+7的原码(1Byte)
1 | 0000 0111 |
-7的原码(1Byte)
1 | 1000 0111 |
反码
- 反码能够表示的数值范围为[-127,127]
- 如果为正数,原码和反码相同
- 如果为负数,符号位不变,其他位取反
+7的反码(1Byte)
1 | 0000 0111 |
-7的反码(1Byte)
1 | 1111 1000 |
补码
- 补码能够表示的数值范围为[-128,127]
- 如果为正数,反码和原码、补码相同
- 如果为负数,反码为补码加一
+7的补码(1Byte)
1 | 0000 0111 |
-7的补码(1Byte)
1 | 1111 1001 |