UTF-8

Показано використання основних кодувань у мережі з 2001 по 2012 рік, згідно з даними компанії Google,[1] UTF-8 обігнала всіх інших у 2008 році і досягла 50% у мережі в 2012 році.
Зверніть увагу, що в ASCII враховані вебсторінки з будь-яким оголошеним заголовком, за умови, що вони є ASCII-символами.

UTF-8 (від англ. Unicode Transformation Format — формат перетворення Юнікоду) — кодування, що реалізовує представлення Юнікоду, сумісне з 8-бітовим кодуванням тексту.

Текст, що складається тільки з символів, коди яких менші ніж 128, при записі в UTF-8 перетворюється на звичайний текст ASCII. І навпаки, в тексті UTF-8 будь-який байт із значенням менше, ніж 128 зображає символ ASCII з тим же кодом. Решта символів Юнікоду зображається послідовностями завдовжки від 2 до 6 байтів (реально тільки до 4 байтів, оскільки використання кодів більших, ніж 221 не планується), в яких перший байт завжди має вид 11xxxxxx, а решта — 10xxxxxx. Простіше кажучи, у форматі UTF-8 символи латинського алфавіту, розділові знаки і символи управління ASCII записуються кодами US-ASCII, а решта символів кодується за допомогою октетів із старшим бітом 1. В результаті, навіть якщо програма не розпізнає Юнікод, то англійська мова і розмітка все одно відображатимуться правильно.

Формат UTF-8 був винайдений 2 вересня 1992 року Кеном Томпсоном і Робом Пайком і реалізований в Plan 9[2]. Зараз стандарт UTF-8 офіційно закріплений в документах RFC 3629 і ISO/IEC 10646 Annex D.

Символи UTF-8 виходять з Unicode таким чином:

Unicode UTF-8
0x00000000 — 0x0000007F 0xxxxxxx
0x00000080 — 0x000007FF 110xxxxx 10xxxxxx
0x00000800 — 0x0000FFFF 1110xxxx 10xxxxxx 10xxxxxx
0x00010000 — 0x001FFFFF 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx

Також теоретично можливі, але не включені в стандарти:

Unicode UTF-8
0x00200000 — 0x03FFFFFF 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
0x04000000 — 0x7FFFFFFF 1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx

Зауваження: Символи, закодовані в UTF-8, можуть бути завдовжки до шести байтів, проте стандарт Unicode не визначає символів вище 0x10ffff, тому символи Unicode можуть мати максимальний розмір в 4 байти в UTF-8.

Див. також

Примітки

  1. Davis, Mark (28 січня 2010). Unicode nearing 50% of the web. Official Google Blog. Google. Архів оригіналу за 16 червня 2016. Процитовано 5 грудня 2010.
  2. Архівована копія. Архів оригіналу за 29 жовтня 2006. Процитовано 5 жовтня 2007.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)

Посилання

  • RFC 2277(англ.) Настанови IETF щодо кодувань і мов
  • Оригінальна специфікація UTF-8 [Архівовано 11 жовтня 2007 у Wayback Machine.](англ.)
  • п
  • о
  • р
Кодування символів
Історичні
кодування
докомп'ютерні
семафорна (Макарова)
Морзе
Бодо
МТК-2
комп'ютерні
6-бітне
УПП
RADIX-50
EBCDIC
ДКОІ
КОІ-7
ISO 646
сучасне
8-бітове
подання
символи
ASCII
керувальні
друковані
не-ASCII
псевдографіка
8-бітові код.стор.
кирилиця
КОІ-8
Основне кодування
MacCyrillic
ISO 8859
1 (лат.)
2
3
4
5 (кир.)
6
7
8
9
10
11
12
13
14
15 (€)
16
Windows
1250
1251 (кир.)
1252
1253
1254
1255
1256
1257
1258
WGL4
IBM & DOS
437
850
852
855
866 «альт.»
МІК
Багатобайтові
традиційні
DBCS
GB2312
HTML
юнікод
UTF-32
UTF-16
UTF-8
список символів
кирилиця