Mathe in der Informatik

Mathe in der Informatik
Reelle Zahlen – Gleitkomma

Du möchtest wissen, was eine Gleitkommazahl ist? Im Folgenden zeigen wir dir, wie du eine Binärzahl in eine Gleitkommazahl umwandeln kannst an einem einfachen Beispiel.

Allgemeine Schreibweise und die drei Bereiche der Gleitkommazahl

Es gibt zwei verschiedene Arten, Dezimalbrüche zu kodieren. Zum einen die Festkommazahl und zum anderen die Gleitkommazahl, die wir hier genauer betrachten. Sie wird auch häufig als Fließkommazahl bezeichnet. Wir verwenden für Umwandlungen immer eine allgemeine Schreibweise. Im Fall der Gleitkommadarstellung sieht sie so aus:

Gleitkommazahl, Gleitkommadarstellung
Allgemeine Schreibweise

k steht für die Anzahl der Nachkommastellen, während n die Gesamtanzahl der Stellen angibt. Allerdings sieht die Umsetzung etwas anders aus, denn wir untergliedern eine Zahl in der Gleitkommadarstellung in drei „Bereiche“: Das Vorzeichen-Bit, die Charakteristik und die Mantisse. Das hört sich erst mal recht kompliziert an, deswegen gehen wir jetzt jeden Teil einzeln durch.

Als Erstes müssen wir aber klären, was eine Gleitkommadarstellung überhaupt ist. Prinzipiell ist sie nichts anderes als eine andere Art die wissenschaftliche Schreibweise, die du bereits aus der Schule kennst, darzustellen. Das heißt: zumindest im Dezimalsystem haben wir immer einen Dezimalbruch und eine Zehner-Potenz. Also zum Beispiel:

-1,268\ast{10}^5=-126.800

Vorzeichenbit, Charakteristik und Mantisse

Wenn wir das ganze jetzt in der Gleitkommaschreibweise angeben wollen, so wird unser Dezimalbruch zur Mantisse. Der Exponent der Schreibweise, also in unserem Fall die Fünf, wird zur Charakteristik und das Minus wird zu unserem Vorzeichenbit. Für negative Zahlen setzen wir dieses auf eins, für positive Zahlen auf null.

Mantisse, Gleitkommazahl, Gleitkommadarstellung
Vorzeichenbit, Charakteristik und Mantisse

Zusätzlich solltest du noch wissen, dass in der sogenannten Gleitkommadarstellung immer nur eine Ziffer vor dem Komma stehen und diese auch nicht null sein darf, da sonst ein NaN-Fehler ausgeworfen werden kann. Ist das dennoch der Fall, erkennt der Rechner die Zahl nicht als solche an. Deswegen auch die Bezeichnung „not a number“.

Normierung: Gleitkommazahl binär

Es geht aber auch noch effizienter. Wenn man die darzustellende Zahl normiert, also dafür sorgt, dass die Ziffer vor dem Komma eine eins ist, muss man die Vorkommastelle auch nicht mehr angeben. Nun werden Zahlen vom Rechner aber nicht im Dezimal- sondern im Binärsystem dargestellt. Deswegen müssen wir noch alles in dieses System umwandeln.

Um den Exponenten unabhängig von seiner Größe in der gegebenen Bitzahl angeben zu können, müssen wir ihn in die sogenannte Exzess-q-Schreibweise umwandeln. Dementsprechend wäre zum Beispiel „null Komma sieben fünf“ gleich „eins Komma eins mal zwei hoch minus eins“. Das könnte man wiederum schreiben als:

Gleitkommazahl, Gleitkommadarstellung
Normierung

Dabei setzen wir ganz einfach um, was wir gerade gelernt haben: Wir setzen das Vorzeichenbit auf null, da unsere Zahl positiv ist, schreiben unseren Exponenten in die richtige Schreibweise um und geben unsere Nachkommastellen in Binärform an.  Wichtig dabei ist aber, dass wir uns an k halten müssen. Das heißt, wir füllen alle nicht benötigten Stellen mit Nullen auf.

Gleitkommazahl berechnen

Nun wollen wir uns die Gleitkommazahl noch an einem kurzen Beispiel anschauen.

Zu Beginn benötigen wir eine Zahl, die wir umrechnen können. Nehmen wir uns also der Einfachheit halber die 3.25. Diese müssen wir zunächst ins Binärsystem umwandeln. Dafür berechnen wir zuerst die Vorkommastellen.

Gleitkommazahl; Gleitkommadarstellung
Gleitkommazahl Beispiel

Dann nehmen wir den Rest und teilen erneut durch zwei. So erhalten wir noch einmal den Rest eins. Damit haben wir die Vorkommastellen. Bleiben noch die Nachkommastellen. Dazu rechnen wir: 2\ast 0,25 = 0,5. Damit ist unsere Ziffer null. Dann wiederholen wir denselben Vorgang mit unserem Ergebnis und erhalten eins, womit auch unsere binäre Ziffer eine eins ist.

Normierung der Zahl und 32-Bit-Gleitkommadarstellung

Damit sind wir aber noch lange nicht fertig, denn nun müssen wir diese Zahl normieren. Dazu verschieben wir das Komma – oder im Fall der Binärschreibweise – den Punkt, so weit nach links, dass nur noch eine Ziffer davorsteht. Machen wir das mit unserer Zahl, so erhalten wir:

{(11.01)}_2={(1.101)}_2\ast2^1

Jetzt wandeln wir unser Ergebnis noch in etwas für unseren Rechner Lesbares um. Dabei nehmen wir die häufig genutzte 32-Bit-Gleitkommadarstellung. Damit wir aber noch etwas damit anfangen können, gliedern wir diese 32 Bit so auf:

Gleitkommazahl, Gleitkommadarstellung
Ergebnis

Das erste Bit ist unser Vorzeichenbit, das hier null bleibt, da unsere Zahl positiv ist. Die nächsten acht Bit sind unsere Exponenten, also der zwei hoch eins zugewiesen. Bei der Exzess-q-Darstellung dieses Wertes liegt bei 32 Bit Länge der Bias bei 127. Also berücksichtigen wir diesen und schreiben unser Ergebnis. Als letztes geben wir noch den Dezimalbruch selbst an. Dabei müssen wir daran denken, dass wir nur die Nachkommastellen angeben müssen, weil unsere Zahl bereits normiert ist. Damit haben wir endlich unser Endergebnis erreicht.

Hallo, leider nutzt du einen AdBlocker.

Auf Studyflix bieten wir dir kostenlos hochwertige Bildung an. Dies können wir nur durch die Unterstützung unserer Werbepartner tun.

Schalte bitte deinen Adblocker für Studyflix aus oder füge uns zu deinen Ausnahmen hinzu. Das tut dir nicht weh und hilft uns weiter.

Danke!
Dein Studyflix-Team

Wenn du nicht weißt, wie du deinen Adblocker deaktivierst oder Studyflix zu den Ausnahmen hinzufügst, findest du hier eine kurze Anleitung.