- •Що таке економне кодування інформації? з якою метою воно здійснюється? Які існують способи задання кодів?
- •Що таке рівномірні й нерівномірні коди? з якою метою використовуються оптимальні нерівномірні коди?
- •Що таке надлишковість коду? Як вона визначається?
- •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?
12. У чому полягає алгоритм побудови оптимального коду Хаффмена?
Кодування за методом Хаффмена здійснюється наступним чином: 1. Всі підлягають кодуванню символи записуються в порядку убування їх апріорних ймовірностей. Якщо деякі символи мають однакові ймовірності, то їх розташовують поруч у довільному порядку. 2. Вибирають символи з мінімальними ймовірностями по 2 і одному приписують 0, а іншому 1. 3. Вибрані символи об'єднують в проміжні символи з сумарною ймовірністю. 4. Знову знаходять пару символів з найменшими ймовірностями і надходять аналогічно. У таблиці 2 наведено приклад кодування за методом Хаффмена для джерела повідомлень із заданими ймовірностями символів алфавіту: x 1 = 0,4; x 2 = x 5 = 0,2; x 3 = 0,1; x 4 = x 6 = 0,05. Таблиця 2
Символ |
p i |
Граф коду Хаффмена |
Код |
x 1 x 2 x 5 x 3 x 4 x 6 |
0,4 0,2 0,2 0,1 0,05 0,05 |
1 (1,0) 1 0 (0,6) 1 0 (0,4) 1 0 (0,2) 1 0 (0,1) 0 |
1 01 001 0001 00001 00000 |
13 Які необхідна і достатня умови існування завадостійкого коду?
Для виправлення кодом помилок кратності не більше l необхідно і достатньо, щоб мінімальна відстань між його словами була 2l+1:dmin≥ 2l+1.
Для лінійного блокового (k, n)-коду,
мінімальна відстань між кодовими словами
якого dmin=2l+1,
де l - кратність помилок, що
виявляються кодом, кількість перевірних
розрядів r=n-k
визначається нерівністю
, що
називається нижньою границею
Хеммінга.
Крім того, якщо параметри n, r
і l відповідають нерівності
, що
називається верхньою границею
Варшамова-Гільберта, то існує
(n-r, n)-код, що виправляє всі
помилки кратності l і менше.
Нижня границя задає необхідні умови існування завадостійкого коду із заданими характеристиками.
Верхня границя задає достатні умови існування завадостійкого коду.
14 Які існують способи задання лінійних блокових кодів? Які основні частини мають кодові слова лінійного блокового коду?
Найпростіший лінійний блоковий код - це (n-1, n) - код з контролем парності. Цей код, зокрема, широко використовується у модемах.
Іншим способом задання лінійних блокових кодів є система перевірних рівнянь, що визначає правила знаходження перевірних символів залежно від інформаційних. Приклад такого задання:
де r1, r2, r3, r4 - перевірні (контрольні) символи.
Проте найзручнішим і наочним способом задання лінійного блокового коду є його подання за допомогою твірної матриці.
. (3.2)
одинична перевірна
підматрицяIkxkпідматрицяPkx(n-k)
При цьому кожне кодове слово є лінійною комбінацією рядків матриці G
Лінійний блоковий код може бути заданийперевірною матрицеюH(n-k)n, що має таку властивість:
якщо деяка послідовність u є кодовим словом лінійного блокового коду, заданого перевірною матрицею H(n-k)n, тоuH= 0, тобто перевірна матриця ортогональна будь-якій кодовій послідовності даного коду.
Перевірна матриця має розмірність (n-k)n і таку структуру:
, (3.3)
деяка послідовність u є кодовим словом
де - транспонована перевірна підматриця твірної матриці Gkn;
- одинична підматриця.
Зручним і наочним способом задання лінійних блокових (k, n)-кодівє подання символів кодових слівu0, u1.,un-1 у вигляді коефіцієнтів многочлена від х, тобто u(x) = u0 + u1 x + u2 x2 + … + un-1 xn-1.
Подання кодових слів у такій формі дозволяє звести дії над комбінаціями символів до дій над поліномами.
