美文网首页
java移位操作>>、<<和位运算&,|,!

java移位操作>>、<<和位运算&,|,!

作者: 世界待你如此好 | 来源:发表于2020-07-17 15:34 被阅读0次

<<:左移时不管正负,低位补0

正数:a=20<<2,20的二进制补码:0001 0100 。向左移动两位后:0101 0000 结果:a=80

负数:a=-20<<2,-20的二进制原码码:1001 0100。-20的二进制反码:1110 1011。反码+1即可得-20的二进制补码:1110 1100 ,左移两位后的补码:1011 0000,反码:1010 1111,原码:1101 0000,结果:a=-80

>>:右移时,如果该数为正,则高位补0,若为负数,则高位补1:

正数:a=20>>2,20的二进制补码:0001 0100,向右移动两位后:00000101,结果:a=5

负数:a=-20>>2,-20的二进制原码:1001 0100,-20的二进制反码:1110 1011,-20的二进制补码:1110 1100,右移两位后的补码:1111 1011,反码:1111 1010,原码:1000 0101,结果:a=-5

补充:加、减、乘、除运算都可以转换为加法和移码运算.

相关文章

  • java移位操作>>、<<和位运算&,|,!

    <<:左移时不管正负,低位补0 正数:a=20<<2,20的二进制补码:0001 0100 。向左移动两位后:01...

  • 位运算(位掩码BitMask)的简单应用场景浅析

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

  • java位运算

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

  • Java学习目录

    基础 Java 比较器Comparator和Comparable的使用和区别 进制、移位 Java 移位运算详解(...

  • Java面试

    Java中Synchronized的用法Java面试准备Java HashMap 源码解析Java 位运算(移位、...

  • 位运算

    位运算包括逻辑运算和移位运算,相应地,位运算符包括逻辑运算符(包括~、&、|和^)和移位运算符(包括>>、<<和>...

  • 2018-04-24 JAVA 移位运算符

    移位运算符操作的对象就是二进制的位,可以单独用移位运算符来处理int型整数。有三种移位运算符 (<<,>>,>>>...

  • Java的位运算符详解实例

    1.与(&)、或(|)、非(~)、异或(^) 2.移位运算符 移位运算符操作的对象就是二进制的位,可以单独用移位运...

  • 17.位运算基础及实战要点

    17.位运算基础及实战要点 位运算符 算数移位与逻辑移位 位运算的应用 为什么需要位运算 机器里的数字表示方式和存...

  • 位运算(1) -- 移位

    位运算是二进制数的各种操作的统称, 本篇是移位操作. 计算机中的位运算操作都是以其补码参与运算 正数的三码(原码/...

网友评论

      本文标题:java移位操作>>、<<和位运算&,|,!

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