- Kodierung
-
Ein Code oder Kode [koːt] ist eine Vorschrift, wie Nachrichten oder Befehle zur Übersetzung für ein Zielsystem umgewandelt werden. Beispielsweise stellt der Morsecode eine Beziehung zwischen Buchstaben und einer Abfolge kurzer und langer Tonsignale her. Im allgemeinen Sprachgebrauch versteht man unter einem Code meist einen geheim gehaltenen Code, der zur Verschlüsselung von Botschaften verwendet wird. Eine codierte Nachricht kann aus Daten, Ziffern, Zeichen, Buchstaben oder anderen Informationsträgern bestehen, also zum Beispiel auch aus DNA-Strängen.
In der Kommunikationswissenschaft bezeichnet ein Code im weitesten Sinne eine Sprache.
Inhaltsverzeichnis
Allgemeine Bedeutung
Im Allgemeinen ist ein Code eine Vereinbarung über einen Satz (eine Menge) von Symbolen (Bedeutungsträgern, oder Verweisen) zum Zweck des Informationsaustauschs. Information existiert nicht in „reiner“ Form; sie ist immer in irgendeiner Weise formuliert. Ein Code ist - allgemein ausgedrückt - eine Formulierung von Information. Das setzt folgende Elemente voraus:
- mindestens eine informationsformulierende Instanz (Aufzeichner/Sender)
- mindestens eine informationsempfangende Instanz (Lesender/Empfänger) - kann unter Umständen auch identisch mit (1) sein
- ein zu übermittelnder, abstrakter Inhalt, die Information
- eine Vereinbarung zum Zweck der Informationsformulierung und gegebenenfalls Informationsübermittlung. Diese enthält einen Satz von Bedeutungsträgern oder Symbolen, der beiden Instanzen (1) und (2) bekannt ist, und gegebenenfalls Regeln zur Verwendung der Symbole
Menschliche Sprache und Tierlaute beispielsweise sind Codes unterschiedlicher Komplexität und Kapazität. Im Falle der Tierlaute ist die „Vereinbarung“ durch natürliche Evolution entstanden.
Definition
Ein Code f über den Alphabeten A und B ist eine (eindeutige) Abbildung (= Codierung) der Form . Er ordnet Wörtern aus Symbolen des Alphabets A Wörter aus dem Alphabet B zu. Als Code wird auch die Bildmenge von f, bezeichnet.
Der Code heißt entzifferbar, wenn es eine eindeutige Umkehrabbildung f − 1 gibt, die jedem Nachrichtenwort aus B wieder das ursprüngliche Wort aus A zuordnet.
Effizienz
In der spezifischeren, üblichen Bedeutung ist ein Code eine Vereinbarung über einen Satz von Symbolen (Verweisen) zwischen Aufzeichnenden (Sendern) und Lesenden (Empfängern), um eine effiziente Vermittlungsweise für häufige Botschaften zu etablieren. Er dient der aufwandsarmen (energie- und zeiteffizienten) und sicheren, zuverlässigen Aufzeichnung und Übertragung von Information. Dies wird je nach Art der Information und dem Anwendungsbereich unterschiedlich realisiert. Effizienz wird durch Reduzierung der Komplexität erreicht, wodurch auch die Kapazität des Codes abnimmt. Dazu werden anstelle der Information in ihrer vorliegenden Form einfachere Elemente und Kombinationen von diesen verwendet. Diese Kombinationen verweisen auf die ursprüngliche Information. Je häufiger etwas verwendet wird, desto geringer sollte der Aufwand für die Verarbeitung eines Elements sein.
Codes beinhalten zwei Aspekte von Effizienz:
- Einerseits ersetzen sie das Ursprüngliche durch einen reinen Verweis auf dieses (das Bezeichnete wird durch das Codewort ersetzt) und benötigen daher nur einen Vorrat an Verweisen, der Wiedererkennbarkeit und Unterscheidbarkeit garantiert (Irrtumsfreiheit).
- Zweitens benutzen sie meistens ein Baukastensystem, indem häufigere Verweise durch kurze (wenigelementige) Kombinationen und seltenere Verweise durch längere (vielelementige) Kombinationen bereitgestellt sind. Dadurch werden die einfachsten Elemente (Bauelemente, Zeichen) möglichst häufig verwendet bzw. wiederverwendet (Nämlich in fast allen Verweisen).
Codes werden in einem größeren Rahmen gesehen, unabhängig von ihrer eigenen Raffinesse, erst durch die wiederholte Verwendung als Hilfsmittel zur Informationsübertragung wirklich effizient. Denn die Verständlichkeit beim lesenden System setzt ja auch in diesem irgendeine vorbereitende Organisation (zum Beispiel Lernen) voraus. Codes werden daher zu einem Bestandteil von Kultur von Systemen (zum Beispiel Landessprache, technische Standards) und entwickeln eine gewisse Beharrlicheit gegen Änderungen. Die Energieminimierung macht Codes attraktiv für die Informationsübertragung unter besonderen Bedingungen: große Entfernungen, große Zeitspannen, große Empfängerzahl, Übertragung mit minimalem Aufwand in Notsituationen, Übertragung mit Hilfe anderer Systeme, die in diesem Energie- und Strukturdynamikbereich arbeiten.
Die Effizienz kann gesteigert werden durch:
- Die Benutzung von Verweisen, auch in anderen Bereichen, wie zum Beispiel Simulation.
- Mehrere aufeinanderfolgende Verweise. Über eine lange Kette kann auch indirekt eine Wirkung erzielt werden.
- Die Benutzung eines Baukastensystems, wenn hierdurch die Verwendung häufiger einfacher Elemente gefördert wird.
Niklas Luhmann benutzt den Terminus technicus Codes als Bezeichnung für standardisierte Differenzen (Leitdifferenz).
In der Nachrichtentechnik spricht man von der Quellenkodierung.
Redundanz
Ein Code kann so aufgebaut sein, dass das Ergebnis, in das er eine Information kodiert, überflüssige, also redundante Anteile enthält. Das heißt, die erzeugte Abfolge von Symbolen enthält Daten, die nicht zum Ziel führen und wenn man sie falsch dekodiert, ein falsches Ergebnis ergeben.
Im einfachsten Fall wird dasselbe noch einmal wiederholt. Aber jede erhöhte Vorhersagbarkeit von Zeichen ist Redundanz: So sind zum Beispiel die u nach q im Schriftdeutschen alle redundant, da auf ein q immer ein u folgt. Es würde also keinerlei Information verloren gehen, wenn alle auf ein q folgenden u entfernt würden. Die Redundanz hilft einem jedoch, wichtige Informationen trotz eines partiellen Datenverlustes noch entziffern und benutzen zu können. Sie schützt also vor Informationsverlust. Zudem erlaubt sie, verfälschte Information als solche zu erkennen.
In der Nachrichtentechnik spricht man von der Kanalkodierung.
Beispiele für Codes
- Im Computer wird u. a. der ASCII (American Standard Code for Information Interchange) benutzt, um Buchstaben, Zahlen und Satzzeichen durch Bitfolgen darzustellen. Heute durch den Unicode erweitert auf fast alle Zeichensysteme der Welt.
- Außerdem gibt es in der Computertechnik den so genannten Maschinencode, dabei handelt es sich um einen Binärcode, der Instruktionen und Daten für den Prozessor enthält.
- In der Datenübertragung benutzt man Leitungscodes.
- In der Biologie ist der genetische Code eine Anleitung, nach der während der Proteinbiosynthese die Informationen der DNA/RNA in Aminosäuresequenzen übersetzt werden.
- In der Gesellschaft sind Sprache und Schrift als Codesysteme zu betrachten.
- Im Internet findet sich der Geekcode in E-Mails oder im Usenet.
- Beim Programmieren kodiert man Algorithmen als Quellcode
- in der großen Luftfahrt die IATA-Codes und ICAO-Codes.
- in der Sprache ein Merkmal der verbalen Kommunikation (Soziolinguistik) der Soziolekt.
- Mit monoalphabetischer Verschlüsselung werden Buchstaben durch andere Buchstaben ersetzt. Aber auch komplexere Verschlüsselungsverfahren werden umgangssprachlich häufig als Code oder Geheimcode bezeichnet.
- Die International Standard Book Number ISBN dient zur eindeutigen Identifizierung von Büchern und stellt einen fehlererkennenden Code dar.
- Die International Standard Serial Number ISSN dient zur eindeutigen Identifizierung von Zeitschriften und Schriftenreihen und stellt einen fehlererkennenden Code dar.
- EAN als fehlererkennender Code
Siehe auch
- Codebuch
- Enigma (Maschine)
- Informationstheorie
- Kodierungstheorie
- Kryptographie
- Morsecode
- Redundanz (Informationstheorie)
- S-Code
- Semiotik
- Umberto Eco
- Verschlüsselung
- Zeichenkodierung
- Zielcode
Weblinks
- Code Knacker – Erläuterungen zu einer Vielzahl von Kodierungen
Wikimedia Foundation.