Уникод

от Уикипедия, свободната енциклопедия

Уникод или Универсален набор от символи (на английски, Unicode) е разработен да реши проблемите с наличието на много съществуващи еднобайтови набори от символи (кодировки), използвани при писане на текст на различни езици.

[редактиране] Сведения

Уникод (универсална кодировка) е набор от символи, създаден с цел е да съдържа всеки символ, използван при писане, на всички азбуки (включително и много мъртви езици) и други символи, използвани в математиката и инженерните науки.

Всеки знак или символ отговаря на определен номер в кодовата таблица, който се ползва примерно за изобразяване на символа в даден шрифт. Тъй като символите са няколко десетки хиляди и не е възможно да се представят в един байт, по специални правила (UTF) номерата на символите се трансформират в един, два, три или четири байта, за да могат да се ползват от компютрите.

Всеки един от досегашните набори от символи, кодирани с един байт, може без загуба да бъде преобразуван към Уникод, при едно условие: да сме сигурни точно от кой набор (в коя кодировка) са символите. Обратното преобразуване, от Уникод към някоя от еднобайтовите кодировки, е еднозначно и безспорно за тези знаци, които съществуват в целевата кодировка. Но текстовете в универсалната кодировка могат да съдържат всякакви знаци и тогава не е възможно да се преобразуват коректно в някоя еднобайтова кодировка.

Например текст само на кирилица или само на чешка латиница (с диакритични знаци) се преобразуват без проблем от съответната кодировка към Уникод и обратно. Обаче текст в Уникод и с кирилски букви, и с латински диакритични знаци (букви с ударения и лигатури), не може да се преобразува изцяло: или кирилицата ще се загуби, или буквите с диакритични знаци, в зависимост от целевата кодировка.

Относно дължината на текстовете, поради кодирането на всеки знак с един до четири байта (вместо само с един), обикновено текстове в Уникод са с по-голяма дължина от същите текстове в старите еднобайтови кодировки:

Примерен текст Старо кодиране (1 байт) Уникод (представен като отделни байтове)
"Кирилица"[1] Кирилица Кирилица
(байтове, по номера) 202, 232, 240, 232, 235, 232, 246, 224 208, 154, 208, 184, 209, 128, 208, 184, 208, 187, 208, 184, 209, 134, 208, 176
(байтове, шестнадесетично кодиране) CA, E8, F0, E8, EB, E8, F6, E0 D0, 9A, D0, B8, D1, 80, D0, B8, D0, BB, D0, B8, D1, 86, D0, B0
  1. Даден е пример как би изгледжал съответният текст, ако е прегледан с еднобайтовото кодиране Windows-1251.

[редактиране] Някои примери за практическо използуване

  • Уикипедия работи на Уникод и при нея се вижда практически ползата от него - страниците са многоезични. Това предимство се вижда при използуването на отговарящ на стандартите браузър, например Опера.
  • Windows NT4 и наследниците му - Windows 2000 и Windows XP вътрешно обработват текстовете на Уникод. Файловата система NTFS също работи с Уникод. Тоест - ако някой от горните Уиндоуси е инсталиран на NTFS дисков дял, то може да слагаме имена на файлове и папки на всякакъв език, точно както може да пишем на всякакъв език в статиите тука. Проблемът „файловете не се четат, имената им са на маймуни“ е принципиално невъзможен и наистина не се среща.

[редактиране] Външни препратки