Що таке кодування символів, як ANSI та Unicode, і чим вони відрізняються?

Sep 28, 2025
Хмара та Інтернет
НЕЗАГОТОВЛЕНИЙ ЗМІСТ

ASCII, UTF-8, ISO-8859 ... Можливо, ви бачили ці дивні прізвиська, що плавають навколо, але що вони насправді означають? Прочитайте далі, коли ми пояснюємо, що таке кодування символів і як ці скорочення стосуються простого тексту, який ми бачимо на екрані.

Фундаментальні будівельні блоки

Коли ми говоримо про письмову мову, ми говоримо про букви, що є складовою частиною слів, які потім будують речення, абзаци тощо. Букви - це символи, що представляють звуки. Коли ви говорите про мову, ви говорите про групи звуків, які об’єднуються, утворюючи якесь значення. Кожна мовна система має складний набір правил і визначень, які регулюють ці значення. Якщо у вас є слово, воно марне, якщо ви не знаєте, з якої мови воно є, і не використовуєте його разом з іншими, хто розмовляє цією мовою.

(Порівняння сценаріїв Grantha, Tulu та Malayalam, Зображення з Вікіпедія )

У світі комп’ютерів ми використовуємо термін „персонаж”. Символ - це свого роду абстрактне поняття, яке визначається конкретними параметрами, але воно є основною одиницею значення. Латинське «А» - це не те саме, що грецьке «альфа» чи арабське «аліф», оскільки вони мають різний контекст - вони з різних мов і мають дещо різну вимову - тож ми можемо сказати, що це різні символи. Візуальне зображення символу називається «гліфом», а різні набори гліфів називаються шрифтами. Групи персонажів належать до “набору” або “репертуару”.

Коли ви набираєте абзац і змінюєте шрифт, ви не змінюєте фонетичні значення букв, ви змінюєте їхній вигляд. Це просто косметика (але не маловажна!). Деякі мови, як давньоєгипетська та китайська, мають ідеограми; вони представляють цілі ідеї замість звуків, і їх вимови можуть змінюватися в часі та на відстані. Якщо ви замінюєте один символ іншим, ви підмінюєте ідею. Це не просто зміна літер, це зміна ідеограми.

Кодування символів

(Зображення від Вікіпедія )

Коли ви вводите щось на клавіатурі або завантажуєте файл, як комп’ютер знає, що відображати? Для цього призначене кодування символів. Текст на вашому комп’ютері насправді не букви, це ряд спарених буквено-цифрових значень. Кодування символів діє як ключ, значення якого відповідають яким символам, подібно до того, як орфографія диктує, які звуки відповідають яким буквам. Код Морзе - це своєрідне кодування символів. Це пояснює, як групи довгих і коротких одиниць, такі як звукові сигнали, представляють символи. У азбуці Морзе символи - це лише англійські літери, цифри та крапки. Існує багато комп’ютерних кодувань символів, які перекладаються на літери, цифри, знаки наголосу, розділові знаки, міжнародні символи тощо.

Часто в цій темі також використовується термін "кодові сторінки". Вони, по суті, є кодуванням символів, як використовується певними компаніями, часто з невеликими змінами. Наприклад, кодова сторінка Windows 1252 (раніше відома як ANSI 1252) є модифікованою формою ISO-8859-1. Вони в основному використовуються як внутрішня система для посилання на стандартне та модифіковане кодування символів, характерне для тих самих систем. На початку кодування символів було не настільки важливим, оскільки комп’ютери не спілкувались між собою. З ростом популярності Інтернету, а мережами є звичним явищем, він стає все більш важливим у нашому повсякденному житті, навіть не усвідомлюючи цього.

Багато різних типів

(Зображення від Сара Сосіяк )

Існує безліч різних кодувань символів, і на це є маса причин. Яке кодування символів ви вирішите використовувати, залежить від ваших потреб. Якщо ви спілкуєтесь російською мовою, має сенс використовувати кодування символів, яке добре підтримує кирилицю. Якщо ви спілкуєтесь корейською мовою, то вам захочеться щось, що добре представляє хангул та ханджу. Якщо ви математик, то вам потрібно щось, що має всі науково-математичні символи, а також грецькі та латинські гліфи. Якщо ви жартівник, можливо, ви отримаєте від цього користь перевернутий текст . І якщо ви хочете, щоб усі документи такого типу переглядала будь-яка особа, вам потрібне досить поширене та легкодоступне кодування.

