Umwandlung von 4 Rohbytes in 32-Bit-Gleitkomma

Ich versuche, einen 32-Bit-Gleitkommawert aus einem EEPROM zu rekonstruieren.

Die 4 Bytes im EEPROM-Speicher (0-4) lauten: B4 A2 91 4D

und der PC (VS Studio) rekonstruiert es korrekt als 3.054199 * 10 ^ 8 (der Gleitkommawert, den ich kenne, sollte da sein)

Nun bewege ich diesen EEPROM, damit er von einem 8-Bit-Arduino gelesen werden kann, also bin ich mir nicht sicher, ob es sich um eine Compiler- / Plattform-Sache handelt, aber wenn ich versuche, die 4 Bytes in ein 32-Bit-Dword zu lesen, und schreibe es dann in einen Float , der Wert, den ich bekomme, ist nicht einmal annähernd.

Angenommen, die Konvertierung kann mit dem Standard-ansi-c-Compiler nicht automatisch durchgeführt werden. Wie können die 4 Bytes manuell analysiert werden, um ein Float zu werden?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage