Після прийому коду контроль по парності буде вироблятися роздільно по контрольних групах та для усього коду у цілому. У цьому разі можуть бути таки випадки:
1) у прийнятому коді у цілому та по всіх контрольних групах кількість одиниць парна;
2) у прийнятому коді у цілому кількість одиниць непарна, але в усіх контрольних групах кількість одиниць парна;
3) у прийнятому коді у цілому та у деяких з контрольних груп кількість одиниць непарна;
4) у прийнятому коді у цілому кількість одиниць парна, але у деяких контрольних групах є непарна кількість одиниць.
Якщо потрійні помилки у великій кількості розрядів виключаються, то перший випадок відповідає безпомилковому прийому коду, другий випадок – помилка тільки у розряді подвійного контролю, третій випадок – поодинокій помилці у будь-якому з інших розрядів (яку можна виправити у відповідності з наведеними вище правилами), четвертий випадок – подвійній помилці. Виправлення подвійних помилок тут, кінцево, неможливо. Приклад такого коду наведений у таблиці 1.4, де колонка «ПК» дасть цифри розряду подвійного контролю. Збільшуючи далі кількість контрольних розрядів, можна було б побудувати коди, розраховані на виправлення подвійних помилок та відкриття тройних і т.д. Проте методи побудови цих кодів не цілком розроблені.
1.Закодувати чотирирозрядну інформаційну комбінацію 1011 коригуючим кодом Хеминга.
k=3 (тому що n=4). Розмістимо інформаційні та контрольні розряди, пронумерувавши їх від 1 до 7:
S7S6S5S4S3S2S1
1 0 1 ? 1 ? ?
Обчислимо значення контрольних розрядів:
k1=S3ÅS5ÅS7=1Å1Å1=1;
k2=S3ÅS6ÅS7=1Å0Å1=0;
k4=S5ÅS6ÅS7=1Å0Å1=0.
Тоді повна кодова комбінація коду Хемінга буде мати вигляд:1010101.
2. Знайти та виправити помилку у прийнятій комбінації коригуючого коду Хемінга 1000101.
Обчислюємо значення контрольних розрядів:
k`1=S1ÅS3ÅS5ÅS7=1Å1Å0Å1=1
k`2=S2ÅS3ÅS6ÅS7=0Å1Å0Å1=0
k`4=S4ÅS5ÅS6ÅS7=0Å0Å0Å1=1
Вектор помилки V= k`4 k`2 k`1=1012=510
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.