3

撇开关键术语不谈,单词 value of 0xFF20is -224。从int( 'FF20', 16 )我得到65312

考虑到语言的高级特性,在 Python 中获取十六进制字符串的“单词”值的方法是什么?

4

2 回答 2

4

如果您想要签名值,就像 Pantashu 提到的那样,那么您可以使用ctypes

ctypes.c_short(int('FF20', 16)).value
于 2013-04-11T01:42:25.113 回答
3

如果第一个字符的高位设置(8-F),则在解析后从您的值中减去值 0x1000...(0 的数量等于单词中的十六进制字符的数量)。

例如,FF20 设置了高位,将其转换为十进制并从中减去 0x10000 (65536 - 65312 = -224)

您可以通过计算 2 的 4*word 中十六进制字符数的幂来计算值 0x100...。例如 2^(4*4) = 65536

于 2013-04-11T01:42:22.320 回答