首页 > 解决方案 > 在python中将负整数转换为支持十六进制的二进制补码

问题描述

我正在尝试对二进制补码 GPS 代码进行逆向工程,其中 GPS 代码是十六进制二进制补码的表示形式。

例如,0xFEA1C83D 是十进制的 -22951875。

使用 Python,如何将 -22951875 转换为 0xFEA1C83D?

标签: pythonhextwos-complement

解决方案


您可以使用int.to_bytesbinarray.hexlify

import binascii
binascii.hexlify((-22951875).to_bytes(4, byteorder="big", signed=True))
# b'fea1c83d'

推荐阅读