java-位操作符
来源:互联网 发布:老薛主机 知乎 编辑:程序博客网 时间:2024/05/17 21:41
0
0
0
0
0
0
0
1
最高位符号位0表示正数,这里表示1
1
0
0
0
0
0
0
1
最高位符号位1表示负数,这里表示-1
正数: 原码, 反码,(1变0,0变1) 补码,都是一样的。
负数:
原码:
1
0
0
0
0
0
0
1
反码:原码符号位不变,其他位取反。
1
1
1
1
1
1
1
0
补码:反码+1;
1
1
1
1
1
1
1
1
位运算符
按位与 & :全为1,结果为1
按位或 | :两个有一个为1,结果为1
按位异或 ^ :相同为0,不同为1
按位取反 ~ :0变1,1变0;
算术右移 >> :低位溢出,符号位不变,并用符号位补溢出的高位;
算术左移 << :符号位不变,低位补0;
逻辑右移 >>>:运算规则:低位溢出,高位补0;
计算机运算的时候,都是以补码的方式来运算的。
~2
2的源码: 2是正数,补码和源码相同
0
0
0
0
0
0
1
0
取反 ~2的补码
1
1
1
1
1
1
0
1
~2的反码:(减一)
1
1
1
1
1
1
0
0
~2的源码:
1
0
0
0
0
0
1
1
结果为-3:
2&3=2; 2|3=3;
~-5
-5的源码:
1
0
0
0
0
1
0
1
反码
1
1
1
1
1
0
1
0
补码
1
1
1
1
1
0
1
1
取反
0
0
0
0
0
1
0
0
~-5=4;
3^-3;
-3的源码
1
0
0
0
0
0
1
1
补码(取反+1)
1
1
1
1
1
1
0
1
3的补码:和源码相同
0
0
0
0
0
0
1
1
3^-3的补码(相同为1,不同为0)
1
1
1
1
1
1
1
0
3^3的源码:(减一取反)
1
0
0
0
0
0
1
0
结果为-3^3=-2
算术右移>>低位溢出,高位补0;
- java位操作符
- java 位操作符
- java-位操作符
- java 位操作符
- java位操作符
- java 位操作符
- Java位操作符
- 理解java位操作符
- 理解java位操作符
- java位操作符总结
- java位操作符总结
- java位操作符总结
- java 位操作运算符
- Java按位操作符
- Java 按位操作符
- Java 按位操作符
- java按位操作符
- 彻底理解java位操作符
- 冒泡排序——优化
- ORACLE实现字段自增
- 设计一个计算器类Claculator,它只有一个用于计数的数据成员count。该计算器的有效计数范围是0~65535,实现计数器的前自增、后自增、前自减、后自减、两个计算器相加减运算
- 《编程珠玑(第2版)》笔记——将一个n元一维向量向左旋转i个位置(第2章)
- BLE 包结构及传输速率
- java-位操作符
- oracle常用视图
- vc中release和debug的区别
- Linux ALSA声卡驱动之一:ALSA架构简介
- How much carbon dioxide does a Google search query produce?
- JSShare分享流感导航菜单诞生
- 时间复杂度的计算
- 汇编语言学习笔记
- Unity赛车教程第三部分