Код (code) — система условных обозначений или сигналов (телеграфный код), а также шифр, набор символов. В информатике кодом называют программу на машинном языке и язык, на котором написана программа. Множество символов, при помощи которых записываются исходные сообщения, называется первичным алфавитом. Множество символов, из которых могут состоять кодовые слова, называется вторичным алфавитом. Коды, которые представляют сообщения различным количеством символов, называются неравномерными, или некомплектными, соответственно коды, в которых кодовые слова имеют фиксированную длину, называются равномерными, или комплектными.
Префиксным называется код, не имеющий комбинации, которая была бы префиксом (начальной частью произвольной длины) любой другой комбинации того же кода. Это дает возможность при нефиксированной длине кодовых слов записывать сообщения из них состоящие без дополнительных разделителей, то есть любую последовательность кодовых слов всегда можно однозначно разделить на отдельные слова. На этом принципе строятся предиктивные синтаксические анализаторы, которые по началу синтаксической структуры (по префиксу кодового слова) могут однозначно определить данную структуру (данное слово) и включить соответствующий обработчик. Это позволяет обрабатывать синтаксические структуры без откатов. Код Бодо имеет фиксированную длину в пять символов. Префиксный код Шеннона-Фано — первый алгоритм неравномерного кодирования. Код Хаффмана — метод построения оптимального неравномерного кода (ОНК) с использованием кодовых деревьев. Арифметическое кодирование — обобщение кода Хаффмана.