位运算:与,或,非,异或,取反,左移,右移的粗略介绍

位运算:
与:&
或:!
异或:^
取反:~
移位:<<,>>


与运算:&
假设数字3和6
二进制下3则为011
二进制下6则为110
则(011)&(110)则为010
通过以上例子,我直接给出结论:
0&0=0
0&1=0
1&0=0
1&1=1
则都为真(1)时候结果才为真(1)

或运算:|
a|b=c
直接给出结论:
0|0=0
0|1=1
1|0=1
1|1=1
则只需一个为真结果才为真
如3|6=7

非运算:!
!1=0
!0=1
这个好理解
只能用于真假的判断
!3=false=0

异或运算:^
a^b=c
0^0=0
0^1=1
1^0=1
1^1=0
单1单0结果才为1
3^6=5(101)

取反:~
把一个数二进制的每一位都取反
010
变成101
比如~1=0
~0=1
~3=4(100)
~4=3(011)


左移:<<
把一个十进制的二进制形式往左移动多少位
如:3(00000011)<<1=6(0000110)高位的溢出

右移:>>
同理左移
000011右移一位为000110

posted @   Mashiro-z  阅读(90)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示