Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Дискретна математика.docx
Скачиваний:
41
Добавлен:
08.09.2019
Размер:
5.48 Mб
Скачать

Розділ 7 Основи теорії кодування План викладення матеріалу

7.1. Алфавітне й рівномірне кодування.

7.2. Дотатні умови однозначності декодування. Властивості розділових кодів.

7.3. Оптимальне кодування.

    1. Коди, стійкі до перешкод. Коди Хемінга.

Задачі.

Комп 'ютерні проекти.

Література.

7.1. Алфавітне й рівномірне кодування

Кодування - у широкому розумінні - це перехід від одного спо­собу задання інформації до іншого, який дає змогу відновлювати початкову інформацію. Теорія кодування виникла в 40-х роках XX століття після робіт К. Шеннона (С. Shannon). У цій теорії дослід­жуються методи кодування, пов'язані з основними математичними моделями, які відображають істотні риси реальних інформаційних систем.

Не зменшуючи загальності, задачу кодування можна сформулю­вати так. Нехай заданий алфавіт А=1,... ,аr}, який складається зі скінченної кількості букв. Скінченну послідовність символів алфа­віту А: α = αi1 αi2 …αil називають словам в алфавіті А,а число l - дов­жиною слова α. Довжину слова α позначаютьl(α).Множину всіх слів в алфавіті А позначають черезA*. Порожнє слово не містить жодної букви, його позначають , A*, l( )=0, A.

Якщо = 1 2, то 1 називають початком,або префіксом слова , а 1закінченням, або постфіксом слова .Якщо при цьому 1≠λ(відповідно, 2≠λ), то α1(відповідно, α2) називають власним початком (відповідно, власним значенням) слова α.

Нехай S – деяка підмножина множини A*, елементимножиниSназиваютьповідомленнями. Нехай також задано скінченнийB ={b1,…,bq}.Через β позначмо слово в алфавітіBі через B* -- множинувсіхсліввалфавітіB. ЗадамовідображенняF, яке кожному слову α, α S, ставить у відповідність слово β=F(α),β B*. Слово βназивають кодом повідомленняα. Перехід від слова α до його коду називають кодуванням.

Якщо ƖBƖ =q, то кодування називають q-кодовим. Найбільш поширений випадок B={0,1}– двійкове кодування. Саме цей випадок й розглядатимемо в подальшому, слово "двійкове" випускатимемо.

Відображення Fзадаютьдеяким алгоритмом. Розглянемодва способи задання відображення F.

Алфавітне кодування.Алфавітне кодування задають схемою (або таблицею кодів) σ:

α1→β1,

α2→β2,

………..

αr→βr,

де α1ϵА, β1 B*, i=1,…,r. Схема σ задає відповідність між буквами алфавіту A і деякими словами алфавіту B. Вона визначає алфавітне кодування так: кожному слову = αi1αi2 … αil з S ставиться у відповідність слово β = βi1 βi2 … βil. Це слово β називають кодом слова . Слова β1,…, βr (див. схему σ) називаютьелементарними кодами.

Рівномірнекодування. Рівномірнекодування зпараметрами k та n визнaчають так. Повідомлення α розбивають на блоки довжини k:

,

Де sk (останній блок може бути коротшим, у такому разіспосібйогокодуванняспеціальнообумовлюється), xi A, i=1, …,mk+s. Блоки довжини kрозглядають як буквидеякогоалфавіту (таких блоків є, очевидно, rk, оскількиалфавітА складається з r букв ) і кодують словами в алфавіті Bоднаковоїдовжиниn за схемою рівномірного кодування σk,n:

1 1

22

33

………

Надлишковістю схеми σk,n на символ повідомленняназивають величину

Отже, ми описали два способи задання відображення F: SB*. Однозначне декодування є можливим, якщо існує обернене відображення F-1.