Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Создание кода



Рассмотрим создание кода Хемминга на конкретном примере по шагам.

1.Число или сообщение, которое надо закодировать, представляется в двоичной системе счисления. Получают информационные разряды, т.е. разряды, которые несут информацию о числе или сообщении.

Возьмем для примера произвольное число 10.

10=10102.

2. Далее высчитывают k – количество контрольных разрядов, которые надо добавить к полученным информационным разрядам, необходимых для того, чтобы не только обнаружить ошибку, но и найти номер разряда, в котором произошла эта ошибка. Получают общее количество разрядов n = m + k, где m – количество информационных разрядов, k – количество контрольных разрядов.

Существует таблица, по которой определяется количество контрольных разрядов в зависимости от количества информационных разрядов m. Таким образом можно подсчитать и общее количество разрядов в числе:

m 0 0 1 1…4 4…11 11…26 26…57 57…

k 1 2 2 3…3 4…4 5….5 6….6 7…

n 1 2 3 4…7 8…15 16…31 32…63 64…

Из приведенной таблицы видно, что этот метод кодирования очень рациональный, т.к. на большое число информационных разрядов требуется малое число контрольных разрядов, и чем больше число информационных разрядов, тем больше эффект.

В нашем примере m =4. По таблице определим, что k =3, а n =7.

3. Теперь надо узнать, в какие позиции в коде Хэмминга поместить контрольные разряды. Номер позиции вычисляется по формуле 2q, где q = 0, 1, 2, …

Для нашего примера номера контрольных разрядов: 1, 2, 4. Код Хэмминга будет выглядеть следующим образом:

k 1 k 2 m 1 k 3 m 2 m 3 m 4 (в общем виде)

или: k 1 k 2 1 k 3 0 1 0 (подставили конкретные значения информационных разрядов на соответствующие места в коде).

4. Вычисляются значения контрольных разрядов. Для этого составляется следующая таблица для вычисления значений контрольных разрядов:

Порядковый номер Вспомогательные столбцы
Вычисление k 1 Вычисление k 2 Вычисление k 3 Код числа
  0 0 1 0 0 1 0 0 1 k 1
  0 1 0 0 1 0 0 1 0 k 2
3 0 1 1 0 1 1 0 1 1  
  1 0 0 1 0 0 1 0 0 k 3
  1 0 1 1 0 1 1 0 1  
6 1 1 0 1 1 0 1 1 0  
  1 1 1 1 1 1 1 1 1  
Сумма по модулю 2 на пересечении k 1=1 (нечетн) k 2=0 (четн) k 3=1 (нечетн)  

Для вычисления k 1 считают количество единиц, стоящих на пересечении строк, где в коде числа записана 1, и столбца последних разрядов. Если сумма четная, то k 1=0, иначе k 1=1. Для вычисления k 2 учитываются разряды предпоследнего столбца. Остальные контрольные разряды вычисляются аналогично. В нашем примере k 1=1, k 2=0, k 3=1.

5. Получают код Хэмминга для кодируемого числа, в нашем случае для числа 10:

1011010.





Дата публикования: 2015-09-17; Прочитано: 214 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...