Mějme informační zdroj . Pod pojmem kódování tohoto zdroje chápeme přiřazování určitých řetězců znaků konkrétním zprávám , jež vycházejí ze zdroje. Znaky v řetězcích přitom tvoří jistou abecedu . Pokud mají všechny řetězce stejnou délku , pak za obor hodnot takového přiřazení stačí brát množinu , pokud se ale délka řetězců pro různé zprávy může lišit, bude obor hodnot takového přiřazení podmnožina množiny
Matematicky pak můžeme kód zdroje definovat jako zobrazení
kde je jistá abeceda znaků. Obvykle se bere pro nějaké . Mluvíme pak o kódu -znakovém. Jestliže , nazýváme daný kód binární, ternární, ...
Kód se nazývá nesingulární, jestliže je prosté zobrazení.
Pod označením rozšířením kódu chápeme zobrazení
jež kóduje zdroj s libovolným rozdělením pravděpodobnosti .
Kód nazýváme jednoznačně dekódovatelný, jestliže jeho rozšíření je nesingulární kód.
Mějme zprávu , resp a kód , resp. . Řetězce , resp. (tj. obrazy zprávy při zobrazení , resp. ) se pak nazývají kódová slova.