这里用byte类型做说明(因为byte只有1个字节,即8位)
byte范围:-128 到 127 共256个数
127:0111 1111
-127:1000 0000 + 1 = 1000 0001
-127是由127的二进制码取反再+1得来的。
原因:-127的二进制为1000 0001,这个二进制数实际为129。从这里我们可以看出实际上负数实际上是用正数来表示的,
即129表示的是-127(129-256 = -127)
再说下无符号右移:>>>,表示高位0补齐。而>>,表示高位是1则补1,是0则补0(即不改变符号)。