
ОТПД отчет 5 лабораторная
.docxФЕДЕРАЛЬНОЕ АГЕНСТВО СВЯЗИ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М. А. БОНЧ-БРУЕВИЧА
Кафедра сетей связи и передачи данных
Отчет по лабораторной работе №5
«Код Хэмминга (Практическая работа)»
По дисциплине: «Основы теории передачи данных»
Цель работы
Рассмотреть на примере и получить навыки в исследовании кодов Хэмминга.
Ход выполнения работы
1. По заданной для (n,k) кода Хэмминга (15,11) порождающей матрице G(15,11) получить проверочную матрицу H(15,11) .
n = 15
k = 11
G =
1 1 0 0 1 0 0 0 0 0 0 0 0 0 0
0 1 1 0 0 1 0 0 0 0 0 0 0 0 0
0 0 1 1 0 0 1 0 0 0 0 0 0 0 0
1 1 0 1 0 0 0 1 0 0 0 0 0 0 0
1 0 1 0 0 0 0 0 1 0 0 0 0 0 0
0 1 0 1 0 0 0 0 0 1 0 0 0 0 0
1 1 1 0 0 0 0 0 0 0 1 0 0 0 0
0 1 1 1 0 0 0 0 0 0 0 1 0 0 0
1 1 1 1 0 0 0 0 0 0 0 0 1 0 0
1 0 1 1 0 0 0 0 0 0 0 0 0 1 0
1 0 0 1 0 0 0 0 0 0 0 0 0 0 1
Где P это матрица проверочных символов – k*(n-k)
H =
1 0 0 0 1 0 0 1 1 0 1 0 1 1 1
0 1 0 0 1 1 0 1 0 1 1 1 1 0 0
0 0 1 0 0 1 1 0 1 0 1 1 1 1 0
0 0 0 1 0 0 1 1 0 1 0 1 1 1 1
2. Закодировать заданный информационный вектор кода Хэмминга (15,11).
Msg = [0 1 0 1 1 0 0 1 0 0 0]
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
|
|
r0 |
r1 |
x1 |
r2 |
x2 |
x3 |
x4 |
r3 |
x5 |
x6 |
x7 |
x8 |
x9 |
x10 |
x11 |
|
|
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
|
|
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
r0 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
r1 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
r2 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
r3 |
0 |
Menc = [1 1 0 1 1 0 1 0 1 0 0 1 0 0 0]
Err1 = [0 0 0 0 0 0 0 0 0 0 1 0 0 0 0]
Merr1 = xor (Menc , Err1)
Merr1 = [1 1 0 1 1 0 1 0 1 0 1 1 0 0 0]
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
|
|
r0 |
r1 |
x1 |
r2 |
x2 |
x3 |
x4 |
r3 |
x5 |
x6 |
x7 |
x8 |
x9 |
x10 |
x11 |
|
|
1 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
|
|
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
S0 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
S1 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
S2 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
S3 |
1 |
S11 = 1 0 1 1 = 11
Mdec1 = [0 1 0 1 1 0 0 1 0 0 0]
Err2= [0 0 0 1 0 0 0 0 0 0 1 0 0 0 0]
Merr2 = xor (Menc , Err2)
Merr2 = [1 1 0 0 1 0 1 0 1 0 1 1 0 0 0]
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
|
|
r0 |
r1 |
x1 |
r2 |
x2 |
x3 |
x4 |
r3 |
x5 |
x6 |
x7 |
x8 |
x9 |
x10 |
x11 |
|
|
1 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
|
|
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
S0 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
S1 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
S2 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
S3 |
1 |
S22 = 11
Mdec2 = [0 1 0 1 1 0 0 1 0 0 0]
Err3 = [0 0 0 1 0 0 1 0 0 0 1 0 0 0 0]
Merr3 = xor (Menc , Err3)
Merr3 = [1 1 0 0 1 0 0 0 1 0 1 1 0 0 0]
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
|
|
r0 |
r1 |
x1 |
r2 |
x2 |
x3 |
x4 |
r3 |
x5 |
x6 |
x7 |
x8 |
x9 |
x10 |
x11 |
|
|
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
|
|
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
S0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
S1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
S2 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
S3 |
1 |
S33 = 8
Mdec3 = [0 1 0 0 1 0 1 1 0 0 0]