Sobes.tech
Назад к вопросам
Senior
5

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

Компании, где спрашивали
ИП Ганус Александр Андреевич

Ответ от нейросети

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, символы будут отображаться некорректно.