位运算的常见操作

Administrator 5 2025-04-12

基础位运算:我们只需要记住以下口诀:

  1. &按位与:有0就是0

  2. | 按位或:有1就是1

  3. ^ 按位异或:相同为0,相异为1 / 无进制相加(两个1相加不向高处进位)

基本操作

1、给一个数n,确定它的二进制表示中的第 x 位是0还是1

( n >> x ) & 1

2、将一个数n的二进制表示的第 x 位修改成1

n | = ( 1 << x )

3、将一个数n的二进制表示的第 x 位修改成0

n & = ( ~ ( 1 << x ) )

4、提取一个数n的二进制表示中最右侧的1

n & -n

5、干掉一个数n的二进制表示中最右侧的1

n & ( n - 1 )

6、异或运算律

a ^ 0 = a

a ^ a = 0

a ^ b ^ c = a ^ ( b ^ c )