As to the floating point number:
my $hex = "403b8811bb1366e4"; print unpack "d", reverse pack "H*", $hex; # 27.53152055 (on x86 arch +)
but, as moritz said, binary representations of numbers are machine dependent... (except single-byte ints), so depending on the architecture that you're running this on, you may get wrong results (note that "d" is "A double-precision float in the native format"). (Update: in practice, however, most architectures these days use IEEE 754 format, so you essentially only have to figure out whether little- or big-endian representation is being used — handled by the reverse in the above snippet.)
Also, in case you're reading the data from the file in binary (not as a hex string), you of course don't need the pack "H*" part shown above.
In reply to Re: HEX to floating point
by almut
in thread HEX to floating point
by Spooky
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |