Унарное кодирование: различия между версиями
Перейти к навигации
Перейти к поиску
w>Addbot м (Интервики (всего 5) перенесены на Викиданные, d:q2606) |
w>Dulat K м |
||
Строка 8: | Строка 8: | ||
Входит в семейство [[Коды Голомба|кодов Голомба]]. | Входит в семейство [[Коды Голомба|кодов Голомба]]. | ||
− | + | {| border="1" | |
− | + | !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 | ||
+ | |} | ||
+ | |||
== Литература == | == Литература == | ||
* Khalid Sayood, ''Data Compression'', 3е издание, Morgan Kaufmann. | * Khalid Sayood, ''Data Compression'', 3е издание, Morgan Kaufmann. |
Версия от 10:04, 2 апреля 2013
Уна́рное коди́рование — это энтропийное кодирование, которое представляет число n в виде n единиц с замыкающим нулём (либо n нулей и единица). Например 5 представляется в виде 111110.
Унарное кодирование оптимально для распределения вероятности:
Часто используется при программировании машин Тьюринга. Входит в семейство кодов Голомба.
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 |
Литература
- Khalid Sayood, Data Compression, 3е издание, Morgan Kaufmann.