JavaSE---位运算符

1、Java支持的位运算符有7个:

  &:按位与  【2个相同取相同、2个不同取0】

  |:按位或  【2个相同取相同、2个不同取1】

  ~:按位非  

  ^:按位异或 【2个相同取0、2个不同取1】

  <<:左位移运算符  将二进制码整体左移指定位数,左移后空出来的位以0补充

  >>:右位移运算符  将第一个操作数的二进制码向右移指定位数,左边空出的以0补充(如果原来的操作数为正数,左边以0补充;如果是负数,左边以1补充)

  >>>:无符号右位移运算符  将第一个操作数的二进制码向右移指定位数,左边空的以0补充

2、

3、案例:

  1.1  按位与:

    5&9

     0101  ---5

   & 1001   ---9

    0001   ---1     

  1.2   按位或:

    5|9

    0101  ---5

   | 1001  ---9

    1101  ---13

4、二进制数(计算机采用二进制的补码进行计算)

    1、最高位为符号位,0表示正、1表示负,其余位表示数值大小

    2、原码、反码、补码

      1.1  正数的原码、反码、补码  都一样;

      1.2  负数的反码:

            最高位不变、其余按位取反;     eg: 原码为:10100000  反码为:11011111

         负数的补码:

            最高位不变、其余按位取反,再+1   eg: 第一步,原码为:10100000;第二步,最高位不变取反:11011111;第三步,加一得补码:11100000

          

posted on   anpeiyong  阅读(174)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示