计算机位运算符号

按位与(&):对两个二进制数的每一位进行与运算,结果为1的位置上为1,其他位置上为0
1

按位或(|):对两个二进制数的每一位进行或运算,结果为1的位置上为1,其他位置上为0
1

按位异或(^):对两个二进制数的每一位进行异或运算,结果为1的位置上为0,其他位置上为1
1

取反(~):对一个二进制数进行取反运算,即将0变为1,将1变为0
1

左移(<<):将一个二进制数向左移动指定的位数,右边的位数用0填充
1

右移(>>):将一个二进制数向右移动指定的位数,对于无符号数高位补0,对于有符号数,有的编译器补符号位(算术右移),有的补0(逻辑右移)
2
3

位运算符号的特点和用途:

按位与(&):常用于清零操作或提取某一位的值。例如,3&5的结果为1,因为二进制表示中只有第三位同时为1。011 & 101 = 1
按位或(|):用于设置某一位为1。例如,3|5的结果为7,因为二进制表示中第三位被设置为1。011 I 101 = 111 = 7
按位异或():用于翻转某一位的值。例如,35的结果为6,因为二进制表示中第三位被翻转。 011 ^ 0101 = 110 =6
取反():用于反转一个数的所有位。例如,3的结果为-4,因为二进制表示中的所有位都被翻转。011~ = 100 别忘了正数转负数
左移(<<):用于将一个数的所有位向左移动指定的位数,相当于乘以2的n次方。例如,3<<2的结果为12,因为二进制表示向左移动两位。101<<2 = 10100 = 12 =322(这里的n就是你左移的位数)
右移(>>):用于将一个数的所有位向右移动指定的位数,相当于除以2的n次方。例如,12>>2的结果为3,因为二进制表示向右移动两位。10100>>2=101=3相当于12/4=3(这里的n就是你左移的位数2)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容