python - 超过 64 位时截断整数

标签 python integer 64-bit addition

我正在尝试执行一些 64 位 添加,即:

a = 0x15151515
b = 0xFFFFFFFF
c = a + b

print hex(c)

我的问题是上面的输出:

0x115151514

我希望添加的是 64 位 并忽略溢出,即预期输出为:

0x15151514

注意:我不想截断字符串输出,我想要 c = 0x15151514。我正在尝试模拟一些 64 位寄存器操作。

最佳答案

然后只需使用逻辑与运算符&

c = 0xFFFFFFFF & (a+b)

顺便说一下,这些是 32 位值,而不是 64 位值(计算 F;每两个 F 是一个字节 == 8 位;它是八个 F,所以是四个字节,所以是 32 位)。

关于python - 超过 64 位时截断整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32680788/

相关文章:

python - psycopg2.ProgrammingError : syntax error at or near "OR

python - 杀死所有锁定文件的进程

java - ArrayIndexOutOfBoundsException、字符串、Int

c++ - 用于发现 64 位可移植性问题的静态代码分析工具?

64-bit - 如何为 64 位 Windows 编译现有的 posix 代码?

python - 在 Python 中将字符串转换为枚举

python - 加快Python中的集成功能

java - 将整数包含到字符串中

iphone - 整数扩展 - 第一、第二、第三等

.net - 为 x86 .NET 开发下载哪个 Visual Studio 2008 版本?