Лабораторная работа: Контроль і діагностика програмних систем
Приклад. (5,3) - код, який був представлений в таблиці 1, може бути заданий матрицею
Решта кодових слів виходить складанням рядків матриць в різних поєднаннях.
Загальна кількість різних варіантів що породжують матрицю визначається виразом
Для виключення неоднозначності в записі G(n,k) вводять поняття про канонічну або систематичну форму матриці, яка має вигляд
де
Ik - одинична матриця, що містить інформаційні символи;
Rk,r - прямокутна матриця, складена з перевірочних символів.
Приклад. Матриця, що породжує, в систематичному вигляді для (5,3) - коди
Матриця G(n,k) , що породжує, в систематичному вигляді може бути отримана з будь-якої іншої матриці за допомогою елементарних операцій над рядками (перестановкою двох довільних рядків, заміною довільного рядка на суму її самій і ряду інших) і подальшою перестановкою стовпців.
Перевірочна матриця в систематичному вигляді має вигляд
де Ir - одинична матриця; - прямокутна матриця в транспонованому виді матриці Rk,r з матриці, що породжує.
Приклад. Перевірочна матриця (5,3) - коди
Практична частина
1. Запишемо генеруючу матрицю.
кол строк = длине инфор = 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 |
G 7,4 = | 0 | 1 | 0 | 0 | 1 | 1 | 1 |
0 | 0 | 1 | 0 | 0 | 1 | 1 | |
0 | 0 | 0 | 1 | 1 | 1 | 0 |
информационая часть = 10 => 1 0 1 0
X = | 1 | 0 | 1 | 0 | 1 | 1 | 0 |
2. На основі неї створимо перевірочну.
кол строк = длине пров = 3 | 1 | 1 | 0 | 1 | 1 | 0 | 0 |
H = | 0 | 1 | 1 | 1 | 0 | 1 | 0 |
1 | 1 | 1 | 0 | 0 | 0 | 1 |
3. Запишемо наші інформаційні поля та згенеруємо перевірочні поля.
Х= | 1 | 0 | 1 | 0 | 1 | 0 | 1 |
исползуя соотношение H * X^T = S |
если S = 0 то ош в код комб нет |
в прот случ с имеет вид |
s1 | 1 | результат декодиров |
S = | s2 | 0 |
s3 | 0 | error |
4. Внесемо помилку.
X = | 1 | 0 | 1 | 0 | 0 | 1 | 0 |
5. Ми отримали скореговане значення.
1 | 0 | 1 | 0 | 1 | 1 | 0 | |||||||
s1 | 0 | результат декодиров | |||||||||||
S = | s2 | 0 | |||||||||||
s3 | 0 | знач верно |
Висновок
Під час виконання роботи я написала програму що виявляє та виправляє однократну помилку в повідомленні, а також знаходить багатократні помилки.
Міністерство освіти і науки
Відкритий міжнародний університет розвитку людини ”Україна”