zoukankan      html  css  js  c++  java
  • java中位运算和移位运算详解

      一、位运算

    (1)按 位 与 &

    如果两个相应的二进制形式的对应的位数都为1,则结果为1,记为同1为1,否则为0。首先我们看一下对正数的运算

          

    分别看一下正数和负数的具体运算步骤

                      

    正数直接取二进制运算,负数取反加一得补码再运算,得到的结果符号位为0,不需要做任何操                                                                                                                                    作直接给出结果,后面会讲到如果结果为负数的情况

    (2)按位或 |

      有1为1,否则为0

            

    分别看一下正数和负数的具体运算步骤

           

    讲一下负数求反和补码的直接给结果,当运算结果符号位是1为负数,那就需要进行减1操作,再按位取反,这个时候得到的才是正确的结果

    (3)异或 ^

    相同为0,不同为1

           

    二、移位运算

    (1)左 移 (<< )

     右边空出的位用0填补高位左移溢出则舍弃该高位。计算机中常用补码表示数据,注,用补码计算

           

    (2)右 移 (>> )

     左边空出的位用0或者1填补。正数用0填补,负数用1填补。注:不同的环境填补方式可能不同;低位右移溢出则舍弃该位。

            

    (3)无 符 号 右 移 (>>> )

     无符号右移:正数与右移规则一样,负数的无符号右移,就是相应的补码移位所得,在高位补0即可

            

             

    原文地址:https://www.cnblogs.com/xiuyu/p/8428963.html

  • 相关阅读:
    新东西-intel edison
    MFC AfxMessageBox(_T("Please Load Rawdata First !"));
    libgl1-mesa-glx:i386 : 依赖: libglapi-mesa:i386
    开源硬件_瑞芯微开发板
    手机方案商
    嵌入式Linux应用开发__求职要求
    工作要求
    Proc文件系统接口调试
    Sysfs文件系统接口调试
    Ubuntu Linux 解决 bash ./ 没有那个文件或目录 的方法
  • 原文地址:https://www.cnblogs.com/jpfss/p/11512898.html
Copyright © 2011-2022 走看看