Gleitkommazahlen

Einstieg in das Thema

Was brauchst du als Basiswissen?

Du musst wissen, wie man Binärzahlen darstellt. Das mathematische Grundwissen zu Potenzen ist hilfreich.

Worum geht es?

Du kennst die Festkommazahlen. Nun gibt es Zahlen, die sehr klein oder sehr groß sind. Das passt nicht zur Festkommazahl mit ihrer festen Anzahl an Nachkommastellen.

Es muss was Besseres her.

Was ist das Ziel?

Am Ende kennst du eine flexiblere Art der Darstellung von Kommazahlen.

Erarbeitung

Ein paar Worte vorab

Aufgaben zur Einarbeitung

Achtung, bis auf die Basis sind alles nun Binärzahlen!

Aufgabe 1: Berechne (geht im Kopf) 1,1·2^10
Aufgabe 2: 1,01·2^10
Aufgabe 3: 1,0·2^111
Aufgabe 4: 0,0·2^1

Folgende Binärzahlen sind noch nicht normalisiert. Schreibe sie normalisiert auf.

Aufgabe 5: 11
Aufgabe 6: 1101
Aufgabe 7: 0,1
Aufgabe 8: 0,011
Aufgabe 9: 0,00111

Berechne obige Zahlen und gib den Dezimalwert (gern als Bruch, wenn sinnvoll) an.

Im Speicher

Du weißt nun, wie die Zahlen in normalisierter, also "binärer wissenschaftlicher" Schreibweise aussehen. So packt man sie auch in den Speicher. Also so ähnlich. Das ist oft verschieden, für Java gilt bei dem Datentyp float:

Wer Java kann und sich das gern anschauen möchte:


float number = 1.625f;
int bits = Float.floatToIntBits(number);
String binaryString = String.format("%32s", Integer.toBinaryString(bits)).replace(' ', '0');
System.out.println(binaryString);

            

Muss man das wissen? Nö, aber man sollte es mal gesehen haben.

Zusammenfassung

Was muss man wissen/können?

Du musst wissen

Du kannst

Was können anschließende Themen sein?

Mit den Zahlen sind wir durch. Du kannst dich jetzt prüfen lassen und gern was Neues probieren.