1.左移运算符(<<)
- 概念:按二进制形式把所有的数字向左移动对应的位数,左边移出(舍弃),右边补0。
- 格式:需要移位的数字m << 移位的次数n(左移n位:m*2^n)
- 实例: 11 << 2
11:0000 1011
<<2:0010 1100
2.右移运算符(>>)
- 概念:按二进制形式把所有的数字向右移动对应的位数,左边补0(负数补1),右边移出(舍弃)。
- 格式:需要移位的数字m >> 移位的次数n(右移n位:m/2^n)
- 实例: 11 >> 2 和 -11 >> 2
正数左边补0
11:0000 1011
>>2:0000 0010
负数左边补1
-11:1000 1011
>>2:1110 0010
3.无符号右移运算符(>>>)
- 概念:按二进制形式把所有的数字向右移动对应的位数,不论是正数还是负数,左边都补0,右边移出(舍弃)。
- 格式:需要移位的数字m >>> 移位的次数n(无符号右移n位:m/2^n)
- 实例: 11 >>> 2 和-11 >>> 2
11:0000 1011
>>>2:0000 0010
-11:0000 1011
>>>2:0000 0010