1、先理解原码、反码、补码

  正数的原码、反码、补码都一样。

    举例  10为例。位运算,效率高

 

  关键是负数。

      原码:位运算,效率高

      反码:最高位不变,其余的取反得到:1111  1111  1111  1111  1111  1111  1111  0101

      补码:等于反码加1。         1111  1111  1111  1111  1111  1111  1111  0110

2、位运算

  位运算符:操作数是整数,但是操作负整数时,用的是补码!!!!!

  左移   << :  右边补0

  右移   >>:   左边补0或1,如果原数最高位是1就补1,是0就补0.

  无符号右移   >>> :  左边补0

  按位与  & :二进制对应位置取与  ,同时为1才为1,否则为0

  按位或  | :二进制对应位置取或  ,有一个为1就为1

  按位异或运算 ^ :二进制对应位置取异或  ,两者不同才为1

  按位取反  ~ :二进制对应位置取反  ,原来是1,变为0,原来是0变为1

  说明:位运算符都是机器数直接运算的

 

    

相关文章:

  • 2021-12-14
  • 2021-08-06
  • 2021-09-28
  • 2021-11-19
  • 2021-08-08
  • 2021-09-05
  • 2021-10-19
猜你喜欢
  • 2019-08-07
  • 2021-09-07
  • 2021-11-29
  • 2021-10-28
  • 2021-06-25
  • 2021-10-06
  • 2021-10-19
  • 2021-10-19
相关资源
相似解决方案