encyklopedia.space

ISO‑8859‑5

ISO‑8859‑5 (znany także jako Latin/Cyrillic) jest jedną z części serii standardów ISO/IEC 8859 opracowaną w latach 1990‑1995. Standard definiuje jednobajtowy zestaw znaków przeznaczony do kodowania tekstów w językach używających cyrylicy, w szczególności w Rosji, Ukrainie, Białorusi, Bułgarii, Serbii oraz w kilku innych krajach Europy Wschodniej i Azji Środkowej.

Historia i opracowanie

W odpowiedzi na rosnące zapotrzebowanie na jednolite zestawy znaków w regionie, w 1995 roku podjęto prace nad rozszerzeniem serii ISO‑8859, które do tej pory obejmowały jedynie zestawy oparte na alfabecie łacińskim. Projekt ISO‑8859‑5 został przyjęty przez ISO w grudniu 1999 i opublikowany jako część serii ISO‑8859‑1‑ISO‑8859‑16.

Zakres znaków

Podobnie jak pozostałe części serii, ISO‑8859‑5 jest kodowaniem jednobajtowym, co oznacza, że każdy znak jest reprezentowany przez jeden bajt (8 bitów). Pierwsze 128 kodów (00‑7F) pokrywa się z ASCII, a pozostałe 128 kodów (80‑FF) zawiera znaki cyrylicy oraz dodatkowe symbole interpunkcyjne, cyfry i litery diakrytyczne.

Hex Unicode Symbol Opis
80U+0402ЂCyrylica, duże „dje” (serb.)
81U+0403ЃCyrylica, duże „gje” (macedońskie)
82U+0404ЄCyrylica, duże „je” (ukraińskie)
83U+0405ЅCyrylica, duże „dze” (macedońskie)
84U+0406ІCyrylica, duże „i” (ukraińskie)
85U+0407ЇCyrylica, duże „ji” (ukraińskie)
86U+0408ЊCyrylica, duże „nje” (serb.-chorwackie)
87U+0409ЉCyrylica, duże „lje” (serb.-chorwackie)
88U+040AЊCyrylica, duże „nj” (macedońskie)
89U+040BЋCyrylica, duże „ć” (serbskie)
8AU+040CЌCyrylica, duże „k’’” (macedońskie)
8BU+040EЎCyrylica, duże „u” (białoruskie)
8CU+040FЏCyrylica, duże „dz” (serb.-chorwackie)
8DU+0410АCyrylica, duże „A”
8EU+0411БCyrylica, duże „B”
............
F9U+0459љCyrylica, małe „lje”
FAU+045AњCyrylica, małe „nj”
FBU+045BћCyrylica, małe „ć”
FCU+045CќCyrylica, małe „k’’”
FDU+00A7§Znak paragrafu
FEU+045EўCyrylica, małe „u” (białoruskie)
FFU+045FџCyrylica, małe „dz”

Porównanie z innymi kodowaniami

  • ISO‑8859‑1 – przeznaczony dla języków zachodnioeuropejskich, używa alfabetu łacińskiego.
  • KOI8‑R – popularny w Rosji kodowanie cyrylicy, różni się rozmieszczeniem znaków.
  • Windows‑1251 – kodowanie stosowane w systemach Microsoft, zawiera dodatkowe znaki dla języka bułgarskiego.
  • Unicode – unifikowany wieloznakowy standard, w tym UTF‑8, który obejmuje wszystkie znaki ISO‑8859‑5 oraz wiele innych.

Użycie i wsparcie

ISO‑8859‑5 był szeroko stosowany w latach 1990‑2000 w dokumentacji technicznej, bazach danych i systemach operacyjnych, zwłaszcza w aplikacjach biurowych i przy wymianie e‑maili w krajach byłego Związku Radzieckiego. Z czasem został stopniowo wypierany przez Unicode, a w szczególności przez UTF‑8, ze względu na możliwość kodowania wszystkich języków w jednym zestawie.

Kompatybilność i konwersja

Większość nowoczesnych środowisk programistycznych (np. Python, Java, C#) udostępnia wbudowane funkcje do konwersji między ISO‑8859‑5 a Unicode. Przykładowo, w Pythonie można dokonać konwersji tak:

bytes_iso = b'\xd0\xcf'      # ciąg w ISO‑8859‑5
unicode_str = bytes_iso.decode('iso-8859-5')
print(unicode_str)           # wyświetli „Р” (cyrylica „R”)

Patenty i dostępność

Standard ISO‑8859‑5 jest publikowany w ramach ISO i jest dostępny w domenie publicznej. Nie istnieją ograniczenia patentowe, co ułatwia jego implementację w darmowym oprogramowaniu.

Powiązane artykuły

Standard ISO‑8859‑5 pozostaje ważnym elementem historii kodowania znaków, ilustrującym przejście od jednorodnych, językowo ograniczonych zestawów znaków do wszechstronnych rozwiązań opartych na Unicode.