除了重要的术语外,0xFF20
的单词值为-224
。从int( 'FF20', 16 )
开始,我得到65312
。
考虑到语言的高级特性,在Python中获取十六进制字符串的“单词”值的方法是什么?
答案 0 :(得分:4)
如果您想要签名值,如Pantashu提到的那样,那么您可以使用ctypes
ctypes.c_short(int('FF20', 16)).value
答案 1 :(得分:3)
如果第一个字符的高位设置(8-F),则在解析后从您的值中减去值0x1000 ...(0的数量等于单词中的十六进制字符数)。
e.g。 FF20有高位设置,将其转换为十进制并从中减去0x10000(65536 - 65312 = -224)
您可以通过将2计算为4 *字中的十六进制字符数来计算值0x100 ....例如2 ^(4 * 4)= 65536