python - Python 中的位运算

标签 python bit-manipulation bitwise-operators

我正在寻找有关如何在 Python 中进行按位数学运算的建议。

我遇到的主要问题是 python 的按位运算符具有无限精度,这意味着 -1 实际上是“111......111”。那不是我想要的。我想模拟具有固定精度的真实硬件,比如 32 位。

这里有一些问题:

1) -n 应该返回一个 32 位的 2 的补码(这很容易通过取无限精度的低 32 位 -n 来实现)

2) n >> 3,应该是一个32位数字的算术移位,也就是说如果第31位是'1',那么移位3后第31:28位应该是'1'。

最佳答案

你可以使用 numpy,它内置了 int32类型等等。

关于python - Python 中的位运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5994307/

相关文章:

用 mod 计算 rand 的动态范围

python - 类型错误 : string indices must be integers (Python)

algorithm - 计算第 i 位被设置的 1 到 N(含)之间的数字

python - 将 header 值传递给 django 中的 get 请求

php - 有没有办法通过一次比较来检查一个值是等于 0 还是 1?

javascript - 按位符号符号是如何工作的~

javascript - "&"和 "&&"运算符有什么区别?它们的用途是什么?

C++ - 对浮点值中的位进行操作

python - 如何在 Python 的同一类中将实例变量指定为关键字参数的默认值

python - 从基于 Web 的界面运行 shell 命令的最佳方式是什么?