Открыть сервис

ISO 8859-1

ISO 8859-1 (также известная как Latin-1) — это стандартная 8-битная кодировка символов, разработанная Международной организацией по стандартизации (ISO) как часть семейства стандартов ISO 8859. Она предназначена для представления текстов на языках Западной Европы, включая английский, французский, немецкий, испанский, итальянский, португальский и другие, а также на некоторых других языках, использующих латинский алфавит. Кодировка включает 191 символ из латинского алфавита, дополненный диакритическими знаками (умляуты, акуты, грависы, седили и другие), а также знаки препинания, математические символы и буквы, отсутствующие в базовом ASCII. ISO 8859-1 является одной из наиболее распространённых однобайтовых кодировок в истории компьютерных систем, особенно в вебе, хотя в настоящее время она активно вытесняется стандартом Unicode (UTF-8).

История

Разработка стандарта ISO 8859-1 началась в середине 1980-х годов в рамках усилий по унификации кодировок для различных языков, использующих латиницу. До этого существовало множество проприетарных кодировок, таких как CP437 (IBM PC) и Windows-1252 (Microsoft), которые были несовместимы между собой. В 1986 году Международная организация по стандартизации (ISO) совместно с Международной электротехнической комиссией (IEC) опубликовала первую версию стандарта ISO 8859-1 как часть многочастного стандарта ISO 8859, охватывающего разные алфавиты (часть 1 — западноевропейские языки, часть 2 — восточноевропейские и т. д.).

Стандарт был широко принят в операционных системах Unix и Linux, а также в протоколах передачи данных, таких как HTTP (где он стал кодировкой по умолчанию до внедрения UTF-8). В 1990-х годах ISO 8859-1 стала основной кодировкой для веб-страниц, особенно в Европе, благодаря поддержке в браузерах и серверах. Однако с ростом глобализации интернета и необходимостью поддержки языков за пределами Западной Европы (например, кириллицы, арабского, китайского) возникла потребность в более универсальном решении. В 2000-х годах Unicode, в частности UTF-8, начал вытеснять ISO 8859-1, и к 2020-м годам доля веб-сайтов, использующих Latin-1, снизилась до нескольких процентов.

Структура и кодировка

ISO 8859-1 является однобайтовой кодировкой, то есть каждый символ кодируется одним байтом (8 бит), что позволяет представить до 256 символов. Из них первые 128 символов (коды 0–127) полностью соответствуют стандарту ASCII (American Standard Code for Information Interchange), включая латинские буквы без диакритики, цифры, знаки препинания и управляющие символы. Следующие 128 символов (коды 128–255) содержат дополнительные символы, специфичные для западноевропейских языков.

Диапазоны символов

Отличия от Windows-1252

Наиболее известная проприетарная кодировка Windows-1252 (также называемая ANSI) отличается от ISO 8859-1 в диапазоне кодов 128–159. В ISO 8859-1 эти коды зарезервированы для управляющих символов C1, тогда как в Windows-1252 они заняты печатаемыми символами, такими как кавычки, тире, знак евро (€) и другие. Это привело к путанице: многие программы и веб-браузеры исторически интерпретировали ISO 8859-1 как Windows-1252, что делало их практически взаимозаменяемыми для практических целей.

Применение

ISO 8859-1 широко использовалась в следующих областях:

Ограничения

Основные недостатки ISO 8859-1:

Связь с Unicode

ISO 8859-1 полностью включена в стандарт Unicode как первые 256 кодовых точек (U+0000–U+00FF). Это означает, что любой символ из Latin-1 имеет тот же номер в Unicode, что и в ISO 8859-1. Однако Unicode расширяет эту кодировку до 1 114 112 кодовых точек, что позволяет представлять символы всех письменностей мира. В частности, UTF-8, наиболее распространённая реализация Unicode, обратно совместима с ASCII, но не с ISO 8859-1 в целом (символы с кодами 128–255 кодируются в UTF-8 двумя байтами).

Современное состояние

Начиная с 2010-х годов использование ISO 8859-1 в вебе резко сократилось. По данным статистики W3Techs (на 2024 год), менее 1% всех веб-сайтов используют Latin-1, в то время как более 98% перешли на UTF-8. Тем не менее, кодировка продолжает применяться в устаревших системах, старых документах и некоторых протоколах, где требуется минимальная совместимость с ASCII. В России ISO 8859-1 практически не использовалась из-за распространённости кириллических кодировок (KOI8-R, Windows-1251), но могла встречаться в международных проектах или при обмене данными с западными партнёрами.

Интересные факты

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →