コンピュータが文字を処理するための標準規格であるISO/IEC 8859は、かつて世界中で広く利用されていた8ビット文字エンコーディングの体系です。この規格は、基本的な英語文字を定義したASCII(アスキー)を拡張し、ヨーロッパ各国の言語やその他の地域の文字を表現できるように設計されました。
現代では、ほぼすべての文字を単一の体系で扱えるUnicode(ユニコード)への移行が進んでいますが、レガシーシステムや特定の通信プロトコルにおいては、依然としてこの規格の知識が不可欠です。
Key Facts
- ASCIIの拡張版:7ビットのASCIIをベースに、上位1ビットを利用して最大256文字を定義する8ビット形式を採用しています。
- 地域別パート構成:言語圏ごとに「パート」として分割されており、用途に合わせて適切なセットを選択する仕組みです。
- Unicodeへの橋渡し:後のISO/IEC 10646(Unicode)の基礎となり、現代の文字コード体系への進化を促しました。
- ECMAとの連携:多くのパートがECMA Internationalの標準(ECMA-94など)と密接に関連して策定されました。
ISO/IEC 8859の体系と各パートの詳細
ISO/IEC 8859は、単一の巨大な表ではなく、地域や言語グループごとに分かれた複数のパートで構成されています。これにより、限られた8ビット(256通り)の容量の中で、効率的に各言語の特殊文字を割り当てることが可能となりました。
主要なパートとその役割
最も普及したのは「Part 1 (Latin-1)」であり、西欧諸国で広く利用されました。その後、中欧、南欧、北欧、さらにはキリル文字やアラビア文字、ギリシャ文字、ヘブライ文字、タイ文字などをカバーするパートが順次追加されました。
特筆すべき点として、ISO/IEC 8859-1の不足分(ユーロ記号など)を補うために、後にISO/IEC 8859-15が策定された経緯があります。また、一部のパート(Part 12など)は提案されたものの、最終的に承認されなかったケースも存在します。
| パート | 名称・対象地域 | 主な特徴・関連規格 |
|---|---|---|
| Part 1 | 西欧 (Latin-1) | 最も一般的。DEC MCSをベースに策定。 |
| Part 2 | 中欧 (Latin-2) | 中欧諸国の言語をサポート。 |
| Part 5 | ラテン/キリル | キリル文字を包含。ECMA-113に関連。 |
| Part 6 | ラテン/アラビア | アラビア文字を包含。ASMO 708に関連。 |
| Part 7 | ラテン/ギリシャ | ギリシャ文字を包含。ELOT 928に関連。 |
| Part 11 | ラテン/タイ | タイ文字を包含。TIS-620に基づいた策定。 |
| Part 15 | ラテン-9 | Latin-1の改訂版。ユーロ記号などを追加。 |
技術的構造と文字の割り当て
この規格の最大の特徴は、0から127までの範囲をASCIIと完全に一致させ、160から255までの範囲に各言語固有の文字を割り当てている点です。これにより、英語ベースのシステムとの互換性を維持しつつ、特殊文字を導入できました。
例えば、16進数で「A0」は「不破スペース(NBSP)」として定義されており、多くのパートで共通して利用されています。一方で、同じコードポイントであっても、選択するパート(Latin-1かLatin-2かなど)によって表示される文字が異なるため、エンコーディングの指定を誤ると「文字化け」が発生します。
Unicodeへの移行と現在の立ち位置
ISO/IEC 8859のような「地域別コードページ」方式には、複数の言語を同時に一つの文書で扱うことが困難であるという根本的な限界がありました。この問題を解決するために登場したのが、世界中の文字を一つの空間に統合するISO/IEC 10646 (Unicode)です。
現在では、UTF-8などのUnicodeエンコーディングが標準となっており、ISO/IEC 8859は歴史的な役割を終えつつあります。しかし、古いデータベースの移行や、メモリ制限の厳しい組み込みシステムなどでは、今なおそのシンプルな構造が利用される場面があります。
Frequently Asked Questions
ISO/IEC 8859とASCIIは何が違うのですか?
ASCIIは7ビットで128文字までしか表現できませんが、ISO/IEC 8859はそれを8ビットに拡張し、最大256文字まで扱えるようにしたものです。最初の128文字はASCIIと共通しており、後半の128文字に各地域の特殊文字が割り当てられています。
なぜ複数の「パート」に分かれているのですか?
8ビットという制限があるため、世界中のすべての文字を一つの表に収めることができなかったからです。そのため、西欧用、中欧用、キリル文字用というように、地域ごとに異なる文字セット(パート)を用意して使い分ける設計になりました。
ISO/IEC 8859-1と8859-15の違いは何ですか?
ISO/IEC 8859-15は、8859-1の更新版です。主な変更点は、通貨記号の「€(ユーロ記号)」や、一部の不足していた文字(大文字のŸなど)が追加されたことです。
現代のウェブサイトでこの規格は使われていますか?
ほとんどの現代的なウェブサイトではUnicode(特にUTF-8)が使用されています。しかし、非常に古いウェブページや、特定のレガシーなメールシステムなどでは、依然としてISO-8859-1などが指定されていることがあります。
文字化けが起こる理由はこの規格に関係していますか?
はい、深く関係しています。例えば、ISO/IEC 8859-1で書かれたファイルをISO/IEC 8859-5(キリル文字)として読み込むと、同じコード番号でも異なる文字が割り当てられているため、意図しない文字が表示される「文字化け」が発生します。
References
- Missing several accented vowels including and ǿ. These can be replaced with non-accented vowels at the cost of increased ambiguity.
- The ISO 8859 encodings treat as a digraph. Some other encodings treat it as a letter.
- Missing characters are in ISO/IEC 8859-15.
- The 1985 edition includes only a version of ISO-8859-1.
- The 1986 edition defines , which is an entirely different encoding.
- 8859-5 misses the letter, which was reintroduced into the in 1990.
- Published 1995, registered 1996.