tom*_*sop 2 ruby unpack ieee-754 pack
我需要从IMU输出十六进制数据流到lat long和height值.
数据以双精度十六进制字符串形式出现,我需要将它们输出为十进制值.
我尝试了几个打包和解压缩值,但最终除了编写自己的函数之外无法找到解决方案.
有没有办法翻译这个双精度64位十六进制字符串:
"4044F33333333333"
Run Code Online (Sandbox Code Playgroud)
进入这个小数:
41.900000000000000
Run Code Online (Sandbox Code Playgroud)
使用打包和解包功能?
有没有能够处理IEEE 754号码的图书馆?
["4044F33333333333"].pack('H16').unpack('G').first
=> 41.9
# broken down to steps, showing reversability
["4044F33333333333"].pack('H16')
=> "@D\xF333333"
"@D\xF333333".unpack('G')
=> [41.9]
[41.9].pack('G')
=> "@D\xF333333"
"@D\xF333333".unpack('H16')
=> ["4044f33333333333"]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1155 次 |
| 最近记录: |