Префіксний код в теорії кодування — код зі словом змінної довжини, що має таку властивість (виконання умови Фано): якщо в код входить слово a, то для будь-якого непорожнього рядка b слова ab в коді не існує. Хоча префіксний код складається зі слів різної довжини, ці слова можна записувати без розділового символу.
Наприклад, код, що складається з слів 0, 10 і 11, є префіксним, і повідомлення 01001101110 можна розбити на слова єдиним чином:
0 10 0 11 0 11 10
Код, що складається з слів 0, 10, 11 і 100, префіксним не є, і те саме повідомлення можна трактувати декількома способами.
0 10 0 11 0 11 10 0 100 11 0 11 10
Визначення
Так звані «префікси» можуть бути отримані шляхом послідовного відкидання останнього знаку кодової комбінації. Наприклад, для кодової комбінації 11101101 префіксами будуть 11101101, 1110110, 111011, 11101, 1110, 111, 11, 1.
Якщо проміжків чи інших знаків пунктуації між кодовими комбінаціями немає, то для однозначного декодування комбінації 111011101 жодна з кодових комбінацій не може бути представлена перерахованими варіантами (префіксами). Код називається префіксним, якщо жодна з його комбінацій не є префіксом іншої комбінації того ж коду. Частина кодової комбінації, яка доповнює префікс до самої комбінації, називається суфіксом. Префіксні коди наочно можуть бути представлені за допомогою кодових дерев. Якщо ні один вузол кодового дерева не є вершиною даного коду, то він має властивості префікса. Вузли дерева, які не з'єднуються з іншими, називаються кінцевими. Комбінації, які їм відповідають, є кодовими комбінаціями префіксного коду.
Приклади
Будь-який код зі словом фіксованої довжини, очевидно, є префіксним. Розглянемо декілька нетривіальних прикладів.
- Телефонні номери в стаціонарних мережах.
- UTF-8.
- Код Хаффмана, що застосовується для стискування даних.
- Синтаксис Паскаля та інших мов з -синтаксисом (якщо вважати символом лексему, а словом — оператор). Тому для визначення типу оператора транслятору Паскаля не доводиться повертати лічені символи в потік, або запам'ятовувати їх в стеку.
Код Морзе не є префіксним. У нього, крім крапки і тире, входить також символ-розділювач — пауза довжиною з тире.
Див. також
Це незавершена стаття про інформаційні технології. Ви можете проєкту, виправивши або дописавши її. |
Ця стаття не містить . (грудень 2015) |
Ця стаття потребує додаткових для поліпшення її . (грудень 2015) |
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Prefiksnij kod v teoriyi koduvannya kod zi slovom zminnoyi dovzhini sho maye taku vlastivist vikonannya umovi Fano yaksho v kod vhodit slovo a to dlya bud yakogo neporozhnogo ryadka b slova ab v kodi ne isnuye Hocha prefiksnij kod skladayetsya zi sliv riznoyi dovzhini ci slova mozhna zapisuvati bez rozdilovogo simvolu Napriklad kod sho skladayetsya z sliv 0 10 i 11 ye prefiksnim i povidomlennya 01001101110 mozhna rozbiti na slova yedinim chinom 0 10 0 11 0 11 10 Kod sho skladayetsya z sliv 0 10 11 i 100 prefiksnim ne ye i te same povidomlennya mozhna traktuvati dekilkoma sposobami 0 10 0 11 0 11 10 0 100 11 0 11 10ViznachennyaTak zvani prefiksi mozhut buti otrimani shlyahom poslidovnogo vidkidannya ostannogo znaku kodovoyi kombinaciyi Napriklad dlya kodovoyi kombinaciyi 11101101 prefiksami budut 11101101 1110110 111011 11101 1110 111 11 1 Yaksho promizhkiv chi inshih znakiv punktuaciyi mizh kodovimi kombinaciyami nemaye to dlya odnoznachnogo dekoduvannya kombinaciyi 111011101 zhodna z kodovih kombinacij ne mozhe buti predstavlena pererahovanimi variantami prefiksami Kod nazivayetsya prefiksnim yaksho zhodna z jogo kombinacij ne ye prefiksom inshoyi kombinaciyi togo zh kodu Chastina kodovoyi kombinaciyi yaka dopovnyuye prefiks do samoyi kombinaciyi nazivayetsya sufiksom Prefiksni kodi naochno mozhut buti predstavleni za dopomogoyu kodovih derev Yaksho ni odin vuzol kodovogo dereva ne ye vershinoyu danogo kodu to vin maye vlastivosti prefiksa Vuzli dereva yaki ne z yednuyutsya z inshimi nazivayutsya kincevimi Kombinaciyi yaki yim vidpovidayut ye kodovimi kombinaciyami prefiksnogo kodu PrikladiBud yakij kod zi slovom fiksovanoyi dovzhini ochevidno ye prefiksnim Rozglyanemo dekilka netrivialnih prikladiv Telefonni nomeri v stacionarnih merezhah UTF 8 Kod Haffmana sho zastosovuyetsya dlya stiskuvannya danih Sintaksis Paskalya ta inshih mov z sintaksisom yaksho vvazhati simvolom leksemu a slovom operator Tomu dlya viznachennya tipu operatora translyatoru Paskalya ne dovoditsya povertati licheni simvoli v potik abo zapam yatovuvati yih v steku Kod Morze ne ye prefiksnim U nogo krim krapki i tire vhodit takozh simvol rozdilyuvach pauza dovzhinoyu z tire Div takozhNerivnist Krafta Makmillana Ce nezavershena stattya pro informacijni tehnologiyi Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi Cya stattya ne mistit posilan na dzherela Vi mozhete dopomogti polipshiti cyu stattyu dodavshi posilannya na nadijni avtoritetni dzherela Material bez dzherel mozhe buti piddano sumnivu ta vilucheno gruden 2015 Cya stattya potrebuye dodatkovih posilan na dzherela dlya polipshennya yiyi perevirnosti Bud laska dopomozhit udoskonaliti cyu stattyu dodavshi posilannya na nadijni avtoritetni dzherela Zvernitsya na storinku obgovorennya za poyasnennyami ta dopomozhit vipraviti nedoliki Material bez dzherel mozhe buti piddano sumnivu ta vilucheno gruden 2015