Thema: Delphi Mal wieder HexToFloat

Einzelnen Beitrag anzeigen

echitna

Registriert seit: 3. Jan 2005
Ort: Clausthal-Zellerfeld
25 Beiträge
 
Delphi XE5 Professional
 
#1

Mal wieder HexToFloat

  Alt 6. Jul 2017, 09:19
Hallo,

ich habe folgendes Problem:
Ich bekomme über eine Schnittstelle einen String, der eine Hexadezimalzahl repräsentiert (4 Zeichen lang), also z.B. 'FF E4' oder '00 03'.
Dieser String muss jetzt in einen Gleitkommawert umgewandelt werden. Ich habe eine Funktion dafür, die den Wert in binärstring
umwandelt so dass dann die Mantisse und der Exponent ausgerechnet werden kann. Die Funktion gibt dann das Ergebnis der Rechnung result := mantisse * power(2,exponent) aus. Das Problem ist jetzt, dass ich mit der Funktion eine normalisierte Zahl (also z.B. 9.17963e-41) als Ergebnis bekomme, ich hätte aber gerne eine 'normale' Kommazahl (also z.B. 0,00000917).
Hat jemand eine Idee wie man das hinkriegt, oder gibt es vielleicht sogar noch eine einfachere Methode einen Hex-String in eine Kommazahl zu konvertieren?

(Tante Google hat mir leider auch nicht geholfen)
  Mit Zitat antworten Zitat