我如何弄清楚这个编码的值是什么?
我正在用Wireshark捕获一些流量,需要破译一些编码的值。这些值由我们的专有程序读取并转换。我需要知道如何进行转换。
我知道以下是一些值:
编码的 | 实际 |
---|---|
0x00000000000000000 | 0 |
0x404BC0000000000000 | 55.5 |
0x406680000000000000000000 | 180 180 |
0x40AC20000000000000000000 | 3600 3600 3600 |
36000XC01400000000000000000000-5 | 我添加了一些 |
编辑:
我发现了一些。看起来第一个数字(也许是第2位)是一个标志。我遇到的最接近的事情是,它可能是一个签名的浮点。但这不起作用。
I am capturing some traffic with wireshark and need to decipher some encoded values. The values are read by our proprietary program and converted. I need to know how that conversion is done.
Here are some values I know:
Encoded | Actual |
---|---|
0x0000000000000000 | 0 |
0x404bc00000000000 | 55.5 |
0x4066800000000000 | 180 |
0x40ac200000000000 | 3600 |
0xc014000000000000 | -5 |
EDIT:
I added a few more I have found. It looks like the first digit (maybe the first 2) is a sign. Closest thing I have come across is that it could be is a signed floating point. But that does not work.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您所显示的值仅是标准 ieee 754
如果您真的想了解这些值的工作方式,请尝试将十六进制值插入浮动点到六角转换器使用“转换为double”选项,它将向您显示所涉及的数学。例如:
The values you have shown are just standard IEEE 754 double-precision floating-point numbers, stored as a 64bit data type, like
double
commonly used in C/C++, C#, Java, etc.If you really want to understand how these values work, try plugging the hex values into Floating Point to Hex Converter using the "Convert to double" option, it will show you the math involved. For example: