Кодирование по методу Хэмминга - Кодирование информации
Код Хэмминга - систематический код, то есть состоящий из информационных и корректирующих символов, расположенных по строго определенной системе, имеющих одинаковую длину и всегда занимающих строго определенные места в кодовых комбинациях.
Предложенные Хэммингом регулярные методы построения кодов, корректирующих ошибки, имеют фундаментальное значение. Они демонстрируют инженерам практическую возможность достижения пределов, на которую указывали законы теории информации. Эти коды нашли практическое применение при создании компьютерных систем. Работа Хэмминга привела к решению проблемы более плотной упаковки для конечных полей. Он ввел в научный обиход важнейшие понятия теории кодирования - расстояние Хэмминга между кодовыми комбинациями в векторном пространстве, определяемом для двоичных кодов как количество позиций этих комбинаций с различными символами, и границы Хэмминга для исправляющей способности блочных корректирующих кодов. Граница Хэмминга для двоичных кодов рассчитывается по следующей формуле:
В этом выражении число ошибок e может быть исправлено корректирующим блочным кодом длиной N, имеющим М кодовых комбинаций (CJN - биномиальный коэффициент).
Работа Хэмминга сыграла ключевую роль в последующем развитии теории кодирования и стимулировала обширные исследования, выполненные в последующие годы.
Коды Хэмминга позволяют не только обнаружить наличие ошибки, но и место ее нахождения и, следовательно, дают возможность ее исправить. Однако коды Хэмминга обладают меньшей избыточностью (по сравнению с кодированием по методу четности-нечетности), т. е. количеством дополнительных контрольных разрядов.
При передаче кода может быть искажен или не искажен любой символ. Если длина кода - n символов, то - полное количество комбинаций кода. По методике Хэмминга можно определить число информационных символов кода, обнаруживающего и корректирующего одиночную ошибку следующим образом, где
- число информационных символов в коде;
- число контрольных символов;
- длина кода Хемминга.
Соотношение n, и для кода Хэмминга можно представить в виде таблицы:
Таблица 2.2. a
n |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
0 |
0 |
1 |
1 |
2 |
3 |
4 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
11 | |
1 |
2 |
2 |
3 |
3 |
3 |
3 |
4 |
4 |
4 |
4 |
4 |
4 |
4 |
4 |
5 |
Предположим, что имеется код, содержащий m информационных и k контрольных разрядов. Все разряды, включая контрольные, разбиваются на k групп по определенным правилам, о которых будет сказано ниже. Каждая группа, содержащая один контрольный разряд, проверяется на четность. Пусть были проведены все k проверок. Если результат данной проверки свидетельствует об отсутствии ошибки, то записывается 0, если есть ошибка, то записывается 1. В результате получается последовательность, состоящая из k нулей и единиц. При отсутствии ошибки в коде получается последовательность нулей. Полученное k-разрядное двоичное число может содержать 2k различных комбинаций нулей и единиц. С помощью этой информации нужно определить ошибочный разряд в коде, содержащем m+k разрядов. Для того, чтобы это было возможно должно выполняться неравенство:
2k ? (m+k+1)
Определить максимальное значение m для данного k можно из следующей таблицы.
N |
1, 2, 3, 4... |
8, ..., 15 |
16, ...31 |
... |
M |
0, 0, 1, 1... |
4, ...11 |
11, ...26 |
... |
K |
1, 2, 2, 3 |
4...4 |
5...5 |
... |
Из таблицы видно, для 16-ти разрядного числа требуется 5 контрольных разрядов. В качестве сравнения, в случае модифицированного метода четности потребовалось бы 8 контрольных разрядов. Позиции контрольных разрядов в методе Хэмминга определены заранее, это разряды 1, 2, 4, 8, ... Разряды, входящие в каждую группу проверки представлены в следующей таблице (1-й разряд в каждой группе является контрольным).
Номер группы проверки |
Проверяемые разряды |
1 |
1, 3, 5, 7, 9, 11, 13, 15, ... |
2 |
2, 3, 6, 7, 10, 11, 14, 15, 18, 19, 22, 23, ... |
3 |
4, 5, 6, 7, 12, 13, 14, 15, 20, 21, 22, 23, ... |
4 |
8, 9, 10, 11, 12, 13, 14, 15, 24, ... |
Из таблицы видно, что если, например код Хэмминга содержит 9 разрядов, включая контрольные, то 1-я группа проверки содержит 1, 3, 5, 7, 9 разряды. 2-я группа проверки содержит 2, 3, 6, 7 разряды. 3-группа проверки содержит 4, 5, 6, 7 разряды и 4-я группа - 8, 9 разряды. Каждой группе проверки приписывается 1, если проверка на четность обнаруживает ошибку и 0, если ошибки нет. Полученное двоичное число дает номер ошибочного разряда.
Код Хэмминга имеет существенный недостаток: при обнаружении любого числа ошибок он исправляет лишь одиночные ошибки. Например избыточность семиэлементного кода Хэмминга равна 0, 43. При увеличении значности кодовых комбинаций увеличивается число проверок, но уменьшается избыточность кода. К тому же код Хэмминга не позволяет обнаружить групповые ошибки. Длина пакета ошибок представляет собой увеличенную на единицу разность между именами старшего и младшего ошибочных элементов.
Рассмотрим в качестве примера 5-ти разрядное двоичное число 10011. В этом случае, как следует из вышеприведенной таблицы, 1-я группа проверки состоит из 1, 3, и 5-го разрядов. 2-я группа проверки состоит из 2 и 3-го разряда. 3-я группа проверки состоит из 4 и 5-го разрядов. Результат проверки на четность 1-й группы дает 0 (101), проверка 2-й группы дает 0 (00), проверка 3-й группы дает 0 (11).
K1 = 1 + 0 + 1 = 0 - нет ошибки;
K2 = 0 + 0 =0 - нет ошибки;
K3 = 1 + 1 = 0 - нет ошибки.
Таким образом, данное число не содержит ошибки. Искусственно введем ошибку, заменив, например, 4-й разряд на 0. В этом случае 1, 2 и 3-я проверки дадут соответственно 0, 0, 1.
K1 = 1 + 0 + 1 = 0 - нет ошибки;
K2 = 0 + 0 =0 - нет ошибки;
K3 = 0 + 1 = 1 - ошибка.
Полученное двоичное число 100 дает номер ошибочного разряда, т. е. 4.
Похожие статьи
-
Кодирование по методу четности / нечетности - Кодирование информации
Для контроля правильности передачи информации, а также как средство шифрования информации используются различные коды. Коды, использующие для передачи...
-
Использование программы StudyProgram для усвоения учебного материала по кодированию информации методом четности и методом Хэмминга Программа StudyProgram...
-
Кодирование текстовой информации - Кодирование информации в компьютере
В настоящее время большая часть пользователей при помощи компьютера обрабатывает текстовую информацию, которая состоит из символов: букв, цифр, знаков...
-
Инструкция программиста - Кодирование информации
Данная учебная программа должна запускаться на IBM и совместимых компьютерах. Минимальные системные требования: процессор Pentium и выше, объем...
-
Кодирование информации -- процесс преобразования сигнала из формы, удобной для непосредственного использования информации, в форму, удобную для передачи,...
-
МЕТОД КОДИРОВАНИЯ - Структуры и алгоритмы обработки данных
Код Шеннона Код Шеннона позволяет построить почти оптимальный код с длинами кодовых слов. Тогда по теореме Шеннона из п. 5.1 . Код Шеннона,...
-
Кодирование, Кодирование текстовой информации - Экономическая информатика
Кодирование текстовой информации Кодирование информации - процесс преобразования сигнала из формы, удобной для непосредственного использования...
-
Программа StudyProgram предназначена для того, чтобы помочь в усвоении приемов составления программ для машины Поста. Работа с программой осуществляется...
-
Заключение - Кодирование информации
В ходе курсовой работы была разработана обучающая программа по информатике, с помощью которой студенты смогут проверить свои знания в таких разделах...
-
МЕТОДЫ АРХИВАЦИИ - Архивация информации и программы-архиваторы
Несмотря на то, что объемы внешней памяти ЭВМ постоянно растут, потребность в архивации не уменьшается. Это объясняется тем, что архивация необходима не...
-
Неавтоматизированные методы - Распространение новостной информации
Нетнография Интернет - это глобальная сеть данных, которые используются, создаются, обмениваются миллионами людьми ежедневно. Люди общаются в социальных...
-
Каскадные коды Каскадный код представляет собой разновидность составного кода, формируемого последовательной схемой кодирования. При практической...
-
Цветовые модели. - Кодирование информации в компьютере
Если говорить о кодировании цветных графических изображений, то нужно рассмотреть принцип декомпозиции произвольного цвета на основные составляющие....
-
Кодирование графической информации. - Экономическая информатика
Существует несколько способов кодирования графической информации. Так и все виды информации, изображения в компьютере закодированы в виде двоичных...
-
Растровое изображение. - Кодирование информации в компьютере
При помощи увеличительного стекла можно увидеть, что черно-белое графическое изображение, например из газеты, состоит из мельчайших точек, составляющих...
-
Метод парольной защиты - Защита информации
Законность запроса пользователя определяется по паролю, представляющему собой, как правило, строку знаков. Метод паролей считается достаточно слабым, так...
-
Хранение, кодирование и пpеобpазование данных - Единицы измерения информации в памяти ПК
Хранение информации в памяти ЭВМ - одна из основных функций компьютера. Любая информация хранится с использованием особой символьной формы, которая...
-
Кодирование информации в компьютере - Кодирование информации в компьютере
Современный компьютер может обрабатывать числовую, текстовую, графическую, звуковую и видео информацию. Все эти виды информации в компьютере представлены...
-
Методы архивации в WinRAR - Архивация информации и программы-архиваторы
Архиватор WinRAR предоставляет пользователю возможность выбора одного из шести возможных методов архивации. В таблице 10.2 приведено сравнение степени...
-
Файл - это набор любых данных одного типа, который хранится на диске отдельно от прочих. Например, музыкальный файл, файл изображения или текстовый файл,...
-
Машина Поста - Кодирование информации
"Внешний вид" машины Поста Машина Поста не есть реально существующее, сделанное кем-то устройство; поэтому слова "внешний вид" и взяты в кавычки. Машина...
-
Инструментальное программное обеспечение -- это программное обеспечение, предназначенное для использования в ходе проектирования, разработки и...
-
Расчет параметров кода - Кодек каскадного кода Хэмминга
В данном курсовом проекте используется код Хэмминга в качестве внешнего и внутреннего. Код Хэмминга имеет параметры (n, k)=(2m-1;2m-1-m) и обычно...
-
Система мониторинга социальных сетей предоставляет исследователю возможность собрать интересующие его упоминания в социальных сетях по какой-либо...
-
Онлайн исследования в социологии: новые методы анализа данных - Распространение новостной информации
На сегодняшний день анализ социальных сетей и медиа, Интернет-сообществ, пользователей в целом используется в основном в маркетинге. Компания может...
-
Они во многом объединяют или дополняют два вышеперечисленных метода :автоматический и неавтоматический. Это контент-анализ, Интернет-опросы и...
-
Векторное кодирование, Кодирование звуковой информации - Экономическая информатика
Для чертежей, схем, карт применяется другой способ кодирования, который позволяет не терять качество при изменении размеров изображения. Рисунок хранится...
-
В нашей курсовой работе была поставлена задача создания обучающей программы по информатике, с помощью которой студенты смогут проверить свои знания в...
-
Методы и средства проектирования - Автоматизированные системы обработки экономической информации
Проектирование - процесс создания проекта-прототипа, прообраза предполагаемого или возможного объекта, его состояния. Современная технология создания АИС...
-
Персональный компьютер сегодня является неотъемлемой частью нашей жизни и с каждым годом его влияние лишь усиливается, ведь он действительно создан,...
-
На сегодняшний день уже практически невозможно представить нашу повседневную жизнь без компьютерной техники. Интернет предоставляет нам безграничные...
-
Кодирование графической информации - Кодирование информации в компьютере
В середине 50-х годов для больших ЭВМ, которые применялись в научных и военных исследованиях, впервые в графическом виде было реализовано представление...
-
Принцип построения помехоустойчивых кодов - Кодек каскадного кода Хэмминга
Помехоустойчивое кодирование представляет собой процесс преобразования передаваемых информационных символов по определенному алгоритму, и в результате...
-
Сетевой анализ как метод изучения виртуального пространства - Распространение новостной информации
Анализ социальных сетей как отдельное направление появилось в конце 20 века, основоположниками которого считаются такие ученые как Милгрэм ("феномен...
-
Автоматизированные методы - Распространение новостной информации
Мониторинг социальных сетей На данный момент используется преимущественно в сфере маркетинга и PR, однако, по прогнозам специалистов, этот метод в скором...
-
Основные требования к комплексной системе защиты информ: Разработка на основе положений и требований существующих законов, стандартов и нормативно -...
-
Компромиссная система, для удобства восприятия данных человеком и корректной работы компьютера, двоично-десятичная запись чисел. Принцип построения этой...
-
В основе метода EWMA лежит экспоненциальное сглаживание первого порядка [20, 21]: (5.2.1) Где 0<л?1 - константа сглаживания. В роли начального...
-
Представление информации в ЭВМ - Представление и хранение информациии в ЭВМ
В большинстве ЭВМ информация представляется в двоичном виде (Существуют так же двоично-десятичные и троичные ЭВМ). Это обусловлено, в основном,...
-
Сжатие данных можно разделить на два основных типа: 1) Сжатие без потерь или полностью обратимое; 2) Сжатие с потерями, когда несущественная часть данных...
Кодирование по методу Хэмминга - Кодирование информации