位運算符容許對整型數中特殊的位進行置位。若果左右參數都是字串,則位運算符將動作字元的
ASCII 值。
表格 15-3. 位運算符
例子 | 名稱 | 結果 |
---|
$a & $b | And(按位與) | 將把 $a 和 $b 中都為 1 的位設為 1。 |
$a | $b | Or(按位或) | 將把 $a 或是 $b 中為 1 的位設為 1。 |
$a ^ $b | Xor(按位異或) | 將把 $a 和 $b 中不同的位設為 1。 |
~ $a | Not(按位非) | 將 $a 中為 0 的位設為 1,反之亦然。 |
$a << $b | Shift left(左移) | 將 $a 中的位向左搬移 $b 次(每一次搬移都表示「乘以 2」)。 |
$a >> $b | Shift right(右移) | 將 $a 中的位向右搬移 $b 次(每一次搬移都表示「除以 2」)。 |
警示 |
在 32 位系統上不要右移超過 32 位。不要在結果可能超過 32 位的情況下左移。
|