![]() |
AW: Mal wieder HexToFloat
Passt :thumb:
Jetzt nur noch die umgekehrte Version (von Single nach HEXStr) ... 8-) :wink: |
AW: Mal wieder HexToFloat
Zitat:
|
AW: Mal wieder HexToFloat
Zitat:
|
AW: Mal wieder HexToFloat
Vielen Dank für die vielen Tipps. Dann werde ich wohl mal eingiges ausprobieren wenn ich wieder dazu komme.
|
AW: Mal wieder HexToFloat
Hallo zusammen,
ich war gerade auch auf der Suche nach dieser Routine und hab vor diesen Forum folgendes gefunden: ![]() Dort ist auch Code in anderer Sprache zu finden. Ich hab die Hexwerte von Netzwerkprotokoll (BACnet) dort getestet und funktioniert: 0100 .... = Application Tag Number: Real (ANSI/IEE-754 floating point) (4) present-value: 417.500000 (Real) Hexwert: 43D0C000 Vielleicht bringt es was. |
AW: Mal wieder HexToFloat
Ich habe nach dem Standard mal gesucht und folgendes gefunden:
![]() Bei mir hat es dann funktioniert:
Delphi-Quellcode:
var
Data: array[0..3] of byte; X: Real; begin Data[3] := aMsg.TheMessage[offset]; Data[2] := aMsg.TheMessage[offset + 1]; Data[1] := aMsg.TheMessage[offset + 2]; Data[0] := aMsg.TheMessage[offset + 3]; X := PSingle(@data)^; |
AW: Mal wieder HexToFloat
Edit: War Unsinn
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:43 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz