|
Die Codierungstheorie beschäftigt sich mit der Frage, wie Daten abgelegt werden.
Die nullte Frage nach der Art der Ablage ist rein technisch und geklärt, Daten werden binär abgelegt. Leider ist damit erst
das Niveau "wir machen Kontraste" erreicht (zum Beispiel schwarze Tinte gegen weißes Papier stellt einen Kontrast dar, der
Information vermittelt), das alleine reicht nicht. Genauso wie in der geschriebenen Sprache Konventionen existieren, wie Punkte
und Linien verstanden werden sollen, muß das auch bei der binären Sprache passieren.
Je nach Ziel der Kommunikation können nun beliebige "Übersetzungen" zwischen binären Zifferfolgen und dem "Verstandenen"
erfolgen. Im einfachen Fall, den jeder kennt, hat man 7 binäre Ziffern (Bit) die anhand einer
Tabelle in Buchstaben des (amerikanischen) Alphabetes übersetzt werden. Aus praktischen Gründen wurde dann entschieden, 8 Bit zu
einem Byte zusammenzufassen.
Aber nicht jede Codierung muß derartig sein. Der LZW "Kompressionsalgorithmus" basiert auf
der Erkenntnis, dass die Verwendung immer gleichlanger Bitfolgen für ein Zeichen nur dann ein gutes Verhältnis von Datenlänge zu
Nutzdaten hat, wenn alle Bytes gleichhäufig vorkommen. Wenn man nun in einer Datenmenge das Vorkommen aller Bytes zählt kann man
die Codierung so abändern, dass häufig vorkommende Bytes durch weniger als 8 Bit beschrieben werden, und umgekehrt. Abschließend
muß man noch eine Übersetzungstabelle mitliefern und fertig ist die komprimierte Datei. Nach dem gleichen Prinzip ist schon der
Morsecode entwickelt worden...
Umgekehrt kann es aber auch erwünscht sein, dass Daten gegen (Übertragungs-) Fehler geschützt werden. Unter dieser Prämisse
wird der Inhalt der Datenmenge erniedrigt, was eine Redundanz bzw. Fehlertoleranz mit sich bringt.
Als letztes ist definitiv noch die Kryptographie zu nennen, die auch
eine Form von Codierung darstellt. Einzig die Übersetzung zwischen der Datenmenge und dem Inhalt ist weniger einfach als zum
Beispiel ASCII.
Eine Form der Codierung stellen z.B. die Gruppencodes dar.
|