В данном материале представлены пять практических задач по теории кодирования. Задания охватывают построение кодов Шенно-Фано с использованием различных способов разбиения, создание оптимальных кодов для равновероятных символов, применение метода Хаффмана для блоков различной длины, а также пошаговое выполнение циклического кодирования и декодирования сообщений при наличии ошибок в передаче данных.
Задача № 1
Построить код Шенно-Фано двумя способами разбиения множества групп на подгруппы для символов источника сообщений, появляющихся с вероятностями, заданными таблицей.
| буква | a1 | a2 | a3 | a4 | a5 | a6 | a7 | a8 |
|---|---|---|---|---|---|---|---|---|
| вероятность | 0,04 | 0,1 | 0,2 | 0,11 | 0,16 | 0,22 | 0,02 | 0,15 |
1 способ:
- первая группа: p(a6) + p(a3) + p(a5) = 0,58
- вторая группа: p(a8) + p(a4) + p(a2) + p(a1) + p(a7) = 0,42
2 способ:
- первая группа: p(a6) + p(a3) = 0,42
- вторая группа: p(a5) + p(a8) + p(a4) + p(a2) + p(a1) + p(a7) = 0,58
Провести сравнительный анализ результатов решения двумя способами.
Задача № 2
Построить оптимальный код сообщения, состоящего из:
- M равновероятных букв;
- K равновероятных букв;
- Y равновероятных букв;
| N (номер по журналу) | M | K | Y |
|---|---|---|---|
| N < 5 | Пяти | Шести | Десяти |
| 5 ≤ N < 10 | Шести | Семи | Восьми |
| 10 ≤ N < 15 | Пяти | Восьми | Девяти |
| 15 ≤ N < 20 | Шести | Девяти | Семи |
| 25 ≤ N | Семи | Пяти | Шести |
Дать оценку эффективности построенных кодов. В каких случаях код, построенный для первичного алфавита с равновероятным появлением букв, окажется самым эффективным?
Задача № 3
Первичный алфавит состоит из букв А и В. Построить код по методу Хаффмана для передачи сообщений, если кодировать по одной, две, три буквы в блоке. Сравнить эффективность полученных кодов. Вероятности появления букв первичного алфавита имеют следующие значения: p(A)=0,75, p(B)=0,25.
Задача № 4
Исходные кодовые комбинации приведены в таблице 3. Проведите пошаговое циклическое кодирование всех комбинаций.
| № | Исходный код |
|---|---|
| 1 | 101010 |
| 2 | 10111011 |
| 3 | 10101101 |
Задача № 5
Для результатов из Задачи № 4 (коды 1 и 3) проведите пошаговое декодирование при условии ошибки в третьем разряде.
