Кодировка и набор символов для iso-8859-1

Я прочитал статью Джоэла о кодировках. Как я понимаю в случае Unicode:

  1. Юникод - это набор символов - отображение между целочисленным значением и символом
  2. utf-8 - это кодировка, которая используется для целых чисел Юникода, чтобы представить их в двоичном представлении

Что насчет iso-8859-1? Это кодировка или набор символов или оба?

2 ответа

Решение

Что насчет iso-8859-1? Это кодировка или набор символов или оба?

Исторически он был описан как набор кодированных символов: он определял как набор символов, так и отображение этих символов в байтовые значения - то, что мы сегодня называем кодировкой, но это не было явно описано в этих терминах.

Когда был создан Unicode, он был разработан, чтобы охватить (почти) все символы в широко используемых наборах символов, и, следовательно, он преобразовал поток байтов, определенный набором кодированных символов ISO-8859-1, в кодировку более широкого универсального набора символов.

Поэтому, если вы работаете в современной среде Unicode, вы можете считать ISO-8859-1 кодировкой. Но нельзя сказать, что это неправильно, считать его также набором символов.

(Существуют и другие кодировки, которые определенно не являются наборами символов: например, UTF и многобайтовые кодировки, такие как Shift-JIS, который сам был определен как кодировка для набора символов JIS X 0208 до расширения и кодирования Unicode.)

ISO 8859-1 (Latin-1) является однобайтовой кодировкой. Он представляет первые 256 символов Юникода. Таким образом, пока это подмножество набора символов Unicode, я полагаю, что его можно рассматривать как кодировку и набор символов.

Другие вопросы по тегам