Введение в архитектуру компьютеров

Семизначный код Хемминга


Десятичное

Простой двоичный

Код Хемминга

число



код

к

к

к

0

0

0

0

0

0

0

0

0

0

0

0

1

0

0

0

1

0

0

0

0

1

1

1

2

0

0

1

0

0

0

1

1

0

0

1

3

0

0

1

1

0

0

1

1

1

1

0

4

0

1

0

0

0

1

0

1

0

1

0

5

0

1

0

1

0

1

0

1

1

0

1

6

0

1

1

0

0

1

1

0

0

1

1

7

0

1

1

1

0

1

1

0

1

0

0

8

1

0

0

0

1

0

0

1

0

1

1

9

1

0

0

1

1

0

0

1

1

0

0

Пусть передан код числа 6 в виде "0 1 1 0 0 1 1", а приняли в виде "0 1 0 0 0 1 1". Проверочные группы:

I проверка  :

разряды 1, 3, 5, 7 –  дает 1 в младший разряд РОШ.

II проверка :

разряды 2, 3, 6, 7 –  дает 0 во второй разряд РОШ.

III проверка:

разряды 4, 5, 6, 7 –  дает 1 в третий разряд РОШ.

Содержимое РОШ "101", значит ошибка в пятой позиции.

Примечание. В каждый из контрольных разрядов при построении кода Хемминга посылается такое значение, чтобы общее число единиц в его контрольной сумме было четным. РОШ заполняется начиная с младшего разряда.

Вывод. Рост кодового расстояния позволяет увеличить корректирующую способность кода. В то время как d = 2 у кода с проверкой на четность позволяет обнаруживать одиночную ошибку, код Хемминга с d = 3 ис-правлет ее.



Содержание раздела