- •Код Шеннона-Фано
- •Код Хэмминга
- •Решение поставленной задачи Задача 3.1.4
- •Задача 3.1.14
- •Задача 3.2.4
- •Задача 3.2.14
- •Список использованных источников
- •Контрольные вопросы:
- •1. Что понимают под кодированием?
- •2. Какие коды называются равномерными?
- •3. Сформулировать основную теорему о кодировании.
- •4. Назначение и цели эффективного кодирования
- •5. Поясните, за счёт чего обеспечивается сжатие информации при применении эффективного кодирования
5. Поясните, за счёт чего обеспечивается сжатие информации при применении эффективного кодирования
Сжатие достигается за счёт использования кодов переменной длины:
часто встречающиеся символы кодируются короткими кодовыми словами
редко встречающиеся – длинными кодовыми словами.
Такой подход уменьшает среднюю длину кодового слова по сравнению с равномерным кодированием, что и даёт выигрыш в объёме данных. При этом сохраняется возможность однозначного декодирования (благодаря свойству префиксности кода).
6. При каком распределении букв первичного алфавита оптимальный неравномерный код оказывается самым эффективным?
Оптимальный неравномерный код (например, Хаффмана или Шеннона‑Фано) даёт наибольший выигрыш в сжатии, когда вероятности появления символов сильно различаются.
В этом случае можно назначить очень короткие коды наиболее частым символам и значительно сократить среднюю длину кода. При равномерном распределении никакой неравномерный код не даст преимущества перед равномерным.
7. Какие коды называются помехоустойчивыми?
Помехоустойчивые (канальные) коды – это коды, предназначенные для обнаружения и/или исправления ошибок, возникающих при передаче данных по каналам связи с помехами. Они вводят избыточность, что позволяет на приёмной стороне выявлять и корректировать искажённые символы.
8. Что называется избыточностью?
Избыточность кода – это доля проверочных символов, добавляемых при помехоустойчивом кодировании.
Обычно выражается формулой:
где k – количество проверочных символов, m – количество информационных символов.
9. Как образуются корректирующие коды?
Корректирующие коды строятся путём добавления проверочных символов к информационным по определённым правилам, обеспечивающим увеличение кодового расстояния, например: в коде Хэмминга:
Полученное кодовое слово обладает свойством, что если произошла одиночная ошибка, то синдром (результат проверок) укажет номер ошибочной позиции, что позволяет её исправить.
10. Что называется блочным кодированием?
Блочное кодирование – это способ кодирования, при котором процесс кодирования и декодирования осуществляется над блоками данных фиксированной длины.
Исходная
информационная последовательность
разбивается на блоки по mm
символов, каждый блок преобразуется в
кодовое слово длины
.
Блочные коды делятся на:
систематические – информационные символы в кодовом слове сохраняются в неизменном виде, а проверочные добавляются отдельно
несистематические – исходные символы в явном виде не присутствуют
