1 вариант / 5 практика
.docxЗадача 1.
(10-1)(1) так как 1 – порядковый номер.
Получим (9)(1)10= 100100012.
Закодировать кодом Хэмминга, исправляющим одну ошибку, информационную комбинацию двоичного кода 10010001.
Количество информационных символов – 8(k)
Количество контрольных символов – 4 (m)
Полная кодовая комбинация – 12 символов:
m1, m2, k8, m3, k7, k6, k5, m4, k4, k3, k2, k1.
Составляем проверочную таблицу.
Разряды двоичных чисел |
Символы кода |
||||
4 |
3 |
2 |
1 |
|
|
0 |
0 |
0 |
1 |
m1 |
|
0 |
0 |
1 |
0 |
m2 |
|
0 |
0 |
1 |
1 |
k8 |
|
0 |
1 |
0 |
0 |
m3 |
|
0 |
1 |
0 |
1 |
k7 |
|
0 |
1 |
1 |
0 |
k6 |
|
0 |
1 |
1 |
1 |
k5 |
|
1 |
0 |
0 |
0 |
m4 |
|
1 |
0 |
0 |
1 |
k4 |
|
1 |
0 |
1 |
0 |
k3 |
|
1 |
1 |
0 |
0 |
k2 |
|
1 |
1 |
1 |
0 |
k1 |
1 строка: записываются символы, напротив которых в соответствующих строках проставлены единицы в младшем (первом) разряде комбинации двоичного кода предварительной таблицы.
Строка таблицы:
m1 |
k8 |
k7 |
k5 |
k4 |
2 строка – символы, напротив которых стоят единицы во втором разряде. Строка таблицы:
m2 |
k8 |
k6 |
k5 |
k2 |
3 строка – символы, напротив которых стоят единицы в третьем разряде.
Строка таблицы:
m3 |
k7 |
K6 |
k5 |
k1 |
4 строка – символы, напротив которых стоят единицы во четвертом разряде.
Строка таблицы:
m4 |
k4 |
k3 |
k2 |
k1 |
Число строк в проверочной таблице равно числу контрольных символов m.
Контрольная таблица:
m1 |
k8 |
k7 |
k5 |
k3 |
m2 |
k8 |
k6 |
k5 |
k2 |
m3 |
k7 |
K6 |
k5 |
k1 |
m4 |
k4 |
k3 |
k2 |
k1 |
Определим позиции контрольных символов:
m1, m2, k8, m3, k7, k6, k5, m4, k4, k3, k2, k1. 10010001
Полную кодовую комбинацию можно записать в виде:
m1, m2, k8, m3, k7, k6, k5, m4, k4, k3, k2, k1. 0 0 1 0 0 0 1 1 0 0 0 1
1 0 0 1 = 0 т1 =0
1 0 1 0 = 0 т2 =0
0 0 1 1 = 0 т3 =0
0 0 0 1 = 0 т4 =1
Кодовая комбинация: 0 01000110001
Задача 2.
Принята кодовая комбинация (таблица 1). Известно, что она закодирована кодом Хэмминга, исправляющим одну ошибку. Определить, есть ли в ней искажение, и если есть, то исправить его.
Первый код
m1, m2, k6, m3, k5, k4, k3, m4, k2, k1,
1 0 1 0 1 0 0 1 0 1
m1 |
k6 |
k5 |
k4 |
k1 |
m2 |
k6 |
k5 |
k3 |
k1 |
m3 |
k5 |
k4 |
k3 |
k1 |
m4 |
k2 |
- |
- |
k1 |
1+1+1+0+1 = 0 m1 0+1+1+0+1= 1 m2 0+1+0+0+1= 0 m3 1+0+1= 0 m4
Вторая строка даёт единичный результат, Остальные нулевой. Такой результат свидетельствует о наличии искажения.
Определим место искажения.
Получаем двоичное число: 0010. В десятичной системе: 2.
Искаён второй разряд принятой кодовой комбинации, считая слева направо. 1010100101
Следовательно: 1110100101
Второй код m1, m2, k6, m3, k5, k4, k3, m4, k2, k1
1 0 1 1 1 0 0 1 0 1
m1 |
k6 |
k5 |
k4 |
k1 |
m2 |
k6 |
k5 |
k3 |
k1 |
m3 |
k5 |
k4 |
k3 |
k1 |
m4 |
k2 |
- |
- |
k1 |
1+1+1+0+1 = 0 m1 0+1+1+0+1= 1 m2 1+1+0+0+1= 1 m3 1+0+1= 0 m4
Вторая и третья строка даёт единичный результат, Остальные нулевой. Такой результат свидетельствует о наличии искажения.
Определим место искажения.
Получаем двоичное число: 0110. В десятичной системе: 6.
Искаён шестой разряд принятой кодовой комбинации, считая слева направо. 1011100101
Следовательно : 1011110101