本記事は、アーカイブに保存されている過去の記事です。最新の情報は、公益社団法人日本印刷技術協会(JAGAT)サイトをご確認ください。
文字(character-set)コードは文字パターンに付けられた符号のことで、その種類にはJIS(Japan Industrial Standard:日本工業規格)コード・シフトJIS コード・区点コード・EUC・Unicode(ユニコード)等がある。コンピュータで文字を扱うには、とくにJIS コードとUnicode に加えてAdobe-Japan の文字セットが重要である。
まず、英語などで用いるラテン・アルファベット(ローマ字)の大文字と小文字、アラビア数字およびピリオドとコンマなどの句読符号や引用符などの一部は、表1 の通り7 ビットまたは8 ビットのコードになる。
コンピューターでデータを扱う最小単位としてビット(bit)がある。1bit は2 進数で0 または1 のいずれかの2 通り(2 の1 乗)であり、表1 ではb1〜b7 までの7 桁が7bit(2 の7 乗)を表し、128 のマス目がある。この部分はASCII(American Standard Code for Information Interchange:アスキー)コードと呼ばれ、1963 年ANSI(米国規格協会)により制定された情報交換用米国標準コードである。
【表1】
表1 ではこの7bit に1bit を加えたb1〜b8 が8bit(2の8 乗)コードで、全体が256 のマス目になる。ここでは半角カタカナが割り当てられているが、この範囲は8bit のコンピューター時代の取り決めであり、また各国で異なるため、現在では一般には使われていない(文字化けの原因になる)。
また情報量の単位としてByte(バイト)がある。Byte という用語は、場合によっては8bit 以外のもの(7bit など)を指すこともあったため、混乱を避けるために、正確に8bit を表わすために、octet という用語が用いられる。1octet は8bit であり情報量としては1Byte である。
1Byte は8bit(2 の8 乗)であり256 通りの文字が扱えるが、日本語のひらがな・カタカナ(全角)・漢字・記号等を扱うとなるとこれでは足りない。そのため2Byte(2 の16 乗)で65,536 通りの文字を区別できるようにした。
これがC6226(Cは電気の分野でその後X の情報に変更された)としてJISが1978 年に「情報交換用漢字符号系」と称して文字のJIS コードを定めた。その後改正が行われ現在ではJIS X 0208:1997 の「7 ビット及び8 ビットの2 バイト情報交換用符号化漢字集合」が最新版である。
一方で、JIS コードは符号の一部がASCII コードと重複している部分があり、移動された。これがシフトJIS コードであり、実際のコンピューター内部ではこのシフトJIS コードで動作している。登録されている漢字の数は6,355 字で、文字を扱う業界ではこれでは足りず、大幅に増やしたものが新しい規格のJIS X0213:2004 で「7 ビット及び8 ビットの2 バイト情報交換用符号化拡張漢字集合」である。
JIS X 0208 が第1・第2 水準漢字、JIS X 0213 はこれに第3・第4 水準が加わり、漢字の数は11,233字となった。
しかし、インターネット時代にコンピューターはグローバルな情報交換が一般化し、文字化けの問題を回避するために世界的な文字コードが必要になりUnicode が採用されるようになった。国際規格はISO/IEC(ISO:国際標準化機構とIEC:国際電気標準会議)10646:2003 であり、これに対応した日本の規格がJIS X 0221-1:2001 である。
一方Unicode でも対し切れない漢字がある。これが異体字であり、この問題を解決したものがAdobe-Japanの文字セットである。現在Adobe-Japan 1-6が23,058 字に重複しないCID(character-ID)値を割り振り、異体字切り替え機能で対応できる。
(『JAGAT info』2012年9月号より)