Унарное кодирование

Уна́рное коди́рование — это энтропийное кодирование, которое представляет число n в виде n единиц с замыкающим нулём (либо n нулей и единица). Например 5 представляется в виде 111110 (если кодируются только положительные числа без нуля, то представление может быть на один бит короче, например, 000001 может записывать число 6).

Унарное кодирование оптимально для распределения вероятности:

Часто используется при программировании машин Тьюринга.Входит в семейство кодов Голомба.

n (неотрицательные)n (строго положительные)Унарный кодИнверсный унарный код
0101
121001
23110001
3411100001
451111000001
56111110000001
6711111100000001
781111111000000001
89111111110000000001
91011111111100000000001

Литература

  • Khalid Sayood, Data Compression, 3-е издание, Morgan Kaufmann.

См. также