Ein Computer kann ein Foto anzeigen, Musik wiedergeben, einen Film abspielen und einen Satz in nahezu jeder Sprache speichern. In Speicherchips und elektrischen Verbindungen bewegen sich jedoch keine Berge, Stimmen, Buchstaben oder Gesichter, sondern Bitfolgen. Die Umwandlung der wahrnehmbaren Welt in digitale Daten erfolgt nach genauen Regeln, die für Text, Bilder, Ton und Video unterschiedlich sind.
Der Satz „Alles wird zu Nullen und Einsen“ stimmt, erklärt aber allein nur wenig. Entscheidend ist, wie ein Zeichen, eine Farbe, eine Schallwelle oder ein Videobild zu Zahlen wird und wie der Computer daraus wieder Bedeutung erzeugt. Drei Begriffe sind dabei grundlegend: Abtastung, Quantisierung und Codierung.
Von der physischen Welt zu digitalen Daten
Viele physikalische Vorgänge sind kontinuierlich. Schall verändert sich ohne natürliche Stufen, Licht besitzt sehr viele Intensitäten und Farbabstufungen, und Bewegung ist nicht von selbst in Einzelbilder zerlegt. Ein Computer arbeitet dagegen mit endlichen, diskreten Werten. Deshalb muss ein kontinuierliches Phänomen an ausgewählten Punkten gemessen, in Zahlen eingeordnet und binär dargestellt werden.
- Abtastung: Auswahl von Punkten im Raum oder Zeitpunkten.
- Quantisierung: Zuordnung jeder Messung zu einem verfügbaren Zahlenwert.
- Codierung: Speicherung dieser Werte als Bytes nach einem bekannten Format.
Die Datentypen durchlaufen diese Schritte nicht immer auf dieselbe Weise. Text besteht bereits aus unterscheidbaren Symbolen; Schall beginnt als kontinuierliche Welle. Ein digitales Bild zerlegt den Raum in Pixel, ein Video ergänzt die Zeitdimension.
Text, Bilder, Ton und Video folgen unterschiedlichen Wegen, enden aber als geordnete Bitfolgen.
Text: vom Tastendruck zum Unicode-Codepoint
Beim Drücken einer Taste sendet die Tastatur nicht unmittelbar einen Buchstaben mit fester Bedeutung. Sie übermittelt einen Code für die Position oder das Ereignis der Taste. Das Betriebssystem interpretiert ihn mithilfe des ausgewählten Tastaturlayouts, zum Beispiel Deutsch, Italienisch oder Englisch. Erst danach erhält das Programm ein Zeichen.
Moderne Zeichen werden im Allgemeinen durch Unicode dargestellt. Unicode weist jedem abstrakten Zeichen eine Zahl zu, den Codepoint. Das große „G“ entspricht beispielsweise U+0047 beziehungsweise der Dezimalzahl 71. Die technische Einführung des Unicode Consortium unterscheidet das abstrakte Zeichen von seiner grafischen Form und von den Bytes, mit denen es gespeichert wird.
Der Unicode-Wert muss anschließend in Bytes serialisiert werden. UTF-8 ist eine der verbreitetsten Codierungen. Sie verwendet ein bis vier Bytes und lässt die Werte der ersten 128 ASCII-Zeichen unverändert. Die IETF-RFC 3629 definiert UTF-8 formal; das Unicode Character Encoding Model erläutert Zeichen, Codepoints, Codeeinheiten und Bytefolgen.
„Ein Zeichen entspricht einem Byte“ gilt deshalb nur in bestimmten Fällen. „G“ benötigt in UTF-8 ein Byte, viele akzentuierte lateinische Buchstaben zwei, zahlreiche Schriften und Symbole drei und manche Zeichen vier Bytes. Außerdem kann ein sichtbares Zeichen aus mehreren Codepoints bestehen, etwa aus einem Buchstaben und einem kombinierenden Akzent.
Vom Tastendruck zum Programm: Das Zeichen wird interpretiert, einem Unicode-Codepoint zugeordnet, in Bytes codiert und im Speicher abgelegt.
Hinweis zur Genauigkeit der Grafik: Das kyrillische Zeichen „к“ hat den Unicode-Codepoint U+043A. Die in einem Feld sichtbare Schreibweise „U+043K“ ist ein kleiner grafischer Tippfehler, da Hexadezimalzahlen nur die Ziffern 0–9 und die Buchstaben A–F verwenden.
Warum dasselbe Byte Verschiedenes bedeuten kann
Eine Bitfolge besitzt für sich allein keine universelle Bedeutung. Das Byte 01000001 kann als Zahl 65, als Buchstabe „A“ in ASCII und UTF-8, als Farbkomponente oder als Teil eines Maschinenbefehls interpretiert werden. Der Kontext entscheidet: Datentyp, Dateiformat, Netzwerkprotokoll oder Programmlogik.
Deshalb enthalten Dateien häufig Header und Metadaten. Sie teilen der Software mit, welches Format, welche Abmessungen, welche Zeichencodierung und welche Interpretation der folgenden Bytes gelten. Ist der Kontext falsch, können unveränderte Daten beschädigt erscheinen.
Bilder: ein Raster aus Pixeln und Farbkanälen
Ein Rasterbild wird in Bildpunkte, sogenannte Pixel, zerlegt. Die Auflösung nennt die Pixelzahl in Breite und Höhe. Ein Bild mit 1920 × 1080 Pixeln enthält 2.073.600 Positionen; damit ist jedoch noch nicht beschrieben, wie die Farbe jedes Pixels gespeichert wird.
Im RGB-Modell entsteht Farbe aus Rot, Grün und Blau. Bei 8 Bit pro Kanal stehen jeweils 256 Stufen von 0 bis 255 zur Verfügung. Ein RGB-Pixel mit 24 Bit kann Millionen Kombinationen darstellen. Ein Alphakanal kann zusätzlich Transparenz speichern.
Die PNG-Spezifikation des W3C beschreibt Graustufen-, indizierte und Truecolor-Bilder, Abtasttiefen von 1 bis 16 Bit und einen optionalen Alphakanal. PNG komprimiert verlustfrei: Nach dem Dekomprimieren sind die ursprünglichen Pixelwerte wieder vorhanden. Formate wie JPEG erzielen kleinere Dateien, indem sie weniger wahrnehmbare Informationen entfernen, arbeiten also verlustbehaftet.
Wie groß ist ein unkomprimiertes Bild?
Eine einfache Schätzung multipliziert Breite, Höhe, Kanalzahl und Bits pro Kanal. Ein RGB-Bild mit 1920 × 1080 Pixeln und 8 Bit je Kanal benötigt unkomprimiert ungefähr 6,2 MB, noch ohne Metadaten und Zusatzstrukturen. Kompression verhindert, dass jeder Wert in der direktesten Form gespeichert werden muss.
Ton: eine Welle viele Male pro Sekunde messen
Ein Mikrofon wandelt Luftdruckschwankungen in ein kontinuierliches elektrisches Signal um. Ein Analog-Digital-Wandler misst dessen Amplitude in regelmäßigen Abständen. Die Zahl der Messungen pro Sekunde heißt Abtastrate; die Zahl der verfügbaren Bits pro Messung heißt Bittiefe.
Lineares PCM speichert die Abtastwerte als Zahlen. Die Library of Congress nennt Abtastfrequenz und Bittiefe als zentrale Merkmale digitalen Audios. Eine Audio-CD verwendet beispielsweise üblicherweise 44.100 Abtastwerte pro Sekunde, 16 Bit pro Abtastwert und zwei Kanäle.
Eine höhere Abtastrate kann schnellere Änderungen erfassen; eine größere Bittiefe stellt mehr Zahlenstufen bereit und verringert den Quantisierungsfehler. Beides vergrößert die Datenmenge. Die Web Audio API des W3C arbeitet mit PCM-Puffern, die in Kanäle und Sample-Frames gegliedert sind, und definiert die Abtastrate ausdrücklich als Sample-Frames pro Sekunde.
Auch Audio lässt sich komprimieren. Verlustfreie Formate bewahren alle ursprünglichen Abtastwerte; verlustbehaftete Formate nutzen Eigenschaften des menschlichen Gehörs. Der Decoder muss am Ende wieder eine Folge von Abtastwerten erzeugen, die über einen Digital-Analog-Wandler an Lautsprecher oder Kopfhörer gelangt.
Video: Bilder, Zeit, Ton und Kompression
Ein digitales Video ist eine zeitlich geordnete Folge von Bildern, meist zusammen mit Tonspuren und Metadaten. Jedes Bild heißt Frame. Die Bildrate gibt an, wie viele Frames pro Sekunde dargestellt werden. 24, 25, 30, 50 und 60 sind häufige, aber nicht die einzigen Werte.
Jeden Frame unkomprimiert als vollständiges Bild zu speichern, würde enorme Datenmengen erzeugen. Videocodecs reduzieren die Größe, indem sie sowohl Wiederholungen innerhalb eines Frames als auch Ähnlichkeiten zwischen benachbarten Frames ausnutzen. Ein Keyframe lässt sich selbstständig decodieren; andere Frames beschreiben vor allem Änderungen gegenüber vorherigen oder folgenden Bildern.
ITU-T H.264 definiert eines der am weitesten verbreiteten Videocodiersysteme und wird weiterhin gepflegt. Die WebCodecs-Spezifikation des W3C unterscheidet Videoframes von codierten Datenblöcken und definiert den Keyframe. Für HDTV-Bildparameter und Farbdarstellung ist ITU-R BT.709 eine wichtige Referenz.
Codec und Container sind nicht dasselbe
Der Codec bestimmt, wie Audio oder Video komprimiert und dekomprimiert wird. Der Container organisiert Spuren, Zeitinformationen, Untertitel und Metadaten in einer Datei. Eine Dateiendung verrät daher nicht immer den verwendeten Codec; derselbe Container kann verschieden codierte Datenströme enthalten.
Die Rolle von RAM, CPU und GPU
Beim Öffnen einer Datei liest das Betriebssystem Bytes vom Datenträger und bringt die benötigten Bereiche in den Arbeitsspeicher. Das Programm interpretiert das Format, dekomprimiert die Daten und erzeugt nutzbare Strukturen. Die CPU koordiniert die allgemeinen Aufgaben; die GPU beschleunigt Grafik- und Videoberechnungen; spezielle Geräte wandeln digitale Werte in Signale für Bildschirm, Kopfhörer und Lautsprecher.
Der Speicher hält kein „Foto“ als unteilbares Objekt, sondern regelgerecht angeordnete Bytes. Der Prozessor hört keine Musik, sondern führt Befehle auf Zahlen aus, die Abtastwerte darstellen. Bedeutung entsteht aus der gesamten Kette von Standards, Dateien, Software und Ausgabegeräten.
Digitalisierung ist keine perfekte Kopie der Wirklichkeit
Jede Darstellung beruht auf Entscheidungen. Mehr Pixel können kleinere räumliche Details beschreiben, mehr Abtastwerte schnellere Klangänderungen, mehr Bits feinere Stufen. Die Qualität hängt jedoch ebenso von Quelle, Sensoren, Algorithmen, Kompression und Wiedergabegerät ab.
Größere Zahlen verbessern schlechtes Ausgangsmaterial nicht automatisch. Ein unscharfes Bild wird durch mehr Pixel nicht plötzlich scharf; eine verrauschte Aufnahme wird durch 24-Bit-Speicherung nicht sauber; ein stark komprimiertes Video kann bereits entfernte Details nicht zurückholen.
Häufige Irrtümer
- „Ein Zeichen ist immer ein Byte“: bei vielen Unicode-Zeichen falsch.
- „Mehr Megabyte bedeuten immer mehr Qualität“: Format und Kompression sind ebenso wichtig.
- „Ein Video ist nur eine Reihe von JPEG-Dateien“: moderne Codecs nutzen zeitliche Beziehungen.
- „Der Computer versteht Bilder und Wörter direkt“: er interpretiert Bytes nach Regeln.
- „Digital bedeutet fehlerfrei“: Abtastung, Quantisierung, Kompression und Übertragung haben Grenzen.
Häufig gestellte Fragen
Warum verwendet UTF-8 unterschiedlich viele Bytes?
Es bleibt für ASCII-Zeichen kompatibel und effizient und kann zugleich das gesamte Unicode-Repertoire darstellen.
Wie viele Farben kann ein 24-Bit-RGB-Pixel darstellen?
Bei 8 Bit für drei Kanäle ergeben sich 256 × 256 × 256, also 16.777.216 mögliche Werte.
Was ist der Unterschied zwischen Abtastrate und Bittiefe?
Die Abtastrate nennt die Messungen pro Sekunde; die Bittiefe die verfügbaren Zahlenstufen pro Messung.
Warum benötigen Videos so viel Speicher?
Sie verbinden Millionen Pixel, viele Frames pro Sekunde, Farbe, Ton und Metadaten. Ohne Kompression wäre der Datenstrom riesig.