【发布时间】:2021-01-09 16:58:02
【问题描述】:
我以为它会等于 1
【问题讨论】:
-
(1 << (3 + 1)) << 4 == (1 << 4) << 4 == 16 << 4 == 256
标签: python binary bit-manipulation bit boolean-algebra
我以为它会等于 1
【问题讨论】:
(1 << (3 + 1)) << 4 == (1 << 4) << 4 == 16 << 4 == 256
标签: python binary bit-manipulation bit boolean-algebra
这是因为 python 的操作顺序,在左移运算符之前计算加法。表达式等价于
(1<<(3+1))<<4
【讨论】: