Das Oktale Zahlensystem

Basis-8 verstehen

Oktal kennenlernen

Oktal (Basis-8) bildet eine Brücke zwischen Binär und menschlicher Lesbarkeit. Obwohl Hexadezimal es in der modernen Informatik weitgehend ersetzt hat, bleibt Oktal bei Unix-Dateiberechtigungen und in einigen Programmierkontexten wichtig. Das Verständnis von Oktal gibt Einblick in das Design von Zahlensystemen und die Computergeschichte.

Wie Oktal funktioniert

Stellenwerte

Jede Position ist eine Potenz von 8:

  • ...512, 64, 8, 1 (8³, 8², 8¹, 8⁰)

Beispiel: 752 (oktal)

  • 7 × 64 = 448
  • 5 × 8 = 40
  • 2 × 1 = 2
  • Summe = 490 (dezimal)

Warum nur 0-7?

Wenn 8 erreicht wird, erfolgt ein Übertrag in die nächste Position:

  • Dezimal 7 = 7 oktal
  • Dezimal 8 = 10 oktal
  • Dezimal 9 = 11 oktal

Oktal-Dezimal-Vergleich

DezimalOktalBinär
00000
55101
77111
8101000
10121010
162010000
641001000000
1001441100100
25537711111111
51210001000000000

Oktal und Binär

Die zentrale Beziehung: Jede Oktalziffer entspricht genau 3 Binärziffern.

Oktal zu Binär

Jede Ziffer in 3 Bits umwandeln:

  • 0 = 000, 1 = 001, 2 = 010, 3 = 011
  • 4 = 100, 5 = 101, 6 = 110, 7 = 111

Beispiel: 752 (oktal) zu Binär

  • 7 = 111
  • 5 = 101
  • 2 = 010
  • Ergebnis: 111101010

Binär zu Oktal

Bits in Dreiergruppen von rechts einteilen:

  • 111101010 → 111 | 101 | 010 → 7 5 2

Oktal in Unix-Dateiberechtigungen

Die häufigste moderne Verwendung von Oktal sind Unix/Linux-Dateiberechtigungen.

Berechtigungsbits

  • r (Lesen): 4
  • w (Schreiben): 2
  • x (Ausführen): 1

Drei Kategorien

  • Eigentümer: Erste Ziffer
  • Gruppe: Zweite Ziffer
  • Andere: Dritte Ziffer

Häufige Berechtigungen

OktalBedeutungSymbol
755Eigentümer: alle, Andere: Lesen+Ausführenrwxr-xr-x
644Eigentümer: Lesen+Schreiben, Andere: Lesenrw-r--r--
777Alle: alle Berechtigungenrwxrwxrwx
600Eigentümer: nur Lesen+Schreibenrw-------

Geschichte: Warum Oktal?

Frühe Informatik

  • Einige frühe Computer hatten 12-, 24- oder 36-Bit-Wörter
  • Diese sind gleichmäßig durch 3 teilbar
  • Oktal bot eine saubere Darstellung
  • PDP-8 (12-Bit) und PDP-10 (36-Bit) verwendeten Oktal umfassend

Der Wechsel zu Hexadezimal

  • 8-Bit-Bytes wurden Standard (IBM 360)
  • 8 Bits = 2 Hex-Ziffern (perfekte Passung)
  • 8 Bits = 2,67 Oktalziffern (ungünstig)
  • Hex setzte sich für die meisten Zwecke durch

Oktal in der Programmierung

Notation

  • C/C++/JavaScript: Führende 0 (gefährlich!)
  • Python 3: 0o-Präfix (eindeutig)
  • Einige Sprachen: 0o oder @

Die Gefahr führender Nullen

In C und JavaScript:

  • 010 = 8 (oktal!), nicht 10
  • 0777 = 511 (häufig für Berechtigungen)

Dies verursacht Fehler, wenn versehentlich 010 geschrieben wird und Dezimal 10 erwartet wird.

Moderne Praxis

  • Python 3 erfordert das explizite 0o-Präfix
  • Viele Stilrichtlinien raten von implizitem Oktal ab
  • Oktale Literale werden hauptsächlich für Dateiberechtigungen verwendet

Dezimal in Oktal umwandeln

Methode: Wiederholte Division durch 8

  1. Durch 8 teilen, Rest notieren
  2. Quotienten durch 8 teilen, Rest notieren
  3. Wiederholen bis Quotient 0 ist
  4. Reste von unten nach oben lesen

Beispiel: 500 (dezimal) in Oktal

DivisionQuotientRest
500 ÷ 8624
62 ÷ 876
7 ÷ 807

Ergebnis: 764 (oktal)

Fazit

Oktal (Basis-8) war historisch in der Informatik wichtig, als Wortlängen Vielfache von 3 Bits waren. Obwohl Hexadezimal es für den allgemeinen Gebrauch weitgehend ersetzt hat, bleibt Oktal für Unix-Dateiberechtigungen unverzichtbar und taucht gelegentlich in Altsystemen auf. Die zentrale Erkenntnis ist, dass jede Oktalziffer genau 3 Binärbits darstellt, was die Umwandlung unkompliziert macht. Das Verständnis von Oktal hilft bei der Arbeit mit Unix-Systemen, dem Lesen von Legacy-Code oder dem Studium der Computergeschichte.

Verwandte Artikel

Oktales Zahlensystem: Basis-8 verstehen | YounitConverter