Comment on Tutorial - Convert a hex string into a 32-bit IEEE 754 float number in PHP By Julian L
Comment Added by : Mark
Comment Added at : 2015-02-02 14:42:56
Comment on Tutorial : Convert a hex string into a 32-bit IEEE 754 float number in PHP By Julian L
My code:
$hex=array('C4028000','457F9000','2D7F5','0002D7F5','47D9F95E','000040E4');
foreach($hex as $h){
echo $h.'='.hexTo32Float($h).'<br>';
}
function hexTo32Float($strHex) {
$v = hexdec($strHex);
$x = ($v & ((1 << 23) - 1)) + (1 << 23) * ($v >> 31 | 1);
$exp = ($v >> 23 & 0xFF) - 127;
return $x * pow(2, $exp - 23);
}
This outputs:
C4028000=522
457F9000=4089
2D7F5=6.0080426430695E-39
0002D7F5=6.0080426430695E-39
47D9F95E=111602.734375
000040E4=5.8891109391561E-39
The first output differs from yours as it is positive. The other values match yours. However, the last one (000040E4=5.8891109391561E-39) doesn't agree with http://babbage.cs.qc.cuny.edu/IEEE-754/index.xhtml, which tells me the decimal value of 000040E4 is 2.3278370089363861182184995837612086772827711378452680000428418331977209465577516311896033585071563720703125E-41
And http://babbage.cs.qc.cuny.edu/IEEE-754.old/32bit.html tells me it should be: 2.327837008936386e-41
Is this an error in the function or an error on the other site?
Cheers,
Mark.
View Tutorial
- Data Science
- React Native
- Android
- AJAX
- ASP.net
- C
- C++
- C#
- Cocoa
- Cloud Computing
- HTML5
- Java
- Javascript
- JSF
- JSP
- J2ME
- Java Beans
- EJB
- JDBC
- Linux
- Mac OS X
- iPhone
- MySQL
- Office 365
- Perl
- PHP
- Python
- Ruby
- VB.net
- Hibernate
- Struts
- SAP
- Trends
- Tech Reviews
- WebServices
- XML
- Certification
- Interview
categories
Related Tutorials
Read a file having a list of telnet commands and execute them one by one using Java
Open a .docx file and show content in a TextArea using Java
Step by Step guide to setup freetts for Java
Of Object, equals (), == and hashCode ()
Using the AWS SDK for Java in Eclipse
DateFormat sample program in Java
concurrent.Flow instead of Observable class in Java
Calculator application in Java
Sending Email from Java application (using gmail)