【发布时间】:2011-11-04 04:54:55
【问题描述】:
以左移操作为例,
5 << 1 = 10
10 << 1 = 20
然后可以建立一个数学方程,
n << 1 = n * 2.
如果存在左移运算的方程,
那么有没有可能还有一个
数学方程 AND 操作?
或任何其他位运算符?
【问题讨论】:
-
什么都没有想到。显然,如果操作数没有共同的 1 位,您可以使用加法进行按位或,并且您可以循环计算设法隔离单个位的算术,但我不知道任何可以执行“并行”与的操作,例如. (在我这个时代,我发明了不止这么几个技巧。)
-
用位运算来定义算术运算要容易得多。事实上,这就是 CPU 设计人员所做的。 (我敢肯定这是过于简单化了。)
-
我用它来快速计算:bitwiseoperatorcalculator.com
标签: c math bitwise-operators