位运算自学笔记

位运算自学笔记

位运算自学笔记

一只小菜包

·

2024-08-10 10:23:28

·

算法·理论

目标:位运算 —> 前缀和 —> 异或和

什么是位运算

位运算就是直接对整数在内存中的二进制位进行操作,因此其执行效率非常高,在程序中尽量使用位运算进行操作,这会大大提高程序的性能。

位运算符号名称

&与

|或

^异或

~取反

<<左移

>>右移

运算符应用规则

&两个位都为1时,结果才为1。

|两个位都为0时,结果才为0。

^两个位相同为0,相异为1。

~0变1,1变0。

<<各二进位全部左移若干位,高位丢弃,低位补0。

>>各二进位全部右移若干位,对无符号数,高位补0,有符号数,右移补1。

位运算的优先级

最高的:~ / ++ / --

其次的:*/ /(除) / %

······

最低的:== = != > & > ^ > |

位运算的运算律

交换律:A&B=B&A,A∧B=B∧A

结合律:(A&B)&C=A&(B&C)

等幂律:A&A=A,A∣A=A

互补律:A&∼A=0,A∣∼A=−1

同一律:A∣0=A,A∧0=A

零律:A&0=0

位运算的操作

这才是本文里最干的货!

觉得些的还不错的可以给我点一个无价的赞吗QUQ,谢谢啦~~