2. Zahlensysteme

2.1. Dezimalsystem

Das Dezimalsystem hat seine Bezeichnung von der Zahl 10 (deka) erhalten. Dabei wird jede Ziffer einer Dezimalzahl als Multiplikator einer Potenz der Basis 10 angesehen. Erlaubte Ziffern für eine Dezimalzahl sind die Ziffern 0 bis 9 (allgemein von 0 bis Basis - 1).

Beispiel:

Die Zahl 1234 setzt sich zusammen aus 1 * 103   +   2 * 102   +   3 * 101   + 4 * 100   =   1234. D.h. die erste Ziffer von rechts wird mit der Basis hoch 0 multipliziert, die zweite Ziffer von rechts wird mit der Basis hoch 1 multipliziert, die dritte Ziffer von rechts wird mit der Basis hoch 2 multipliziert usw. Dann werden die einzelnen Werte summiert und ergeben den Zahlenwert.

Nach diesem Schema können nun die anderen Zahlensysteme betrachtet und schnell erklärt werden. Zur besseren Unterscheidung der Zahlen anderer Zahlensysteme zu den Dezimalzahlen werden diesen Zahlen die Basis als tiefgestellter Index angehangen.

2.2. Binärsystem

Das Binärsystem ist ein Zahlensystem zur Basis 2 (bi). Erlaubte Ziffern sind daher nur die Ziffern 0 und 1. Binärzahlen werden meistens in Achter- oder manchmal in Vierergruppen dargestellt.

Beispiel:

Die Zahl 010101012 setzt sich nach dem oben angegebenen Schema also wie folgt zusammen:
0 * 27   +   1 * 26   +   0 * 25   +   1 * 24   +   0 * 23   +   1 * 22   +   0 * 21   +   1 * 20   =   8510.

Binärzahlen sind in der Informatik sehr wichtig; denn eine Binärziffer stellt die kleinste Einheit dar (0 oder 1). Eine Binärziffer wird Bit (Binary Digit; englisch für Binärziffer) genannt. Die Bedeutung kann vielfältig sein: Neben der Zahlendarstellung kann ein Bit auch anders gedeutet werden, z.B. als Wahrheitswert (0: falsch und 1: wahr; später wird jede Zahl ungleich 0 für wahr stehen) oder für An und Aus (0: Strom fließt nicht und 1: Strom fließt).

8 Bit ergeben ein Byte (auch Oktett genannt). Damit wird der Zahlenbereich von 000000002 (entspricht 010) bis 111111112 (entspricht 25510) abgedeckt. Oder es werden 8 Wahrheitswerte in einer Zahl gespeichert; dann wird diese Zahl auch Bitmaske genannt.

Aufgrund des Oktetts werden Binärzahlen meistens in Achtergruppen dargestellt. Manchmal wird das Oktett auch in zwei Vierergruppen unterteilt; diese 4 Bit werden dann Nibble genannt. Jedes Nibble kann Werte von 0 bis 15 enthalten und lässt sich damit direkt auch als eine hexadezimale Ziffer darstellen (siehe nächsten Abschnitt).

Weitere häufig verwendete Werte sind 16, 32 und 64 Bit. Sie werden im Zusammenhang mit Betriebssystemen bzw. Prozessoren verwendet. Dabei gibt die Bitzahl an, welche Zahlen direkt vom Prozessor und damit wie viele Speicheradressen (zumindest theoretisch) angesprochen werden können. Bei 16 Bit sind es 65.536 Speicheradressen (216 Byte = 64 kByte; z.B. PCs mit 8086-Prozessoren), bei 32 Bit sind es 4.294.967.296 Speicheradressen (232 Byte = 4 GByte; z.B. PCs mit Pentium-Prozessoren) und bei 64 Bit sind es 18.446.744.073.709.551.616 Speicheradressen (264 Byte = 16 EByte) - wie gesagt: theoretisch!

Bei größeren Werten werden die aus der Physik bekannten Vorsilben wie z.B: Kilo, Mega, Giga usw. verwendet. So sind 1.000 Byte gleich 1 Kilobyte. Um aber mit Binärzahlen einfacher arbeiten zu können, wird die nächstgelegene Zweierpotenz verwendet: So wird anstelle von Kilobyte die Einheit kB (gesprochen K-Byte) verwendet. Dabei ist 1 kB gleich 1.024 (= 210) Byte, 1 MB gleich 1.024 kB gleich 1.048.576 (= 220) Byte usw. Leider sprechen viele von Kilobyte und Megabyte, obwohl sie kB und MB meinen.

2.3. Hexadezimalsystem

Hexadezimale Zahlen sind Zahlen zur Basis 16 (hexa für 6 und deka für 10). Da für die erlaubten Ziffern die zehn Ziffern vom Dezimalsystem 0 bis 9 nicht ausreichen, werden die ersten 6 Buchstaben des Alphabets noch dazugenommen: A bis F. Dabei ist A = 10, B = 11, C = 12, D = 13, E = 14 und F = 15. Anstelle der Großbuchstaben A bis F können auch die Kleinbuchstaben a bis f verwendet werden.

Um hexadezimale Zahlen von Zahlen anderer Zahlensysteme zu unterscheiden, wird entweder ein 0x bzw. 0X vor die Zahl oder ein h hinter die Zahl gesetzt.

Beispiel:

Die Zahl 0X1AF2 (alternative Darstellungen: 0x1af2, 1AF2h oder 1AF216) setzt sich wie folgt zusammen:
1 * 163   +   10 * 162   +   15 * 161   +   2 * 160   =   689810.

2.4. Oktalsystem

Oktale Zahlen sind Zahlen zur Basis 8 (okto). Entsprechend sind nur die Ziffern von 0 bis 7 in diesem Zahlensystem erlaubt. Oktalzahlen wird eine 0 vorangestellt, um sie von den Dezimalzahlen zu unterscheiden.

Beispiel:

Die Oktalzahl 0171 ist (nicht nur die Vorwahl einer Mobilfunknummer sondern auch) die Dezimalzahl
1 * 82   +   7 * 81   +   1 * 80   =   12110.

2.5. Umrechnen zwischen den Zahlensystemen



2.6. Binärdarstellung von Zahlen mit und ohne Vorzeichen





Nächstes Kapitel: 1. Grundbegriffe