一,原码
原码表示法规定:用符号位和数值表示带符号数,正数的符号位用 “0” 表示,负数的符号位用 “1” 表示,数值部分用二进制形式表示。
如:
在八位编码下,原码 取值从 -2^7+1~+2^7-1
x[原]=01111111 x= 2^7-1
x[原]=00000000 x=+0
x[原]=10000000 x=-0
x[原]=11111111 x=-2^7+1
原码的缺陷:1,因为有着正0 和 负0,所以 原码只能表示 2^8-1 个数。
2,正负原码无法直接相加,在计算机内部计算麻烦。因为要把符号位和数值位分开计算。
如 2+(-1)= 1,但 00000010 +10000001=10000011 其真值为 -3
因为原码有着这样的缺陷,所以在计算机内部,更常用的数值表示方法是补码。
二,补码
补码表示法规定:正数的补码与原码相同,负数的补码为对该数的原码除符号位外各位取反,然后再加一
如:
在八位编码下,补码 取值从 -2^7~+2^7-1
设真值 x=62, y=-62
原文:https://www.cnblogs.com/asdfknjhu/p/12079122.html