下面的位运算符在现实世界中有哪些用例?

和 XOR 不 或 左/右转


当前回答

似乎没有人提到定点数学。

(是的,我老了,好吗?)

其他回答

我使用它们作为选项处理程序,例如在访问控制列表中描述特定的资源。

看看这篇文章http://planetozh.com/blog/2006/05/php-bitwise-operators-example-of-use/

Edit:

还有一个链接: http://blog.code-head.com/how-to-write-a-permission-system-using-bits-and-bitwise-operations-in-php

当我有一堆布尔标记时,我喜欢将它们全部存储在一个整型中。

我用bitwise-AND取出它们。例如:

int flags;
if (flags & 0x10) {
  // Turn this feature on.
}

if (flags & 0x08) {
  // Turn a second feature on.
}

etc.

我不认为这是按位计算的,但是ruby的Array通过普通整数按位操作符定义了集合操作。因此[1,2,4]&[1,2,3]# =>[1,2]。对于a ^ b# =>集差值和| b# =>并集也是如此。

奇怪吗?

(value & 0x1) > 0

它能被2(偶数)整除吗?

(value & 0x1) == 0

似乎没有人提到定点数学。

(是的,我老了,好吗?)