Java 二进制

原码、反码、补码

  1. 二进制的最高位是符号位, 0表示正数, 1表示负数;
  2. 正数的原码, 反码, 补码都一样;
  3. 负数的原码=对应正数的二进制原码,最高位设为1;
  4. 负数的反码=它的原码符号位不变, 其他位取反;
  5. 负数的补码=它的反码+1;
  6. 0的反码, 补码都是0;
  7. 在计算机运算的时候, 都是以补码的方式来运算的.

运算--位移( >> )

  1. 正数或者负数左移------:低位都是用0补。
  2. 正数或者负数右移------:符号位不变。
  3. 负数无符号右移,高位用0补。

运算--位与( & )

  第一个操作数的的第n位于第二个操作数的第n位如果都是1,那么结果的第n为也为1,否则为0

运算--位或 ( | )

    第一个操作数的的第n位于第二个操作数的第n位 只要有一个是1,那么结果的第n为也为1,否则为0

运算--位异或 ( ^ )

    第一个操作数的的第n位于第二个操作数的第n位 相反,那么结果的第n为也为1,否则为0

运算--位非( ~ )

一元操作符: ~5

    操作数的第n位为1,那么结果的第n位为0,反之。

原文链接

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容