Давайте розглянемо деякі з найбільш поширених.

(Уривок таблиці ASCII, Зображення з asciitable.com )

  • ASCII - Американський стандартний код для обміну інформацією є одним із старих кодувань символів. Спочатку він був розроблений на основі телеграфних кодів і розвивався з часом, щоб включати більше символів та деякі застарілі недруковані контрольні символи. Це, мабуть, настільки базове, наскільки це можливо з точки зору сучасних систем, оскільки воно обмежене латинським алфавітом без наголошених символів. Його 7-бітне кодування дозволяє мати лише 128 символів, тому у всьому світі використовується кілька неофіційних варіантів.
  • ISO-8859 - Найбільш вживаною групою кодування символів Міжнародної організації зі стандартизації є номер 8859. Кожне конкретне кодування позначається цифрою, яка часто має префікс описовим прізвищем, наприклад ISO-8859-3 (латинська-3), ISO-8859-6 (латинська / арабська). Це надмножина ASCII, що означає, що перші 128 значень у кодуванні збігаються з ASCII. Однак він 8-розрядний і дозволяє використовувати 256 символів, тому він будується звідти і включає набагато ширший набір символів, причому кожне конкретне кодування фокусується на різному наборі критеріїв. Латиниця-1 включала купу наголошених букв та символів, але пізніше була замінена переробленим набором під назвою Latin-9, що включає оновлені символи, такі як символ євро.

(Уривок тибетського сценарію, Unicode v4, з unicode.org )

  • Юнікод - Цей стандарт кодування націлений на універсальність. На даний момент він включає 93 сценарії, організовані в кілька блоків, і ще багато з них працюють. Юнікод працює інакше, ніж інші набори символів, оскільки замість прямого кодування гліфа кожне значення направляється далі до «кодової точки». Це шістнадцяткові значення, які відповідають символам, але самі гліфи надаються окремо програмою, наприклад, вашим веб-браузером. Ці кодові точки зазвичай зображуються наступним чином: U + 0040 (що перекладається як ‘@’ ). Конкретними кодуваннями за стандартом Unicode є UTF-8 та UTF-16. UTF-8 намагається забезпечити максимальну сумісність з ASCII. Він 8-розрядний, але дозволяє використовувати всі символи за допомогою механізму заміни та кількох пар значень на символ. UTF-16 втрачає ідеальну сумісність з ASCII для більш повної 16-бітової сумісності зі стандартом.
  • ISO-10646 - Це не фактичне кодування, а лише набір символів Unicode, який стандартизований ISO. Це в основному важливо, оскільки це репертуар символів, який використовується HTML. Деякі з більш розширених функцій, що надаються Unicode, що дозволяють здійснювати сортування та справа наліво поряд із сценаріями зліва направо, відсутні. Тим не менше, він дуже добре працює для використання в Інтернеті, оскільки дозволяє використовувати широкий спектр сценаріїв і дозволяє браузеру інтерпретувати гліфи. Це дещо полегшує локалізацію.

Яке кодування слід використовувати?

Ну, ASCII працює для більшості англомовних, але не для багатьох інших. Частіше ви бачите ISO-8859-1, який працює для більшості західноєвропейських мов. Інші версії ISO-8859 працюють для кирилиці, арабської, грецької та інших специфічних писемностей. Однак якщо ви хочете відобразити кілька сценаріїв в одному документі або на одній веб-сторінці, UTF-8 забезпечує набагато кращу сумісність. Це також дуже добре працює для людей, які використовують правильні знаки пунктуації, математичні символи або символи, що не містять манжети, такі як квадрати та прапорці .

(Кілька мов в одному документі, знімок екрана gujaratsamachar.com )

