Sobes.tech
Back to questions
Senior
7

Что такое кодировка? В чём разница между кодировками? Примеры.

Companies where asked
ИП Ганус Александр Андреевич

Answer from AI

sobes.tech AI

Кодировка — это способ представления символов в виде байтов для хранения и передачи текста. Разные кодировки используют разные схемы соответствия символов и байтов.

Основные различия между кодировками:

  • Набор символов: какие символы поддерживаются (например, только латиница или весь Юникод).
  • Количество байтов на символ: фиксированное или переменное.
  • Совместимость с другими кодировками.

Примеры:

  • ASCII — 7-битная кодировка, поддерживает только английские буквы, цифры и базовые символы.
  • UTF-8 — переменная длина (1-4 байта), поддерживает все символы Юникода, широко используется в интернете.
  • UTF-16 — 2 или 4 байта на символ, тоже покрывает весь Юникод.
  • Windows-1251 — однобайтовая кодировка для кириллицы, часто использовалась в Windows.

Разница важна, чтобы правильно интерпретировать текст, избежать искажений и ошибок при обмене данными.

Пример: символ 'А' в разных кодировках

  • ASCII/UTF-8: 0x41
  • Windows-1251: 0xC0

Если программа ожидает UTF-8, а получает Windows-1251, символы будут отображаться некорректно.