4.2 – Hexadezimal-Oktal-Umwandlung

 
  1. Wandeln Sie die Hexadezimalzahl 9C3A16 in eine Oktalzahl (Basis 8 ) um.
  2. Wandeln Sie die Oktalzahl 1754328 in eine Hexadezimalzahl (Basis 16) um.

Lösung

a)

Es gibt zwei Möglichkeiten. Die komplizierte ist es, die Zahl zunächst von hexadezimal in dezimal umzuwandeln, und dann in oktal. Einfacher ist es in diesem Fall (weil 16 und 8 beides Zweierpotenzen sind), von hexadezimal in dual umzuwandeln, und von dort in oktal. Dies wollen wir nun durchführen. Dazu wandeln wir jeden Buchstaben der Hexadezimalzahl einzeln in 4 Bits Dualcode um:

\begin{array}{*{20}{c}} 9 &\vline & C &\vline & 3 &\vline & A \\ \hline{1001} &\vline & {1100} &\vline & {0011} &\vline & {1010} \\ \end{array}

Nun teilen wir die so entstandene Dualzahl in Dreierblöcke ein und wandeln jeweils drei Bits in eine Oktalzahl um. Die ersten beiden 0er Bits sind dabei aufgefüllt, damit überall 3er-Blöcke entstehen:

\begin{array}{*{20}{c}}{001} &\vline & {001} &\vline & {110} &\vline & {000} &\vline & {111} &\vline & {010} \\ \hline 1 &\vline & 1 &\vline & 6 &\vline & 0 &\vline & 7 &\vline & 2 \\ \end{array}

b)

Das Vorgehen ist hier die Umkehrung zur ersten Teilaufgabe:

\begin{array}{*{20}{c}} 1 &\vline & 7 &\vline & 5 &\vline & 4 &\vline & 3 &\vline & 2 \\ \hline{001} &\vline & {111} &\vline & {101} &\vline & {100} &\vline & {011} &\vline & {010} \\ \end{array}

Hier werden nun die beiden führenden Nullen weggelassen, damit 4er-Blöcke entstehen:

\begin{array}{*{20}{c}}{1111} &\vline & {1011} &\vline & {0001} &\vline & {1010} \\ \hline F &\vline & B &\vline & 1 &\vline & A \\ \end{array}