写这个类型博客的目的就是想总结一下某个专题的知识点,方便以后比赛前复习,由于太菜,如有错误,还请斧正。

首先位运算有那么几种:&按位与       |按位或      ^按位异或      ~按位取反        <<左移       >>右移        <<<无符号左移

后四种目前俺刷题比较少,没怎么遇到一些特殊的性质

先来说说&按位与:只有两个位都为1时结果才为1

1.一个数&1就相当于一个数%2

2.取数:例如一个数&11就是去二进制后两位

|按位或:只有两个位都为0时结果才为0

1.变数:例如如果要将第四位强行变为1,只需要或上***1***就行

^按位异或:两个相同时为1否则为0

1.x^0 = x 且 x^x = 0

2.交换律:x^y = y^x

3.结合律:(x^y)^z = x^(y^z)

4.自反性:x^y^y = x

5.交换两个数ab

a = a^b
b = a^b
a = a^b