Унарное кодирование: различия между версиями

Материал из in.wiki
Перейти к навигации Перейти к поиску
м (24 версии импортировано: Импорт из Википедии)
 
(не показано 15 промежуточных версий 12 участников)
Строка 1: Строка 1:
'''Уна́рноѣ кодíрованiѣ''' — это [[энтропiйноѣ кодiрованiѣ]] , бля, котороѣ прѣдставляѣт чiсло ''n'' в вiдѣ ''n'' ѣдiнiц с замыкающiм нулём (лiбо n нулѣй i ѣдiнiца) , блядь. Напрiмѣр 5 прѣдставляѣтся в вiдѣ 111110 , блядь.
+
'''Уна́рное коди́рование''' — это [[энтропийное кодирование]], которое представляет число ''n'' в виде ''n'' единиц с замыкающим нулём (либо n нулей и единица). Например 5 представляется в виде 111110 (если кодируются только положительные числа без нуля, то представление может быть на один бит короче, например, 000001 может записывать число 6).
  
Унарноѣ кодiрованiѣ оптiмально для [[распрѣдѣлѣнiѣ вѣроятностi|распрѣдѣлѣнiя вѣроятностi]]:
+
Унарное кодирование оптимально для [[распределение вероятности|распределения вероятности]]:
  
: <math>P(x) = 2^{-(x+1)}</math>
+
: <math>P(x) = 2^{-(x+1)}</math>
  
Часто iспользуѣтся прi программiрованii [[Машiна Тьюрiнга|машiн Тьюрiнга]] , блядь.
+
Часто используется при программировании [[Машина Тьюринга|машин Тьюринга]].
Являѣтся частью [[Коды Голомба|кода Голомба]] , блядь.
+
Входит в семейство [[Коды Голомба|кодов Голомба]].
  
[[Катѣгорiя:Алгорiтмы сжатiя бѣз потѣрь]]
+
{| 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
 +
|}
  
[[en:Unary coding]]
+
== Литература ==
[[ja:アルファ符号]]
+
* Khalid Sayood, ''Data Compression'', 3-е издание, Morgan Kaufmann.
 +
 
 +
== См. также ==
 +
* [[Унарная система счисления]]
 +
 
 +
[[Категория:Алгоритмы сжатия без потерь]]

Текущая версия от 00:51, 20 августа 2025

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

Унарное кодирование оптимально для распределения вероятности: P ( x ) = 2 ( x + 1 ) P(x) = 2^{-(x+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.

См. также[править | править код]