Bruchzahlen (Binär+Hexadezimal) in Dezimal umrechnen (Zahlensysteme)

Published by Philipp Schuster on

Ich benötige für eine Prüfung Bruchzahlen in diversen Zahlensystemen, zum Beispiel Binär/Dual, Hexadezimal und Oktal. Hier möchte ich euch erklären, wie ihr diese ineinander umrechnet und dabei mit den Nachkommastellen umgeht. Ich zeige euch die Verfahren, die ich durch die Vorlesungen und Übungen von Prof. Spallek an der TU Dresden gelernt habe. Betrachten wir zunächst die Umwandlung von Nicht-Dezimal-Bruchzahlen zu Dezimal-Bruchzahlen, die geht meiner Meinung am leichtesten. In der Informatik spricht man auch von Festkommazahlen. Weitere Umformungen von Dezimal nach Binär/Hexadezimal erscheinen in einem separaten Artikel.

Sei

  • B die Basis unseres Zahlensystems (Dezimal: B=10, Binär/Dual: B=2, Hexadezimal: B=16),
  • ai der Koeffizient der jeweiligen ganzen Stelle (a Element aus {0, …, B-1}),
  • bi der Koeffizient der jeweiligen gebrochenen Stelle (b Element aus {0, …, B-1}),
  • n die Anzahl der Vorkomma-Stellen {n Element der natürlichen Zahlen} und
  • m die Anzahl der Nachkomma-Stellen {m Element der natürlichen Zahlen ohne Null}.

Dann sieht eine Zahl wie folgt aus:

Stellen-1n-20(Komma)-1-2-m
an-1*Bn – 1an-2*Bn – 2a0*B0,b1*B– 1b2*B– 2bm*B– m

Hexadezimale Zahl X16 = B36,98F16 zu Dezimal umrechnen

X16 =B36,98F
X10 =B16*16102+316*16101+616*16100+916*1610-1+816*1610-2+F16*1610-3
X10 =1110*16102+310*16101+610*16100+910*1610-1+810*1610-2+1510*1610-3
X10 =9 * 1/16+8 * 1/(162)+15 * 1/(163)
X10 =2816+48+6+0,5625+0.03125+0.003662109375
X10 =2870.59741211

Das gleiche Prinzip funktioniert für jedes Zahlensystem, das ihr ins Dezimalsystem umrechnen wollt. Wichtig hierbei ist immer, dass ihr daran denkt die Koeffizienten vom Quell-Zahlensystem ins Ziel-Zahlensystem zu übertragen. Siehe hierfür in die Tabelle, in der zum Beispiel aus einem 0xF eine 15 wird. (0x ist die Schreibweise der Informatiker für Hexadezimale Zahlen. Ist nichts anderes als F16.)

Binäre Zahl X2 = 1101,010112 zu Dezimal umrechnen

X2 =1101,01011
X10 =12*2103+12*2102+02*2101+12*2100+02*210-1+12*210-2+02*210-3+12*210-4+12*210-5
X10 =8+4+0+1+0,0+0.25+0,0+0.0625+0.03125
X10 =13.34375

PS: Man findet bei Google unter den ersten Suchtreffern nicht wirklich etwas, das hilft. Daher versuche ich euch zu helfen.


Philipp Schuster

Hi, I'm Philipp and interested in Computer Science. I especially like low level development, making ugly things nice, and de-mystify "low level magic".

0 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *