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

Материал из in.wiki
Перейти к навигации Перейти к поиску
w>A5b
м (Входит в семейство кодов Голомба.)
w>A5b
(пример)
Строка 7: Строка 7:
 
Часто используется при программировании [[Машина Тьюринга|машин Тьюринга]].
 
Часто используется при программировании [[Машина Тьюринга|машин Тьюринга]].
 
Входит в семейство [[Коды Голомба|кодов Голомба]].
 
Входит в семейство [[Коды Голомба|кодов Голомба]].
 +
 +
<table border="1" cellpadding="2">
 +
<tr><th>n (неотрицательные)<th>n (строго положительные)<th>Унарный код<th>Инверсный унарный код
 +
<tr><td>0<td>1<td>0<td>1
 +
<tr><td>1<td>2<td>10<td>01
 +
<tr><td>2<td>3<td>110<td>001
 +
<tr><td>3<td>4<td>1110<td>0001
 +
<tr><td>4<td>5<td>11110<td>00001
 +
<tr><td>5<td>6<td>111110<td>000001
 +
<tr><td>6<td>7<td>1111110<td>0000001
 +
<tr><td>7<td>8<td>11111110<td>00000001
 +
<tr><td>8<td>9<td>111111110<td>000000001
 +
<tr><td>9<td>10<td>1111111110<td>0000000001
 +
</table>
  
 
== См. также ==
 
== См. также ==

Версия от 19:42, 25 декабря 2010

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

Унарное кодирование оптимально для распределения вероятности: P ( x ) = 2 ( x + 1 ) P(x) = 2^{-(x+1)}

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

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

См. также

en:Unary coding es:Código unario fr:Codage unaire ja:アルファ符号 pl:Kod unarny