Java基础之 进制转换 补码 反码 原码

(不知道为什么打印输出顺序有问题 所以我做了标记 方便阅读)

在Java中 整数类型 都是以补码的形式存储

补码:  反码 + 1 

反码: 在原码的基础上符号为不变 逐位取反

原码:人类计算的二进制真值   正数原码=补码=反码   

Integer.toBinaryString()  输出的结果是计算机内存中真正存储的形式(补码)

例如计算-11的补码:

-11 原码:1000 0000 0000 0000 0000 0000 0000 1011 

-11的反码:1111 1111 1111 1111 1111 1111 1111 0100     (负数的原码 :符号为不变  其余各位依次取反)

-11的补码:1111 1111 1111 1111 1111 1111 1111 0101        (负数的补码 :在反码的基础上 加1 为补码)

猜你喜欢

转载自blog.csdn.net/Hurricane_m/article/details/88774677
今日推荐