Изменения

Перейти к: навигация, поиск

Гамма-, дельта- и омега-код Элиаса

974 байта добавлено, 01:11, 27 ноября 2014
Гамма-код Элиаса
=== Гамма-код Элиаса ===
 
{{Определение
|id = def1
|definition ='''Гамма-код Элиаса ''' {{---}} это универсальный код для кодирования положительных целых чисел, разработанный Питером Элиасом. Он обычно используется при кодировании целых чисел, максимальное значение которых не может быть определено заранее, или чтобы сжать данные, в которых маленькие значения встречаются более часто, чем большие.}}
 
==== Алгоритм построения гамма-кода Элиаса ====
 
Способ первый:
 
1. Записать число в двоичном представлении;
 
2. Перед двоичным представлением дописать нули, количество нулей на единицу меньше количества битов двоичного представления числа.
 
Способ второй:
 
1. Выделить из целого числа старший значащий бит (самую большую степень 2, которую число включает — 2N) и младшие N бит;
 
2. Записать N в унарном коде, то есть N нулей, за которыми следует единица;
 
3. Дописать N младших двоичных цифр числа следом за этим унарным кодом.
 
==== Декодирование ====
577
правок

Навигация