ISO/IEC 8859‑9
ISO/IEC 8859‑9 – standard kodowania znaków z rodziny ISO/IEC 8859, znany również jako Latin 5 lub Turkish 8‑bit. Został opracowany w celu zapewnienia pełnej obsługi języka tureckiego w systemach komputerowych, które wcześniej korzystały z wersji ISO/IEC 8859‑1 (Latin 1) nieprawidłowo mapującej niektóre znaki diakrytyczne.
Historia i opracowanie
Standard został przyjęty w 1999 roku przez ISO oraz IEC. Jego powstanie było odpowiedzią na rosnące zapotrzebowanie na poprawne kodowanie znaków w Turcji, gdzie popularność systemów wykorzystujących Latin 1 powodowała problemy przy wyświetlaniu liter ğ, ş, İ, ı oraz innych specyficznych dla języka tureckiego.
Budowa i charakterystyka
ISO/IEC 8859‑9 jest jednowyrazowym kodowaniem 8‑bitowym, które wykorzystuje 256 kodów (0‑255). Główną zmianą względem ISO/IEC 8859‑1 jest zamiana kilku znaków nieużywanych w języku tureckim na te niezbędne:
- 0xD0 –
Ğ(duża litera G z kreską) – zastępuje znakÐ(dal) z 8859‑1. - 0xDD –
İ(duża litera I z kropką) – zastępuje znakÝ(Y z akcentem). - 0xDE –
Ş(duża litera S z cedillą) – zastępuje znakÞ(thorn). - 0xF0 –
ğ(mała litera g z kreską) – zastępuje znakð(dal). - 0xFD –
ı(mała litera i bez kropki) – zastępuje znaký(y z akcentem). - 0xFE –
ş(mała litera s z cedillą) – zastępuje znakþ(thorn).
Pozostała część kodowej tabeli (0‑127) jest identyczna z ASCII, a zakres 128‑255 jest zgodny z ISO/IEC 8859‑1, z wyżej wymienionymi zamianami.
Zastosowanie
ISO/IEC 8859‑9 był szeroko stosowany w następujących obszarach:
- Systemy operacyjne i aplikacje biurowe w Turcji w latach 2000‑2000‑2010.
- Strony internetowe i serwery pocztowe, które w tym okresie używały HTTP i nie obsługiwały jeszcze Unicode.
- Urządzenia wbudowane, takie jak drukarki etykiet i terminale POS, które wymagały lekkości 8‑bitowego kodowania.
Od 2008 roku większość nowych projektów przeszła na Unicode (UTF‑8), co spowodowało stopniowe wycofywanie ISO/IEC 8859‑9.
Porównanie z innymi kodowaniami
| Standard | Rok przyjęcia | Obsługa języków | Główna różnica względem 8859‑9 |
|---|---|---|---|
| ISO/IEC 8859‑1 | 1987 | Języki zachodnioeuropejskie | Brak znaków tureckich (ğ, ş, İ, ı) |
| ISO/IEC 8859‑15 | 1999 | Języki zachodnioeuropejskie + euro | Dodano znak euro, zamieniono kilka znaków, ale nie tureckie |
| Unicode (UTF‑8) | 1993 | Wszystkie języki świata | Zmienne długości bajtów, pełna kompatybilność |
Implementacje i wsparcie
Standard jest obsługiwany przez większość współczesnych bibliotek programistycznych:
- Python: kodowanie
iso-8859-9. - Java:
ISO-8859-9w klasiejava.nio.charset.Charset. - Microsoft Windows: strona kodowa 28599.
- Linux: alias
latin5.
Patrz także
Artykuł opracowany na podstawie dokumentacji ISO oraz publikacji technicznych z lat 1999‑2020.