首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

64位十六进制转十进制浮点数解决方案

2012-03-06 
64位十六进制转十进制浮点数6B2F78732CB9F840存储顺序如上,如何转换为十进制浮点数十进制浮点数为101266.7

64位十六进制转十进制浮点数
6B2F   7873   2CB9   F840
存储顺序如上,如何转换为十进制浮点数
十进制浮点数为   101266.78

[解决办法]
靠,小数位在那里??
[解决办法]
不明白
[解决办法]
看IEEE浮点数的表示方法就知,请仔细看。我看了好久才弄明白。
[解决办法]
哈哈哈哈哈哈...........

有个API能直接实现,嘿嘿..
[解决办法]
自己写个函数也行啊,不难啊,就是麻烦点。


[解决办法]
Dim a(7) As Byte, d As Double
'6B2F 7873 2CB9 F840
a(0) = &H6B
a(1) = &H2F

a(2) = &H78
a(3) = &H73

a(4) = &H2C
a(5) = &HB9

a(6) = &HF8
a(7) = &H40
CopyMemory d, a(0), 8
Debug.Print d

Double数据本身就是占64Bit,直接Copy就行,你的数据是怎么来的,若是Byte数组,就不用上面的赋值了,若是连续的Byte数组,那就更简单了,一次Copy进Double数组,完成批量转换。

热点排行