gpt4 book ai didi

Javascript/PHP 将 64 位整数解释为 float

转载 作者:行者123 更新时间:2023-12-02 16:59:49 24 4
gpt4 key购买 nike

我有一个 64 位整数,我想将其解释为 float 。我可以使用 PHP 或 javascript 进行此解释,因此任何潜在的解决方案都可以选择自己喜欢的语言。

我并不是说我想重新分配 4 到 4.0 之类的东西。

我有以下 8 个字节的数据:

十二月(整数):4619191942746344941

十二月( float ):6.6666000000000000

十六进制:401AAA9930BE0DED

我将 4619191942746344941 存储在我的 javascript/php 代码中的变量中。如何将其转换为 6.6666000000000000?

最佳答案

您可以使用pack来做到这一点

//$number = 4619191942746344941;
$pack = pack('H*', '401AAA9930BE0DED');
$pack = strrev($pack);
var_dump(unpack('d', $pack)); // 6.6666

Demo

作为函数

function getFloatFromInteger($integer)
{
$hex = dechex($integer);
$pack = pack('H*', $hex);
$pack = strrev($pack);
$result = unpack('d', $pack);
return $result[1];
}

var_dump(getFloatFromInteger(4619191942746344941));

附注存在 pack function on js 的实现.

关于Javascript/PHP 将 64 位整数解释为 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25839454/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com