Nachkommastellen einer Dezimalzahl ins Binärsystem umrechnen

binaerumrechnung

Aus aktuellem Anlass der Klausurvorbereitung für die Informatikklausur: Viele scheinen Probleme damit zu haben, bei der Umrechnung ins Binärsystem die Nachkommastellen richtig umzusetzen. Ich erspare mir daher hier jetzt auch einen kompletten Guide zur Gleitkommaberechnung oder IEEE Darstellung und greife einfach nur den Teilbereich „Nachkommastellen“ auf.

Also wollen wir mal mit einer Erklärung für Dummies…

Ausgangspunkt sei die Dezimalzahl 0.013, ein eher schwieriges, weil recht „krummes“ Beispiel (am Ende des Artikels kommt noch ein ganz simples Beispiel).

Das Prinzip zur Berechnung ist aber an sich simpel.

Man nimmt sich den reinen Nachkommateil mit der Null davor, also 0,013.

Übrigens auch dann, wenn die Zahl 18,013 wäre oder 128,013 oder was auch immer: Wir betrachten uns immer nur 0,013.

Diese multiplizieren wir mit zwei. Das ergibt 0,026. Die Null vor dem Komma merken wir uns oder schreiben sie auf. Das ist die erste binäre Ziffer für unsere spätere Binärdarstellung.

Nun wieder mit zwei multiplizieren. Das ergibt 0.052. Die Null vorne wieder merken (unsere zweite binäre Null) und rechnen immer weiter „mal zwei“.

Nach mehreren Schritten ist man in diesem Beispiel bei 0.832 * 2 = 1.664 angelangt, man überschreitet also die 1. Nun gilt es, sich die 1 vor dem Komma zu merken/aufzuschreiben.

Weitergerechnet wird aber wiederum nur mit 0.664 * 2, die 1 vor dem Komma fällt demnach einfach weg. 0,664 * 2 ist 1.328, wieder „1 gemerkt“, nur mit 0.328 * 2 weiterrechnen.

Und so weiter, und so fort. Die kompletten Schritte sähen etwa so aus, sofern ich mich nicht verrechnet habe:

0.013 * 2    = 0.026
0.026 * 2    = 0.052
0.052 * 2    = 0.104
0.104 * 2    = 0.208
0.208 * 2    = 0.416
0.416 * 2    = 0.832
0.832 * 2    = 1.664
0.664 * 2    = 1.328
0.328 * 2    = 0.656
0.656 * 2    = 1.312
0.312 * 2    = 0.624
0.624 * 2    = 1.248
0.248 * 2    = 0.496
0.496 * 2    = 0.992
0.992 * 2    = 1.984
0.984 * 2    = 1.968
0.968 * 2    = 1.936
0.936 * 2    = 1.872
0.872 * 2    = 1.744
0.744 * 2    = 1.488
0.488 * 2    = 0.976
0.976 * 2    = 1.952
0.952 * 2    = 1.904
0.904 * 2    = 1.808
0.808 * 2    = 1.616
0.616 * 2    = 1.232
0.232 * 2    = 0.464
0.464 * 2    = 0.932
0.932 * 2    = 1.864
0.864 * 2    = 1.728

Ergibt (die Zahlen der Ergebnisse vor dem Komma von oben nach unten): 000000110101001111110111110011, das ist also der Nachkommateil. Die komplette Binärzahl für „0,013“ wäre demnach 0.000000110101001111110111110011. Wäre unsere Dezimalzahl z.B. 8.013, wäre die Binärzahl 1000.000000110101001111110111110011. (1000 Binär = 8 Dezimal).

Wie gesagt, das Beispiel war eben etwas komplexer, auch habe ich nicht bis zum Ende gerechnet, eigentlich habe ich nur 0.01299999… errechnet. Viel einfacher und anschaulicher wird es, wenn wir Zahlen wie 0.5, 0.25, 0.75 oder vergleichbare betrachten. Die erste binäre 1 nach dem Komma (z.B. bei 0.1) ist die dezimale Zahl 0,5. Die zweite (0.01) steht für 0.25, die dritte (0.001) für 0.125 und so weiter. 0,75 wären binär also 0,11. 0,875 wären 0,111.

Ein einfacheres Beispiel durchgerechnet sähe folgendermaßen aus (ja, hätte ich vielleicht zu Beginn anführen sollen 😉 ): Man möchte 0,875 zu binär umrechnen:

0.875 * 2 = 1.75
0.75 * 2 = 1.5
0.5 * 2 = 1.0

0.875 dezimal ergibt binär also 0.111. Wir sind mit dem letzten Schritt bereits fertig, da genau 1.0 herauskommt.

Ich hoffe, nicht noch mehr Verwirrung gestiftet zu haben. Die Intention jedenfalls war eine gute 🙂

The following two tabs change content below.
Servus! Mein Name ist Michael Gregor, ich bin ehemaliger E-Commerce Student an der FHWS, Blogger, Webworker und schon IT-Geek seit ich 1994 meinem ersten 386er hatte 🙂 Meine Leidenschaft gilt neben den alten Bekannten wie SEO und Bloggen inzwischen dem Aufbau von Online Akademien und Kursplattformen.