
Hallo,
lese (bereits erfolgreich) Daten aus einer Datei, in der z.B. Floating-Point-Zahlen in binär codierter Form enthalten sind, die ich (noch nicht erfolgreich!) in PHP als Zahlen verwenden können möchte.
Die Zahlen liegen z.B. in IEEE-754-double precision-Kodierung vor, d.h. haben 64 Bits, wobei die einzelnen Bits eben die Bedeutung haben, wie z.B. unter [url]http://research.microsoft.com/~hollasch/cgindex/coding/ieeefloat.html[/url] beschrieben.
Kann mir jemand helfen, aus den 64 Bits, die ich z.B. in ein Byte-Array eingelesen habe, PHP-Zahlen zu machen, so dass ich damit in PHP rechnen kann?
Oder gibt's irgendwelche URLs, wo man sich über sowas selber informieren kann?
Danke schon mal im Voraus!!
MfG pseuto16
Zitat:.
meine Brille putzen
Zitat:
oimel postete
Hm, ich weiß gar nich so genau, wo das Problem liegt. Du hast doch eine Beschreibung des Zahlenformates. Folgende Schritte:
1. Du berechnest aus den "fraction bits" die Mantisse
2. Du berechnest aus den Exponenten-Bits den Exponenten (einfach Integer-Zahl)
3. Du berechnest die richtige Zahl durch Mantisse * 2^Exponent
4. Du rechnet das ganze mal -1, wenn das "sign"-Bit das vorgibt.
Zitat:Leider nicht wesentlich effizienter. Ich werde diesen Programmteil dann halt in C++ machen und von PHP aus aufrufen. Das passt an der betreffenden Stelle von der Prgrammlogik zum Glück ganz gut.
oimel postete
Wie es aussieht nein, aber vielleicht lässt sich Deine Funktion einfach effizienter implementieren?