← 返回首頁

Bit Manipulation 位元運算

位元運算視覺化

常用位元技巧(點擊動畫演示)

計算 1 的個數

n &= (n-1) 消除最低位 1

檢查 2 的冪次

n & (n-1) == 0

取最低位的 1

n & (-n)

奇偶判斷

n & 1

XOR 交換

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

取第 i 位

(n >> i) & 1

位元運算基礎

運算 符號 說明 範例
AND&都是1才是11100 & 1010 = 1000
OR|有1就是11100 | 1010 = 1110
XOR^不同才是11100 ^ 1010 = 0110
NOT~0變1,1變0~1100 = 0011
左移<<乘以2^n0011 << 2 = 1100
右移>>除以2^n1100 >> 2 = 0011