#计算机基础–原码、反码、补码
以byte类型:+7和-7为例
10进制 二进制
7 → 0b111
-
原码:
正数:正数的符号位为0,其他位为数值位; 负数:负数的符号位为1,其他位为数值位; 原码:一个数字的绝对值转为二进制后,在数值位空位补0,拼上符号位的整体称为原码。 符号位 数值位 完整原码 +7 0 0000111 00000111 -7 1 0000111 10000111 -
反码:
正数:正数的反码和原码相同。 负数:负数的反码为原码数值位取反,即1→0,0→1;符号位不变。 符号位 数值位 完整反码 +7 0 0000111 00000111 -7 1 1111000 11111000 -
补码:
正数:正数的补码和反码相同。 负数:负数的补码为反码的数值位加1;符号位不变。 符号位 数值位 完整补码 +7 0 0000111 00000111 -7 1 1111001 11111001
总结:正数原码、反码、补码相同;负数的补码可以这样理解:以byte为例,值域(0,-128],所以负数a,(补)a= -128 - a;
注:1、对于补码的概念不理解,对于数学几何中补角的概念应该都很熟悉,参考理解;
2、对于0,在计算机中规定只有+0,没有-0, 0b10000000 → -128
本文详细解析了计算机基础中的原码、反码、补码概念,通过+7和-7的例子,清晰展示了不同编码方式下二进制的转换过程,强调了补码在负数表示中的独特作用。
553

被折叠的 条评论
为什么被折叠?



