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
Nächstes Kapitel: 3. Boole’sche Algebra