Bits and Bytes - voll digital
Was ist ein Bit und was ein Byte?
Sie haben bestimmt schon mal was von Bits
gehört - oder? Und von Bytes sicherlich auch,
nicht wahr? Ist das nicht eigentlich ein und dasselbe oder hat es
nicht wenigstens etwas miteinander zu tun? Und was sind Kilobit
und MegaByte - ja, das kennt man doch, schließlich hat der
neue Rechner 2 MegaByte RAM oder waren es 2 GigaByte oder Gigabit? Und der DSL-Zugang hat 6 Mb - also
Megabit.... oder Byte oder was? Also, fangen wir von vorne an, denn
auch wenn es im Grunde ganz einfach ist, so verwirren einen die
vielen Begriffe und Abkürzungen doch sehr schnell.
Hinweis: Ich
schreibe das Wort Bit im Folgendem klein,
um es deutlicher vom "größerem" Byte
zu unterscheiden. Mögen alle Linguisten dieser Welt mir vergeben!
Desweiteren möchte ich darauf hinweisen, dass ich die Vorsatzbezeichnung
kilo klein, alle anderen (z.B. Mega, Giga) aber groß
schreibe (was mir ja vielleicht das ein oder andere wohlwollende
Physikerkopfnicken einbringt).
Am Anfang war das bit
Die kleinste Informationseinheit ist das bit
(engl. binary digit = binäre Ziffer).
Es kann zwei Werte annehmen: 1 oder 0 (bzw. JA/NEIN, AN/AUS, geladen/ungeladen,
usw.). Es gibt nichts dazwischen, die Information ist digital. Ach,
wo wir gerade dabei sind, lassen Sie uns die Begriffe digital und
analog klären:
Stellen Sie sich eine Lampe vor, die über
einen Schalter ein und aus geschaltet werden kann, z.B. die, die
bei Ihnen an der Decke hängt. Sie kann zwei Zustände annehmen:
AN oder AUS, also: das ist digital. Oh, Sie haben einen Dimmer
und können die Leuchtkraft der Lampe stufenlos einstellen?
Aha, analog. Ein analoges System kennt zwischen dem Zustand
AN und dem Zustand AUS unbegrenzt viele Abstufungen. Um dies mit
einem digitalen System zu erreichen, müsste man unendlich viele
digitale Abstufungen zwischen den beiden Zuständen einfügen.
In der Praxis würde man sich allerdings auf eine begrenzte
Anzahl beschränken, z.B. 8 verschiedene Helligkeitsstufen.
Ihr Computer arbeitet nach dem digitalen System,
weil es in der Frühgeschichte der Computer nur um das Rechnen
(engl. computing) ging und sich dafür das binäre Zahlensystem
anbot, welches nur 2 Werte (0 und 1) kennt. Außerdem ist
die Bearbeitung und Speicherung von Daten in digitaler Form technisch
einfacher realisierbar. Die Innereien Ihres Computers bergen Bauteile,
auf denen sich Millionen kleiner Transistoren befinden, welche die
eigentliche Arbeit erledigen, wenn Sie an der Tastatur oder mit der Maus Befehle erteilen.
Diese Transistoren sind im Prinzip winzige elektrische Schalter.
Wenn eine definierte elektrische Spannung an einem Transistor-Eingang
anliegt, schalten sie durch und leiten Information weiter, immer
bit für bit.
Hinweis: Als Multiplikationszeichen
verwende ich "*", also 2*4=8. Dagegen schreibe ich 2 hoch 4=16, nämlich
2*2*2*2.
8 Bit gleich 1 Byte
Soviel zum bit. Ein Byte besteht aus 8 bit.
Warum 8 und nicht 10 oder 12? Weil man das so festgelegt hat! Allerdings
war das nicht immer so, ein bit ist eine feste Größe,
die nicht weiterer Erläuterung bedarf. Allerdings wird damit
das Darstellen von großen Zahlenmengen sehr schnell unübersichtlich
und unhandlich. Also fing man an, bits in Gruppen zusammenzufassen.
Anfänglich gab es verschiedene "Byte-Größen", so
fasste man z.B. 2 mal 3 bits zusammen und konnte im Oktalen System
(Basiszahl 8 --> 2*2*2) rechnen. In alten Programmiersprachen stößt
man noch heute auf das oktale Zahlensystem (so wie viele an der
Käsetheke noch 1 halbes Pfund statt 250 Gramm Edamer bestellen).
Erst später wurden es dann 2 mal 4 bits und man rechnete hexadezimal
(Basiszahl 16 --> 2*2*2*2). So ist es in der Informatik heute noch,
und viele, die es gewohnt sind, mit dem Dezimalsystem (Basiszahl
10) zu rechnen, tun sich schwer damit. Warum das dezimale Zahlensystem
nicht im gleichen Maße wie das oktale und das hexadezimale
mit dem dualen Zahlensystem in Einklang gebracht werden kann ist
leicht nachvollziehbar, wenn man bedenkt, dass die Multiplikation
von 2 mit sich selbst nicht 10 ergeben kann, sondern eben nur 4,8,16,32,
usw.
Aber wir wollen es nicht mit der Rechnerei übertreiben.
Uns reicht es zu wissen, dass ein Byte aus einer Gruppe von 8 bit
besteht. Obwohl... vielleicht noch dies: Mit einem bit lassen
sich 2 Zustände beschreiben - wie bei der Lampe: AN und AUS.
Wenn wir jetzt noch ein zweites bit dazu nehmen, dann können
wir mit 2 bit 2*2 = 4 Zustände definieren und mit 3 bit 8 (2*2*2).
Das würde reichen, um die oben erwähnte 8-stufige Dimmerschaltung
zu realisieren. Wenn wir jetzt alle 8 bit eines Bytes zusammenfassen,
dann lassen sich damit 256 (2 hoch 8) Zustände beschreiben.
Ein Byte erlaubt die Darstellung von 256 Zuständen.
Das ist der Grund dafür, warum der erweiterte ASCII-Zeichensatzt
256 Zeichen kennt. (Der einfache ASCCII benutzt nur 7 bit und lässt
deshalb lediglich 128 Zeichen zu, keine Umlaute und dergleichen. Näheres dazu finden Sie übrigens im Artikel Der ASCII-Zeichensatz auf dieser Website.)
kilo, Mega, und Konsorten
Wenn Sie sich im Manual Ihres Rechners (sofern
Sie überhaupt eines bekommen haben) die Seite mit den technischen
Daten ansehen, dann werden Sie kaum auf Größen treffen,
die in Bit oder Byte angegeben sind. Sie finden Angaben wie etwa
kb, MB, GB. So wie eine Personenwaage nicht Gramm sondern Kilogramm
anzeigt verhält es sich auch mit der Wiedergabe etwa der Speicherkapazität
einer Festplatte: Die Maßangabe wird in größeren
Einheiten gemacht. Betrachten Sie folgende Tabelle:
| Einheit |
Vorsatzzeichen |
Wert |
Wert*k |
Wert*M |
Wert*G |
| kilo |
k |
1.000 |
|
|
|
| Mega |
M |
1.000.000 |
1.000 |
|
|
| Giga |
G |
1.000.000.000 |
|
1.000 |
|
| Terra |
T |
1.000.000.000.000 |
|
|
1.000 |
Allerdings gibt es zwischen der obigen, auf dem
dezimalen System beruhenden Zusammenfassung und der äquivalenten
dualen einen Unterschied, dem in der folgenden Tabelle Rechnung
getragen wird:
| Einheit |
Vorsatzzeichen |
Potenz |
Wert (Byte) |
Abkürzung |
Wert*k |
Wert*M |
Wert*G |
| kilo |
k |
2 hoch 10 |
1.024 |
kB |
|
|
|
| Mega |
M |
2 hoch 20 |
1.048.576 |
MB |
1.024 |
|
|
| Giga |
G |
2 hoch 30 |
1.073.741.824 |
GB |
|
1.024 |
|
| Terra |
T |
2 hoch 40 |
1.099.511.627.776 |
TB |
|
|
1.024 |
Ein kB sind also 2 hoch 10 = 1.024 Byte, ein MB
sind 2 hoch 20 Byte, usw. Die Hersteller von Festplatten greifen
gerne zu einem kleinen Trick, um die Kapazität ihrer Produkte
größer scheinen zu lassen: Bei ihnen hat ein Gigabyte
nur 1.000.000.000 Byte, so wird umgekehrt aus einem echten GB 1,073
GB, das sind also über 7% mehr vorgegaukelte Kapazität.
Allerdings muss zu ihrer Entlastung erwähnt werden, dass Datenübertragungsraten
tatsächlich im Dezimalsystem gerechnet werden, hier sind 1
kB also 1.000 Byte und Festplatten sind schließlich Speichermedien,
auf die Daten übertragen werden. ;-)
Die Datenübertragungsrate eines Modems wird
meist in kilobit pro Sekunde (kb/s), angegeben. Ein 56k-Modem kann
also 56.000 bit (da hier k = 1.000) in der Sekunde übertragen.
Das ist allerdings nur ein theoretischer Wert, der sich an das Modem
direkt knüpft. In der Datenübertragung via Internet ist
die Datenübertragungsrate u.a. von der Bandbreite des jeweiligen
ISP (Internet Service Provider) abhängig und erreicht bei einer
analogen Anbindung selten mehr als ca. 3 kB/s. Wahrscheinlich huscht
jetzt gerade ein Lächeln über Ihr Gesicht; heute sind
die meisten Rechner schließlich via DSL an das Internet angebunden.
DSL erlaubt Übertragungsgeschwindigkeiten, die in etwa hundertfach
höher als die eines analogen Modems sind.
Hinweis:1kB = 8 kb, da 1 Byte
= 8 bit
Eine kleine Rechenaufgabe
Sie wollen ein Dokument mit der Größe
von 3 MB aus dem Internet laden und verfügen über eine
Anbindung mit durchschnittlich 2,6 kB/Sek. Wie lange wird der Download
dauern?
Na, haben Sie's ausgerechnet. Zugegeben die Aufgabe
war etwas tricky, hielt sich aber an die gängigen Einheiten.
Beim Modem wird die maximale Übertragungsrate meist in kb/s
(kilobit pro Sekunde) beim Download hingegen in kB/s (kiloByte pro
Sekunde) angegeben. Außerdem ist der Unterschied zwischen
der Größe von einem kB in bezug auf den Datentransfer
(1kB = 1000 Byte) und in bezug auf die Dateigröße (1
kB = 1024 Byte) zu berücksichtigen. Die Lösung errechnet
sich also folgender maßen:
3 MB = 3.145.728 Byte (3*1.024*1.024)
3.145.728 Byte / 2.600 Byte /s => 1209,90 Sekunden => 20 Minuten
und 9,9 Sekunden.
Das hatten Sie ja sicher auch raus, oder?