Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТОЦК.doc
Скачиваний:
33
Добавлен:
12.02.2016
Размер:
783.87 Кб
Скачать

Завадостійке кодування

Завадостійкими називаються коди, які володіють властивістю знаходити та виправляти помилки, які виникають у процесі передачі чи обробки інформації. На даний час розроблено десятки кодів, які теоретично можуть знаходити і виправляти довільну кількість помилок. Загалом усі коди в тій чи іншій мірі володіють коригуючою здатністю, за винятком ОНК, коди Бодо та Морзе. Так як ОНК має нульову надлишковість, а два інших – близьку до нульової.

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

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

В нероздільних визначення правильно прийнятого символу відбувається за кількісним співставленням певних якісних ознак переданих та прийнятих повідомлень. До таких кодів відносяться ОНК, стохастичні коди, код Клодкіна, код Грея, коди з постійною вагою, кореляційні коди.

Роздільні і не роздільні коди

В роздільних кодах інформаційні розряди та перевірочні позиції завжди розміщені на одних і тих же місцях. Роздільні коди в свою чергу діляться на: систематичні і несистематичні.

В не систематичних роздільних кодах повідомлення розбивається на під блоки. Контрольні символи визначаються в результаті сумування під блоків і являють собою запис їх суми. Прикладом таких кодів є коди Бергера, такі коди є ефективними для каналів із асиметричними помилками. Систематичними називаються такі коди у яких інформаційні та контрольні символи займають строго визначені місця в кодових комбінаціях. В канал зв»язку поступає n-елементна комбінація, у якій є nі-інформаційних символів, nk-контрольних символів. Очевидно n= ni +nk

P1

0,60

0

a1

P2

0,08

1 0 0

a2

P3

0,07

1 0 1 0

a3

P4

0,06

1 0 1 1

a4

P5

0,05

1 1 0 0

a5

P6

0,05

1 1 0 1

a6

P7

0,05

1 1 1 0

a7

P8

0,04

1 1 1 1

a8

Симетричні??? коди можуть бути лінійними, а лінійні в свою чергу: груповими, циклічними.

Приклад створення ОНК за методом Шеннона-Фано.

Символи ділимо на 2 групи, щоб суми їх імовірностей була приблизно одинакова (P1 – 0, P2- P8 – 1 ) .Так як верхня група включає тільки 1 символ, то ми цю групу залишаєм без змін і т.д. Приклад методики Гофмана

P1

0,50

P2

0,15

P3

0,12

P4

0,10

P5

0,04

P6

0,04

P7

0,03

P8

0,02

Л огічне дерево починається будувати із двох символів з найменшою імовірністю. Об’єднюєм його в вузол наступного рівня і цьому вузлу присвоюємо умовну імовірність, як суму двох символів початкового рівня

(0,2 + 0,3 => 0,5). При цьому ребро графа від символу з більшою імовірністю отримуєм код логічної ”1”, а з меншою - ”0”.

A

1

B

0 1 1

C

0 0 1

D

0 0 0

E

0 1 0 1 1

F

0 1 0 1 0

G

0 1 0 0 1

H

0 1 0 0 0

B i A не об’єднюємо так як, тоді ми отримаєм вузол який значно відрізняється за імовірністю від інших. Наступним чином ми отримуємо вузол імовірністю 0,13, 0,28, 05 і отримаєм дерево з імовірністю 1.

Послідовними кроками є отримання вузла 0,28, отримаєм ОНК на основі логічного дерева. Код будується на основі гілок дерева починаючи з першого