- •Що таке економне кодування інформації? з якою метою воно здійснюється? Які існують способи задання кодів?
- •Що таке рівномірні й нерівномірні коди? з якою метою використовуються оптимальні нерівномірні коди?
- •Що таке надлишковість коду? Як вона визначається?
- •4. Учомуполягає принцип кодування з перевіркою на парність? Яка надлишковість коду? у чомупереваги та недолікикодування?
- •5. Щотакетвірнаматрицялінійногоблокового коду? Якіїївластивості? Яка структура твірноїматриці?
- •6. Щотакеоптимальнекодуванняінформації? Якийкритерійоптимальностістатистичнихкодів?
- •7. Які існують класи завадостійких кодів? Які коди належать до блокових завадостійких кодів? в яких випадках їх доцільно використовувати?
- •8. Які коди належать до завадостійких? Якими загальними властивостями вони характеризуються? Для чого в завадостійкі коди вводиться надлишковість?
- •9. Які коди називаються префіксними? Що таке вектор Крафта? Як записується нерівність Крафта? у чому полягає умова оптимальності префіксних кодів?
- •11.У чомуполягає алгоритм побудовиоптимального коду Шеннона-Фано?
- •12. У чому полягає алгоритм побудови оптимального коду Хаффмена?
- •13 Які необхідна і достатня умови існування завадостійкого коду?
- •14 Які існують способи задання лінійних блокових кодів? Які основні частини мають кодові слова лінійного блокового коду?
- •15 Які коди належать до лінійних блокових кодів? Які коди мають властивість систематичності?
- •16 Що таке система перевірних рівнянь лінійного блокового коду?
- •17 Що таке перевірна матриця лінійного блокового коду? Які її властивості? Яка структура перевірної матриці?
- •18 Як, скориставшись перевірною матрицею, побудувати систему перевірних рівнянь лінійного блокового коду?
- •19. Що таке кодовий синдром лінійного коду? Як він визначається?
- •20. У чому полягає алгоритм кодування циклічним кодом? Що таке перевірний поліном циклічного коду? Які його властивості?
- •21. Яким чином виявляються помилки поліноміальним кодом? в яких випадках помилки залишаються не знайденими?
- •22 Як побудувати твірну матрицю лінійного блокового коду із заданими характеристиками?
- •23 Які коди називаються блоковими? Що таке порядок блокового коду?
- •24 Які коди називаються поліноміальними?
- •25. Які поліноміальні коди називаються циклічними? Які їх властивості?
- •26. У чому полягає відмінність блокових і згорткових кодів?
- •27. У чому полягає метод блокування повідомлень? Як будується блоковий код Хаффмена?
- •Адаптивний алгоритм хаффмена з упорядкованим деревом
- •28.Які лінійні блокові коди називаються кодом Хеммінга? Як знаходиться кількість інформаційних і перевірних символів для коду Хеммінга? Як утворюються кодові слова коду Хеммінга?
- •29.Як складається перевірна та твірна матриці коду Хеммінга?
- •30.Як виконується декодування коду Хеммінга?
- •31. Як визначаються основні арифметичні операції над поліномами в полі двійкових символів gf(2)?
- •32. Як визначається поліном синдрому для циклічних кодів?
- •33. Як виявляються і виправляються помилки циклічним кодом?
- •34. Як визначаєтьсядовжинакомбінації у двійковихкодах бчх?
- •35. Як побудувати твірну матрицю коду бчх
- •36. Як визначаєтьсямінімальнакількістьперевірнихсимволів для лінійногоблокового коду іззаданими характеристиками?
- •37 Як побудувати твірну та перевірну матриці циклічного коду?
- •38 Яким чином за допомогою кодового синдрому виявляються та виправляються помилки лінійним блоковим кодом?
- •39 Як записуються необхідна і достатня умови виявлення лінійним блоковим кодом помилок заданої кратності?
- •40. Як побудувати твірну матрицю поліноміального коду?
- •41. Як записуються необхідна і достатня умови виправлення лінійним блоковим кодом помилок заданої кратності?
- •42. Який канал передачі інформації описується моделлю двійкового симетричного каналу?
- •43 Як визначається вектор помилок у двійковому каналі зв'язку? у чому полягає задача декодування переданого кодового слова?
- •44 Яку властивість має кодовий синдром прийнятої кодованої послідовності? у яких випадках синдром не дозволяє знайти помилки у переданій послідовності?
- •45 Яке кодування інформації називається статистичним? Які алгоритми стиснення даних відносять до статистичних?
- •46. За якими ознаками класифікують системи й методи стиснення даних?
- •47. Чим визначається верхня границя стиснення інформації? Які існують границі стиснення при використанні оптимального кодування Шеннона-Фано і Хаффмена?
- •48. Які переваги та недоліки використання оптимального кодування Шеннона-Фано і Хаффмена?
- •49 Які системи характеризуються стисненням без втрат інформації? Які основні елементи вони включають?
- •50 У чому полягає арифметичний алгоритм кодування інформації? Які його переваги в порівнянні з іншими статистичними методами стиснення інформації?
- •51 Як здійснюється декодування даних за арифметичним алгоритмом?
- •.У чому полягає основна ідея словникових методів стиснення інформації? у чому переваги використання словникових методів у порівнянні із статистичними? (ст.104)
- •Які основні елементи включає система стиснення інформації? Які функції вони виконують?
- •На які основні групи поділяються словникові алгоритми стиснення? Які їх характерні риси? (ст.104)
- •55 .У чому полягають словникові методи стиснення з використанням «ковзного» вікна lz77, lzss? Чим визначається довжина кодів цих алгоритмів?
- •56 Які переваги модифікованого алгоритму lzss у порівнянні з lz77?
- •57 У чому полягають словникові методи стиснення lz78, lzw? Чим визначається довжина кодів для цих алгоритмів? Які переваги модифікації lzw?
- •58 У чому полягає метод стиснення інформації способом кодування серій (алгоритм rle)
- •59 ЯкінедолікисловниковихалгоритмівLz77, lzss?
- •60 ЯкіперевагиалгоритмівLz78, lzw у порівнянні з lz77, lzss?
- •61 Якісистемихарактеризуютьсястисненнямізвтратамиінформації? у чомурізниця систем ізвтратами й без втратінформації?
- •62 У чому суть дискретного косинус-перетворення у стисканні зображень?
- •63 Яку функцію покладено на етап квантування у алгоритмі jpeg?
26. У чому полягає відмінність блокових і згорткових кодів?
Завадостійкі коди поділяються на два великі класи: блокові і згорткові коди. Визначальна різниця між цими кодами – у відсутності або наявності пам'яті кодера.
Кодер для блокових кодів поділяє неперервну інформаційну послідовність на блоки завдовжки k символів. Кодер каналу перетворює блоки повідомлення X у більш довгі послідовності Y, що складаються з n символів й називаються кодовими словами. r=n-k символів, що додаються кодером до кожного блоку повідомлення, називають надлишковими, або перевірними, або контрольними. Вони не несуть додаткової інформації, їх функції полягають у забезпеченні можливостей виявлення й виправлення помилок, спричинених наявністю завад у каналі зв'язку.
k-розрядним двійковим словам можна поставити у відповідність 2k різних значень з алфавіту джерела, яким відповідатиме 2k кодових слів на виході кодера. Така множина 2k кодових слів називається блоковим кодом. Термін «без пам'яті» означає, що кожний блок з n символів залежить лише від відповідного k-символьного інформаційного блоку і не залежить від інших блоків повідомлення.
Кодер для згорткових кодів опрацьовує інформаційні послідовності без розбиття їх на незалежні блоки. У кожний момент часу кодер перетворює невелику послідовність з k інформаційних символів у блок з n кодових символів, де n>k. При цьому кодовий n-символьний блок залежить не тільки від k-символьного інформаційного блоку, наявного на вході у поточний момент часу, але і від попередніх m блоків повідомлення. У цьому і полягає наявність пам'яті кодера.
Блокові коди доцільно використовувати у тих випадках, якщо первинні дані згруповані у блоки або масиви.
Згорткові коди найчастіше використовуються для передачі по радіоканалах і краще підходять для побітової передачі даних. Крім того, при однаковій надмірності згорткові коди, як правило, мають кращу виправну здатність.
Однією з умов практичної реалізації блокового завадостійкого коду є умова його лінійності.
Визначення. Блоковий код завдовжки n символів, що складається з 2k кодових слів, називається лінійним (k, n)-кодом за умови, що усі його 2k кодових слів утворюють k-вимірний підпростір векторного простору n-послідовностей двійкового поля GF(2). Іншими словами, двійковий код є лінійним, якщо порозрядна сума за модулем 2 (mod 2) двох кодових слів також є кодовим словом даного коду.
Бажаною якістю лінійних блокових кодів є систематичність. Систематичний код має інформаційну частину з k символів і надмірну (перевірну) частину з n-k символів постійної довжини.
27. У чому полягає метод блокування повідомлень? Як будується блоковий код Хаффмена?
Метод блокування повідомлень полягає в такому.
За заданим>0 можемо знайти таке k, що якщо розбити повідомлення на блоки завдовжки k (всього буде n/k блоків), то, використовуючи оптимальне статистичне кодування таких блоків, що розглядаються як одиниці повідомлень, можна досягти середньої довжини коду більше ентропії менш ніж на .
Припустимо, що X1,
X2, …,
Xn–
незалежні д. в. в., що мають однаковий
розподіл ймовірностей. Тоді ентропія
n-вимірної д. в. в.
.
Нехай
- повідомлення джерела, де
,
,
… ,
- блоки повідомлення.Тоді
.
(2.10)
При оптимальному кодуванні
k-послідовностей
векторної д. в. в.
,
що розглядаються як одиниці повідомлення,
справедлива нерівність
. (2.11)
Середня кількість бітів на одиницю повідомлення X
. (2.12)
Тоді з урахуванням (2.10) і (2.12) нерівність (2.11) можна записати так:
. (2.13)
Розділивши обидві частини (2.13) на k, отримуємо
, (2.14)
тобто достатньо вибрати
.
