我正在从二进制文件中读取数据。我有一份文件可以让我知道信息是如何存储的。为了确定这一点,我使用 XVI32。
我正确地提取了信息字符串和 int 数据,直到遇到浮点数据类型。
根据这个文件:
00800000 = 0.0
7AFBDD35 = 0.061087
9BF7783C = -0.003491
00FBFCAD = 0.031416
我试图解决这个问题:
struct.unpack('!f', my_float.decode('hex'))[0]
以及其他不同的方式......
我使用一些在线工具测试了这些信息,例如: http ://babbage.cs.qc.cuny.edu/IEEE-754/index.xhtml和http://www.binaryconvert.com/result_float.html?decimal=048046048054049048056055,但是根据原始结果,所有这些方式都会给我带来不同的价值。
我开始怀疑浮点信息被加密或类似的东西,但为什么 string 和 int 没有被加密?