A kód egy véges ábécéhez tartozó, véges rendezett karakterkészlet egy-egy leképezése egy másik, nem feltétlenül rendezett, általában kiterjedtebb karakterkészletre információ továbbításának , tárolásának vagy átalakításának kódolására. .
A kódolás az adatok átalakítása azáltal, hogy az egy ábécéhez nem tartozó, azonos sorszámú elemek között egyértelmű jelentést hozunk létre [1] . Például Morse-kód : ebben egy pont- és kötőjelsorozat felel meg bármely karakternek. Bináris kód : a nullák és egyesek kombinációinak is van sorrendje.
Az elemi kódolt szimbólumok sorozatát általában kódüzenetnek vagy kódüzenetnek nevezik . Néha egy ismert hosszúságú kódolt szimbólumsorozatot kódszónak vagy kódkeretnek neveznek .
Az üzenet kódnak megfelelő karakterkombinációvá alakításának folyamatát kódolásnak , az üzenet karakterkombinációból történő visszaállítását dekódolásnak nevezzük .
A kódfákat a kódok vizuális leírására használják . Ha minden szinten vannak csomópontok, ahol l a szintszám (a fa gyökere nulla szinten van), azt teljesnek nevezzük . Nyilvánvalóan az érték , amelyet a fa térfogatának neveznek , a kódkombinációk maximális számát jellemzi, amelyeket ezzel a fával lehet létrehozni.
A fordítók felépítésének elméletében egy ilyen fa leírja a formális nyelvtanból származó összes lehetséges következtetési lánc halmazát .
Az előtagkód olyan kód, amelyben nincs egyetlen olyan kódszó sem, amely az adott kód bármely más kódszava előtagja (eleje) lenne. Bármely előtag kód elválasztható (vagyis bármely kódszavak sorozata mindig egyértelműen különálló szavakra bontható) [2] . Példák az előtagkódokra a Shannon , Shannon-Fano és Huffman kódok .
Egységes kódolás: m 1 karakteres ábécé esetén hosszúságú kódszavakat használunk , ahol a felfelé kerekítés egy magasabb egész számra. Ebben az esetben a kódszavak használaton kívül maradnak, a többit pedig az elsődleges ábécé szimbólumaihoz rendeljük. A Baudot kód fix hosszúságú, 5 karakter.
Előtagkódok: A Shannon-Fano kód az első nem egységes kódolási algoritmus. A Huffman-kód egy jól ismert módszer az optimális nem egységes kód (ONC) létrehozására fák segítségével. Az aritmetikai kódolás a Huffman-kód általánosítása.