美文网首页
java 与(&)、非(~)、或(|)、异或(^)理解、左位移(

java 与(&)、非(~)、或(|)、异或(^)理解、左位移(

作者: 陈陈_04d0 | 来源:发表于2020-11-12 16:11 被阅读0次

10000000 128

10000001 129

与(&) : 两个操作数中位都为1,结果才为1,否则结果为0 

 128&129=128 (10000000 )

非(~): 如果位为0,结果是1,如果位为1,结果是0

~129=-130(01111110 )  简单计算 :+1符号取反

 00000000 10000001 二进制

 11111111   01111110  符号~取反 得到补码

 11111111   01111101  负数反码 -1,在计算机中 正数,负数都是通过补码的形式保存的 ,因为负数需要+1 所以我们反码的时候需要-1

  1000000 10000010  反码转原码取反 第一位符号位1负数 0正数 -130

或(|) : 两个位只要有一个为1,那么结果就是1,否则就为0

 128|129=129  (10000001)

异或(^):两个操作数的位中,相同则结果为0,不同则结果为1。

 128^129= 1(00000001)

左位移 :左位移的符号是<<,其运算规则是:按二进制形式把所有的数字向左移动对应的位数 ,原来数的所有二进制位都向左移动 1 位,高位移出(舍弃),低位的空位补零。

30 二进制 0001 1110

30  << 4    30*  2的四次方

 1111 00000 = 480

 1111 000000 = 960

右位移 :右位移的符号是>>,其运算规则是:原来数的所有二进制位都向右移动 1 位。原来位于右边的最低位被移出舍弃,再向最高位追加 0 补位。

30 >> 4   30 / 2的四次方

0000 0001 = 1

//值反转

(0x04AB &0x00ff) +"==" + ((0x04AB &0xff00) >>8)

相关文章

  • java 与(&)、非(~)、或(|)、异或(^)理解、左位移(

    10000000 128 10000001 129 与(&) : 两个操作数中位都为1,结果才为1,否则结果为0 ...

  • 位运算实用技巧(Java实现)

    1. Java支持的位运算符: &:按位与 |:按位或 ~:按位非(Esc下面那个键) ^:按位异或 <<:左位移...

  • Java中&与&&、|与||的区别与联系

    前言 Java中逻辑操作符有&&(与)、||(或)、!(非),按位操作符有&(与)、|(或)、~(非)、^(异或)...

  • 位运算

    运算符含义&按位与|按位或^按位异或~取反<<左位移>>右位移 按位与运算符(&)按位与运算将两个运算分量的对应位...

  • 数字逻辑第二章

    与或非运算 与: 或: 非: 与非: 或非 与或非 异或 同或:(异或非) 逻辑代数公理和定律 重要规则 逻辑函数...

  • 2018-04-24 Java位运算符

    位[运算符] (4种) 与(&)、非(~)、或(|)、异或(^)与 & 或 | 非~ 异或 ^

  • 位操作

    位操作详解 位运算的操作符有:&、|、^、~、>>、<<,六种,分别对应与,或,异或,按位取反,右位移,左位移 1...

  • java操作符(移位、位与、或、异或、非)

    Java的位运算符详解实例——与(&)、非(~)、或(|)、异或(^) 左移( << )、右移( >> ) 、无符...

  • 面试精选之位操作问题集锦

    Java 中位运算符有与(&)、或(|)、非(~)、异或(^)、左移(<<)、右移(>>)、无符号右移(>>>),...

  • java位运算

    Java 位运算(移位、位与、或、异或、非) Java提供的位运算符有:左移( << )、右移( >> ) 、无符...

网友评论

      本文标题:java 与(&)、非(~)、或(|)、异或(^)理解、左位移(

      本文链接:https://www.haomeiwen.com/subject/ocgubktx.html