内存中操作的是补码,你肉眼看到的是源码。
例如:
分析:
1.截断前:
130默认是int类型,因此用byte进行强制转换会进行截取。
130的二进制数据是:00000000 00000000 00000000 10000010
计算机在内存中使用补码进行计算的,130的补码是:00000000 00000000 00000000 10000010
2.截断后
130为1000 0010,130的反码为1000 0001,130的源码为1111 1110,其值为-126.
例如:
130为1000 0010,130的反码为1000 0001,130的源码为1111 1110,其值为-126.