gpt4 book ai didi

python - 在 Python 中从十六进制到一个补码

转载 作者:太空狗 更新时间:2023-10-29 18:15:20 26 4
gpt4 key购买 nike

有没有一种简单的方法可以在 python 中生成一个补码?

例如,如果您采用十六进制值 0x9E,我需要将其转换为 0x61

我需要将二进制 1 换成 0,将 0 换成 1。感觉这应该很简单。

最佳答案

只需使用 the XOR operator ^针对 0xFF:

>>> hex(0x9E ^ 0xFF)
'0x61'

如果您需要处理大于一个字节的值,您可以从 int.bit_length() method 创建掩码关于你的值(value):

>>> value = 0x9E
>>> mask = (1 << value.bit_length()) - 1
>>> hex(value ^ mask)
'0x61'
>>> value = 0x9E9E
>>> mask = (1 << value.bit_length()) - 1
>>> hex(value ^ mask)
'0x6161'

关于python - 在 Python 中从十六进制到一个补码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13492826/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com