Einzelnen Beitrag anzeigen

Andy U

Registriert seit: 14. Jun 2006
17 Beiträge
 
#1

Win16<->Win32 Datentyp: real

  Alt 14. Jun 2006, 14:42
Hallo,

kann mir hier jemand sagen, wie die real-Werte bein Win16 (Delphi 1) aufgebaut waren/sind??? Und evtl auch, wie man sie einfach in "normale" double-Werte umgewandelt werden können?

Ich bin gerade dabei, typisierte Dateien auszulesen... Jedenfalls ist dort für eine real-Variable genau 6Byte Platz, aber nach welchen Regeln die dort aufgebaut sind verstehe ich irgendwie nicht. Exponent + Mantisse scheint nicht hinzuhauen. Ich habe mal die Bytes einzeln ausgelesen, um festzustellen, wo die Mantisse starten könnte aber:

Wert:
47,8824 -> 134 246 245 245 245 61
48,6667 -> 134 136 135 135 135 63
49,0588 -> 134 60 60 60 60 68
...

Erstens sieht das alles etwas komisch aus, zweitens müssten die Zahlen negativ sein weil 1. Byte > 127 und drittens ändern sich rundweg irgendwie alle Bytes außer die ersten und schließlich viertens finde ich das Bitmuster von 478824 z.B. nicht in der Bitfolge der Bytes...

Wenn jemand eine Idee hat immer her damit! Vielen Dank schon mal im Voraus.


Ich arbeite übrigens gerade mit Delphi6 Prof.

Viele Grüße

Andy



end.
  Mit Zitat antworten Zitat