Einzelnen Beitrag anzeigen

Amateurprofi

Registriert seit: 17. Nov 2005
Ort: Hamburg
1.057 Beiträge
 
Delphi XE2 Professional
 
#5

Re: 4 Bytes als Float betrachten

  Alt 22. Mär 2007, 12:04
Zitat von DelphiManiac:
Hallo,
ich habe folgendes Problem:
ich habe 4 Bytes
[delphi]
Byte1,Byte2,Byte3,Byte4:Byte

diese Bytes will ich also Floatzahl bewerten nach IEEE 754.
Denke der Datentyp Single ist schon IEEE 754 konform.
Habe es bisher (aber natürlich nicht sonderlich gut oder elegant) so
gelöst
so müßte es funktionieren:

Code:
Type
   TSingle= packed Record
               case integer of
                  1  : (byte1,byte2,byte3,byte4:byte);
                  2  : (word1,word2:word);
                  3  : (int:integer);
                  4  : (lword:cardinal);
                  5  : (bytes:array[0..3] of byte);
                  6  : (words:array[0..1] of word);
                  7  : (value:single);
               end;
var
   data:TSingle;
Du kannst die Daten als Bytes, Words, Integer oder Cardinal in data schreiben und dann mit data.value den Wert als single auslesen, ohne irgenwelche weiteren Operationen.
Gruß, Klaus
Die Titanic wurde von Profis gebaut,
die Arche Noah von einem Amateur.
... Und dieser Beitrag vom Amateurprofi....
  Mit Zitat antworten Zitat