関連キーワード
文字コード、国際化、多言語化普及の進む世界統一コード
●【Unicodeの働き】 世界中の文字を統一的な枠組みで扱うという理念で策定された文字コード。 |
我々は普段何気なくパソコンで文字を読んだり書いたりしているが、実際にはパソコンはそのまま文字を扱えるわけではない。というのもコンピュータは「0」と「1」の値(ビット)だけで構成される2進数の世界であり、文字を扱うにはそれをビットに置き換える必要があるからだ。このとき、どうやって文字をビットに変換するかというルールを定義したのが「文字コード」だ。OSやアプリケーションといったソフトウェアは、文字を記録、あるいは表示するとき、文字コードのルールに従ってビットと文字を相互に変換している。このようにコンピュータで文字を扱うには、文字コードは必須の存在である。
問題はここからだ。Windowsでは「Shift_JIS」、UNIXでは「EUC-JP」が一般的に使われているなど、環境によって利用している文字コードが異なることがあり、場合によっては我々が正しく読める文字に変換されないことがある。これがいわゆる「文字化け」と呼ばれているものだ。例えばShift_JISで文字からビットに置き換え、そのビット列をEUC-JPで文字に逆変換しようとしても正しい文字に変換されないというわけだ。文字コードは日本だけでも何種類もあり、全世界で考えると数百にもなる。それだけ文字コードの違いによる問題は深刻になっている。ビジネスのグローバル化が進む中、ソフトウェアやハードウェアをいちいち言語ごとに修正しなければならないことの不経済も大きな問題だ。
そこで出てきたのが「全世界共通で使える文字コードを制定しましょう」という考え方。世界中で使われているすべての文字を扱える文字コードを作れば、ソフトウェアはその文字コードに対応しさえすれば文字コード問題に頭を悩ませる必要はなくなる。こうして登場したのが「Unicode」だ。Unicode自体は米企業を中心に構成された「Unicodeコンソーシアム」で制定されたものだが、ISO(国際標準化機構)とIEC(国際電気標準会議)により「ISO/IEC-10646-1」として標準化が行われ、日本においても「JIS X 0221」として規格化されている。
当初はUnicodeで扱える文字数が数万字と少なく、このため中国と韓国、そして日本のそれぞれの漢字で、意味や構造が似ているものを統合するという作業が行われたことに対して批判もあった。しかしUnicodeでは改訂を行って割り当てられる文字数を大幅に増やし、問題は解消する方向に向かっている。
現在ではWindowsやUNIX系OS、Mac OSなど多くのOSでサポートされるようになり、またアプリケーションレベルでもWebブラウザやメールソフトなどで扱える。XMLやJavaといった新しいテクノロジーでも、Unicodeを前提に設計されている。現状ではUnicode以前の文字コードも使われているため文字化け問題は残っているが、今後Unicodeの普及が進むことでWebサイトを開くと意味不明の文字が並んでいて読めない、といったことは少なくなるだろう。