Bits und Bitfolgen

Um Informationen in einem Rechner verarbeiten zu können, benötigen wir erst eine Möglichkeit diese Informationen physikalisch einfach darzustellen. Dies läßt sich sehr leicht über unterschiedliche Spannungszustände realisieren, beispielsweise +3 und -3 Volt. Dargestellt werden diese beiden Zustände dann als 1 und 0. Oft werden auch die Bezeichnungen „wahr“ (true) und „falsch“ (false) oder an und aus als Synonyme verwendet.

Bei dieser Zustandsbeschreibung handelt es sich um die kleinste Informationseinheit, die mit dem Begriff Bit bezeichnet wird.

Das Bit ermöglicht es uns jetzt beliebige Informationen zu kodieren. Dazu müssen wir mehrere Bits miteinander kombinieren um alle möglichen Zustände beschreiben zu können. Bereits bekannt ist ja die Möglichkeit die Zustände an und aus über ein Bit darzustellen:

0 aus
1 an

Nun wollen wir jedoch mehr als nur zwei Zustände darstellen, beispielsweise die vier Himmelsrichtungen Norden, Osten, Süden und Westen. Dies können wir nicht mehr mit einem einzelnen Bit realisieren, weshalb wir ein zweites kombinieren:

00 Norden
01 Osten
10 Süden
11 Westen

So lassen sich nun Unmengen von Informationen durch geeignet lange Bit-Reihen darstellen. Jedes angefügte Bit verdoppelt die Anzahl der beschreibbaren Zustände, d.h. n Bit = 2n Zustände.

Anzahl Bits Darstellbare Zustände
1 2
2 4
3 8
4 16
5 32
6 64
n 2n

Um die Anzahl der benötigten Bits bei x Zuständen zu ermitteln lässt sich natürlich der Logarithmus von x zur Basis 2 bestimmen. Sofern es sich dabei nicht um eine ganze Zahl handelt, müssen wir natürlich zur nächsten ganzen Zahl aufrunden. In einem solchen Fall können wir sogar mehr Zustände darstellen als wir eigentlich benötigen, was sich jedoch nicht vermeiden lässt.

Darzust. Zustände n log2n Nötige Bits m Mögl. Zustände mit m Bit
2 1 1 2
4 2 2 4
7 ~2,807 3 8
8 3 3 8
10 ~3,322 4 16

Lassen wir uns das ganze einmal an Hand eines Beispiels betrachten. Dazu versuchen wir, ein Schachbrett mit Bits darzustellen.

1. Erfassung der Figuren

Es gibt Bauern, Türme, Springer, Läufer, die Dame und den König, also 6 verschiedene Figuren. log26~=2,58, also benötigen wir 3 Bit zur Darstellung der Figuren.

2. Erfassung der Position

Da ein Schachbrett 8 mal 8 Felder umfasst gibt es 64 verschiedene Positionen die unsere Figuren einnehmen könnten. Daraus lässt sich folgern, dass wir exakt 6 Bits zur Darstellung der Position benötigen.

3. Schwarz oder weiß?

Im Schach unterscheiden wir zudem, ob die Figur schwarz oder weiß ist. Für diese zwei Zustände benötigen wir also nochmal ein Bit.

4. Vollständige Darstellung

Zur Erfassung einer Figur benötigen wir also 1 (Farbe) + 3 (Figur) + 6 (Position) = 10 Bits. Um das gesamte Brett mit seinen 32 Figuren zu beschreiben sind also 32*10 = 320 Bits erforderlich.

Schon am vorhergehenden Beispiel sieht man leicht, dass schnell sehr viele Bits benötigt werden. Um die Arbeit zu erleichtern gibt es Namenskonventionen um größere Bitmengen zu beschreiben:

1 Bit kleinste Informationseinheit
1 Nibble 4 Bits selten verwendet
1 Byte 8 Bits z.B. ein ASCII Zeichen, siehe unten
1 Word 32 oder 64 Bits Abhängig von der Registerbreite der CPu (Stichwort 32 und 64 Bit CPUs)

1 kiloByte 210 Byte = 1024 Byte
1 MegaByte 220 Byte = 1024 kiloByte
1 GigaByte 230 Byte = 1024 MegaByte
1 TeraByte 240 Byte = 1024 GigaByte
1 PetaByte 250 Byte = 1024 TeraByte
1 ExaByte 260 Byte = 1024 PetaByte

Ein ExaByte steht somit für 9223372036854775808 Bits, also für 29223372036854775808 Zustände.

Dateien sind eigentlich nichts anderes als beliebige Bitfolgen. Um die Zuordnung zu erleichtern wird in der Regel der Typ der Datei in ihrem Namen angegeben. So können .doc Dateien z.B. Word und .pdf Dateien dem Adobe Reader zugeordnet werden.

2 thoughts on “Bits und Bitfolgen

  1. Der nächste Teil heißt „Grundlagen Teil 2: Informationsdarstellung“, anschließend folgen erstmal boolsche Logik und Rechneraufbau (Addierwerke etc.) Teil 2 sollte heute oder morgen fertig werden, je nachdem wann ich dazu komme 😉

Comments are closed.