目录
前言
计算机中的整数常用原码反码补码来表示二进制,这三种表示方法由符号位和数值位构成,接下来我们详细解释。。。
原码
正数的符号位为0,负数的符号位为1,剩下的数值位根据二进制翻译得来,其中要注意的是正数的原码反码补码都是一样的。而负数却不一样,接下来我们将详细讲解并举例子。
正数:
3
原码
00000000 00000000 00000000 00000011
反码
00000000 00000000 00000000 00000011
补码
00000000 00000000 00000000 00000011
负数
-1
原码
10000000 00000000 00000000 00000001
反码
负数的反码规则是在原码写出来的基础上符号位不变其他按位取反
-1
原码
10000000 00000000 00000000 00000001
反码
111111111 111111111 111111111 111111110
补码
负数的补码是将反码+1
-1
原码
10000000 00000000 00000000 00000001
反码
11111111 11111111 11111111 11111110
补码
11111111 11111111 11111111 11111111
对于整形来说:数据存放内存中其实存放的是补码。