← Вернуться к оглавлению

Равномерные коды — все символы кодируются словами одинаковой длины. Неравномерные коды — разные символы получают коды разной длины, что позволяет экономить память.

ФГОСФОПОГЭ №2,4ЕГЭ №4
01

Равномерное кодирование

Коды фиксированной длины: простота и надёжность

ФГОС

Определение

Равномерный код — код, в котором все символы алфавита кодируются кодовыми словами одинаковой длины.

Минимальная длина кода для N символов: k = ⌈log₂(N)⌉ бит.

Пример: 4 символа → k = log₂(4) = 2 бита
A=00, B=01, C=10, D=11
Равномерный код: 4 символа → 2 бита A = 00 B = 01 C = 10 D = 11 Сообщение «ABACAD» = 00 01 00 10 00 11 = 12 бит 6 символов × 2 бита = 12 бит ✓ Декодирование всегда однозначно (блоки фиксированной длины)

Дерево равномерного кода (4 символа, 2 бита)

Все символы位於 на одном уровне (глубина 2) — коды одинаковой длины.

02

Неравномерное кодирование

Коды переменной длины: экономия за счёт частых символов

ФГОСОГЭ №2,4ЕГЭ №4

Определение

Неравномерный код — код, в котором разные символы кодируются словами разной длины.

Принцип: частые символы получают короткие коды, редкие — длинные.

Пример: A=0, B=10, C=110, D=111
Сообщение «AAAAABCD» = 0 0 0 0 0 10 110 111 = 13 бит
В равномерном коде: 8 × 2 = 16 бит → экономия 3 бита!

Дерево неравномерного кода (A=0, B=10, C=110, D=111)

Символы位於 на разных уровнях — A на глубине 1, B на глубине 2, C и D на глубине 3.

Сравнение: равномерный vs неравномерный

СвойствоРавномерныйНеравномерный
Длина кодаОдинаковаяРазная
ДекодированиеПростое (блоки)Сложнее (нужен префиксный код)
ЭкономияНетДа (до 30-50%)
Условие ФаноВсегда выполняетсяНужно проверять
ПримерASCII, UTF-32Код Хаффмана, Морзе
🔄
Сравнение кодировок сообщения

Введите сообщение и коды символов. Сравните равномерный и неравномерный варианты.

03

Минимальная длина равномерного кода

Как определить, сколько бит нужно для N символов

ФГОСОГЭ №2
📊
Калькулятор минимальной длины кода

Введите количество символов — получите минимальную длину равномерного кода.

Интерактивный график: k = ⌈log₂(N)⌉

20
04

Декодирование сообщений

Практика: декодируйте двоичную строку по заданному коду

🔓
Дешифратор: от бинарной строки к тексту

Задайте коды символов и двоичную строку для декодирования.

📝
Банк заданий ОГЭ/ЕГЭ
0 / 15
05

Мини-тест

🎯Проверь себя: 5 вопросов