Forum: PC-Programmierung Umwandlung in Float mit Zahl < 1


von Mike (Gast)


Lesenswert?

Hallo,

ich arbeite gerade an einer Eigenimplementierung von String nach Float.
Dabei richte ich mich nach folgenden Ansätzen:

http://de.wikipedia.org/wiki/IEEE_754
Berechnung Dezimalzahl → IEEE754-Gleitkommazahl

Die Berechnung von Zahlen größer gleich 1 (z.B. 18.4) funktioniert 
bereits,
allerdings habe ich noch keinen Plan wie das ganze mit Zahlen zwischen 0 
und 1 funktinieren soll.

Nach dem Wiki errechne ich Vorkommazahl und Nachkommazahl getrennt, 
wobei 18 dann 10010 ergeben würde UND die erste 1 als "Hidden Bit" 
dargestellt wird.

Bei einer Zahl kleiner 1, also z.B. 0.4, wäre die Vorkommazahl 0 
(verträgt sich also nicht damit dass immer eine 1 an erster stelle 
steht.

Wie ist das zu implementieren?

Ein Ansatz wäre 0.184 entspricht 1.84E-1, allerdings handelt es sich 
beim Exponenten in der Floatzahl um einen Dualen Exponenten welcher die 
binäre Größe der Vorkommazahl angibt.

Danke!!
Mike

von Purzel H. (hacky)


Lesenswert?

Nach links schieben bis eine Eins kommt.

von Mike (Gast)


Lesenswert?

Hi Oschi,

und die Shiftanzahl fließt dann in den dualen Exponenten ein 
(BIAS-shifts)??

Ist die erste 1 die kommt dann hidden???

Danke!!!

Mike

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.