在计算机中,正数直接用原码表示,负数用补码表示。正数的原码,反码,补码值都一样,都等于原码。负数的反码相当于将原码除符号位之外按位取反。负数的补码相当于将原码除符号位之外按位取反加1。
例1:-1
原码:1000 0001
反码:1111 1110
补码:1111 1111
例2:-127
原码:1111 1111
反码:1000 0000
补码: 1000 0001
例3:-128
原码,反码无法表示
补码:1000 0000
tips:
补码记忆时可以采取大小的观点:
有符号的正数[1,127]
最小 1: 0000 0001
最大127: 0111 1111
负数[-128,-1]
最小-128: 1000 0000
最大-1 :1111 1111