tfa hat gesagt.:
Darum geht es nicht. Es soll die Hex-Darstellung eines Floats in float zurück gewandelt werden.
BigDecimal hilft da nicht weiter.
Ach so
Aber ich verstehe dann diese Aussage nicht
thE_29 hat gesagt.:
Float kann hex sowieso nicht abgespeichert werden. Außer es ist im HexString ein PUNKT oder KOMMA abgespeichert.
Jede Zahl mit der Basis n kann zur Basis k gewandelt werden. Dein Computer rechnet alles mit der Basis 2 :wink:
Ich rechne dir das mal vor und du wirst sehen, dass eine eigene Implementation kein Problem ist und für mich in die Rubrik der Hausaufgaben gehört
. Oftmals verbringen wir mehr Zeit mit dem durchsuchen von API's und Diskutieren als man für eine eigene Impl. benötigen würde.
Also eine float -> 32bit Gleitkommazahl besitzt eine 23bit Mantisse und einen 8bit Exponent = 31bit. Wofür das letzte Bit benutzt wird über lasse ich euch
Dual: (0)00100111011010110101011 01010011
Hex: Hexadezimalsystem [1] besitzt die Basis 16 -> für die Darstellung einer Zahl werden genau 4bit's benötigt.
So, nun teilen wir das ganze in 4 Blöcke auf
0001 0011 1011 0101 1010 1011 0101 0011
woraus wir folgende Hexadezimalzahl ableiten
13B5AB53
das ganze geht natürlich auch umgekehrt.
[1]
Hexadezimalsystem
[2]
Zahlbasiswechsel