如何详细解释位算符:与、或、异或、取反、左移、右移操作?
- 内容介绍
- 文章标签
- 相关推荐
本文共计904个文字,预计阅读时间需要4分钟。
1. 位与运算: - 代码:`int a=3, b=-2, c=a & b;` - 结果:`3 & -2=2`
2. 位或运算: - 代码:`int a=3, b=-2;` - 结果:`3 | -2=-1`
3. 位异或运算: - 代码:`int a=3, b=-2, c=a ^ b;` - 结果:`3 ^ -2=-3`
4. 位取反运算: - 代码:`int a=18, b=~a;` - 结果:`~18=-19`
1.按位与(&)
int a = 3, b = -2 , c = a & b ;
3&-2结果:2
2.按位或(|)
int a = 3, b = -2 ,
3|-2结果:-1
3.按位异或(^)
int a = 3, b = -2 , c = a ^ b ;
3^-2结果:-3
4.按位取反(~)
int a=18, b = ~ a;
~2结果:-3
5.左移(<<)
<< :左移左边最高位丢弃,右边补齐0
在数字没有溢出的前提下,对于正数和负数,左移一位都相当于乘以2的1次方,左移n位就相当于乘以2的n次方
32>>3结果:4
用来将一个数的各二进制位全部左移若干位,移动的位数由右操作数指定,右操作数必须是非负值,其右边空出的位用0填补,高位左移溢出则舍弃该高位。
本文共计904个文字,预计阅读时间需要4分钟。
1. 位与运算: - 代码:`int a=3, b=-2, c=a & b;` - 结果:`3 & -2=2`
2. 位或运算: - 代码:`int a=3, b=-2;` - 结果:`3 | -2=-1`
3. 位异或运算: - 代码:`int a=3, b=-2, c=a ^ b;` - 结果:`3 ^ -2=-3`
4. 位取反运算: - 代码:`int a=18, b=~a;` - 结果:`~18=-19`
1.按位与(&)
int a = 3, b = -2 , c = a & b ;
3&-2结果:2
2.按位或(|)
int a = 3, b = -2 ,
3|-2结果:-1
3.按位异或(^)
int a = 3, b = -2 , c = a ^ b ;
3^-2结果:-3
4.按位取反(~)
int a=18, b = ~ a;
~2结果:-3
5.左移(<<)
<< :左移左边最高位丢弃,右边补齐0
在数字没有溢出的前提下,对于正数和负数,左移一位都相当于乘以2的1次方,左移n位就相当于乘以2的n次方
32>>3结果:4
用来将一个数的各二进制位全部左移若干位,移动的位数由右操作数指定,右操作数必须是非负值,其右边空出的位用0填补,高位左移溢出则舍弃该高位。

