Hey,
ich versuche schon seit Stunden diese Funktion umzudrehen
also ein Float-Variable in ihre 4Bytes zu zerlegen.
// Float-Berechnung nach IEEE (siehe: http://de.wikipedia.org/wiki/Gleitkommazahl)
$inbuf = array(65, 159, 173, 212);
$s = ($inbuf[0] & 0x80) >> 7; // Vorzeichen ermitteln
$c = ((($inbuf[0] & 0x7f) << 8) | ($inbuf[1] & 0x80)) >> 7; // Charakteristik ermitteln
$e = $c - 127; // aus der Charakteristik den Exponenten ermitteln
$m = (($inbuf[1] & 0x7f) << 16) | ($inbuf[2] << 8) | $inbuf[3]; // Mantisse ermitteln
$m = 1 + $m/8388608; // Mantisse korrigieren
$temperatur = pow(-1, $s) * $m * pow(2, $e); // Float-Wert berechnen
habs schon versucht mit unpack/pack aber nicht hingeriegt.
Wie kann ich dies Lösen ?
Gruß Michael