Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Зошит 3.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.39 Mб
Скачать

Коди, що самовідновлюються

Одним із засобів боротьби з перешкодами є коди, що самовідновлюються (коректуючі), дозволяють не тільки виявити, але і виправити помилки при прийманні.

Хай використовується n-розрядний двійковий код. Помилка при прийомі кодової комбінації полягає в тому, що під впливом перешкоди переданий нуль був прийнятий як одиниця, або одиниця була прийнята як нуль. Якщо в кодовій комбінації помилка присутня тільки в одному розряді, то таку помилку називатимемо одиничною, якщо в двох розрядах – подвійною і так далі.

Якщо при передачі в якості інформаційних використовуються всі можливі кодові комбінації, помилки неможливо навіть виявити: будь-яка помилка перетворить кодову комбінацію в іншу допустиму кодову комбінацію. Для розпізнавання помилок необхідно частину кодових комбінацій зарезервувати для контролю помилок. Для того, щоб було можна виявити одиничну помилку, досить як інформаційні узяти такі кодові комбінації, які розрізнювалися би між собою не менш, ніж в двох знаках. Тоді одинична помилка в будь-якій інформаційній кодовій комбінації приводила б до появи забороненої кодової комбінації. Для виправлення одиничних помилок, можна використовувати код, інформаційні кодові комбінації якого розрізнюються не менш, ніж у трьох знаках. Тоді одинична помилка дасть заборонену кодову комбінацію, що відрізняється від початкової в одному знаку, але що відрізняється від будь-якої іншої дозволеної комбінації не менш, ніж в двох знаках. Відповідно, можна буде не тільки виявити помилку, але і знайти дійсну кодову комбінацію, що передавалася.

Аналогічним чином можна побудувати коди, що виявляють і виправляють помилки будь-якої кратності. Для цього потрібно лише зменшувати частку інформаційних кодових комбінацій серед усіх можливих.

При такому підході необхідно кожну прийняту кодову комбінацію порівнювати з усіма дозволеними комбінаціями і, в разі збігу, вважати, що помилки не було, а інакше вважати істинною дозволену комбінацію, що відрізняється від прийнятої у мінімальній кількості розрядів. Це – досить малоефективний метод виявлення і виправлення помилок.

Систематичні коди

Інший підхід до побудови кодів – розділення розрядів коду на інформаційні і контрольні. Такі коди називаються систематичними.

Хай всього в коді n розрядів, з них k – інформаційних і r – контрольних розрядів (n=k+r). Такий код може передавати N = 2k різних повідомлень. З r контрольних розрядів можна організувати 2r різних комбінацій. Для виявлення і виправлення одиничної помилки потрібно, по-перше, вказати наявність/відсутність помилки і, по-друге, вказати номер розряду, в якому відбулася помилка.

Щоб в контрольних розрядах можна було передавати інформацію для виправлення одиничних помилок, їх кількість повинна задовольняти нерівності 2r≥n+1 або 2n/(n+1) ≥N. Якщо досягається рівність: 2n/(n+1) = N, тоді кількість контрольних розрядів, що доводяться на один інформаційний, буде найменшою. Наприклад, для N=4 різних повідомлень (k=2) найменше значення n рівне п'яти (24/(4+1)= 3,2 < 4, а 25/6 х 5,3 > 4). Отже, кількість контрольних розрядів, необхідна для виявлення і виправлення одиничних помилок r = n-k = 5-2 = 3.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]