Унарне кодування

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук

Унарне кодування - це ентропійне кодування, яке представляє число n у вигляді n одиниць з замикаючим нулем (або n нулів і одиниця). Наприклад 5 представляється у вигляді 111110.

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

P(x) = 2^{-(x+1)}

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

Унарний код зіставляє числу і двійкову комбінацію виду 10. Запис виду 0 або 1 означає відповідно серію з m нулів або одиниць. Наприклад, унарними кодами чисел 1, 2, і 3 є послідовності unar (1) = 10, unar (2) = 110 і unar (3) = 1110 відповідно. Довжина кодового слова для числа n дорівнює ln = n +1.[2]

n (невід'ємні) n (строго позитивні) Унарний код Інверсний унарний код
0 1 0 1
1 2 10 01
2 3 110 001
3 4 1110 0001
4 5 11110 00001
5 6 111110 000001
6 7 1111110 0000001
7 8 11111110 00000001
8 9 111111110 000000001
9 10 1111111110 0000000001

Примітки[ред.ред. код]

Див. також[ред.ред. код]