Однак у кожного набору є недоліки. Знаки пунктуації ASCII обмежені, тому він не працює неймовірно добре для друкарських правильних редагувань. Ви коли-небудь вводили копію / вставку із Word лише для того, щоб мати якусь дивну комбінацію гліфів? Це недолік ISO-8859, або, вірніше, його передбачувана взаємодія зі специфічними для ОС кодовими сторінками (ми розглядаємо ВАС, Microsoft!). Основним недоліком UTF-8 є відсутність належної підтримки при редагуванні та публікації додатків. Інша проблема полягає в тому, що браузери часто не інтерпретують і просто відображають позначку порядку байтів символу, закодованого UTF-8. Це призводить до відображення небажаних гліфів. І звичайно, декларування одного кодування та використання символів з іншого без належного декларування / посилання на них на веб-сторінці ускладнює браузерам їх правильну візуалізацію, а пошуковим системам - належним індексом.

Для власних документів, рукописів тощо можна використовувати все, що потрібно для виконання роботи. Що стосується Інтернету, то, схоже, більшість людей погоджуються використовувати версію UTF-8, яка не використовує позначку порядку байтів, але це не зовсім одностайно. Як бачите, кожне кодування символів має своє власне використання, контекст, сильні та слабкі сторони. Як кінцевому користувачеві вам, мабуть, не доведеться з цим мати справу, але тепер ви можете зробити додатковий крок вперед, якщо ви так вирішите.

Cryptography Fundamentals - 03 Character Encodings ASCII , ANSI , UNICODE

What Is The Differences Between ANSI And Unicode

Unicode And Character Encoding

ASCII And Unicode Character Sets

Character Encoding And Unicode Tutorial

What Is Unicode? And Why Do I Need To Use Unicode?

Unicode, UTF 8 And ASCII

Character Encodings (Jack)

ANSI And Unicode Encoding, TCHAR LPSTR LPCSTR LPWSTR LPCWSTR LPTSTR LPCTSTR

Characters, Symbols And The Unicode Miracle - Computerphile

Code Pages, Character Encoding, Unicode, UTF-8 And The BOM - Computer Stuff They Didn't Teach You #2

Character Encoding


Хмара та Інтернет - Найпопулярніші статті

Як налаштувати параметри пошти для iPhone та iPad

Хмара та Інтернет Jan 19, 2025

Пошта - це вбудована програма електронної пошти на кожному iPhone та iPad. Він не може похвалитися деяки�..


Чому кожна програма натискає сповіщення зараз і як це зупинити

Хмара та Інтернет Jun 22, 2025

Чи вичерпані всі ваші сповіщення? Ви не самі: сповіщення - це не те, що було раніше. Колись ваш т�..


Як завантажити субтитри до фільмів та телешоу в Коді

Хмара та Інтернет May 19, 2025

Можливо, ви або хтось із вашої родини глухий. Можливо, ви дивитесь фільм іншою мовою. Або, можливо, в�..


Як користуватися Dropbox з iPhone або iPod Touch

Хмара та Інтернет Aug 5, 2025

Однією з чудових можливостей Dropbox є можливість ділитися та синхронізувати файли з іншими комп’ютерами �..


Попередній перегляд і перевірка URL-адрес в Internet Explorer 8

Хмара та Інтернет Jul 20, 2025

Хочете побачити попередній перегляд веб-сайтів за звичайними, лише текстовими та скороченими URL-адресам..


Як використовувати автозаповнення в електронній таблиці Документів Google [Quick Tips]

Хмара та Інтернет Sep 5, 2025

НЕЗАГОТОВЛЕНИЙ ЗМІСТ Ви коли-небудь хотіли заповнити цілий рядок або стовпець низкою значень? Якщо ви �..


Кнопки компактної панелі інструментів у Firefox

Хмара та Інтернет Dec 11, 2024

Ви шукаєте нові способи ущільнення інтерфейсу у Firefox? Тепер ви можете видалити зайвий простір між кнопка..


Швидка порада: Видаліть кнопку закриття з вкладки Firefox

Хмара та Інтернет Apr 15, 2025

НЕЗАГОТОВЛЕНИЙ ЗМІСТ Кнопки закриття вкладки на кожній вкладці у Firefox 2 насправді дратують. Коли у вас в..


Категорії