FE EXAM

JISコード(日本語の文字コード体系)

日本工業規格が定めた日本語の文字コード体系

DIAGRAM
JIS X 0201(1バイト)JIS X 0208(2バイト)
JISコードの文字集合と対応バイトJIS X 02011バイト(8ビット)= 256文字までラテン文字集合(ローマ字・数字・記号)0x20〜0x7E:ほぼ ASCII と同じ例: A=0x41, 0=0x30, !=0x21片仮名集合(半角カタカナ)0xA1〜0xDF:半角の ア イ ウ ...8ビット目を使う領域に配置バイト構造(1バイト = 1文字)1バイトA → 0x41英数字・記号・半角カナだけを少ない容量で扱える(漢字は不可)JIS X 02082バイト = 約6,800字(漢字を収録)非漢字(ひらがな・カタカナ・記号)あ い う … ア イ ウ … + 各種記号区点コードで位置を指定漢字(第1水準・第2水準)第1水準=使用頻度の高い漢字(音読み順)第2水準=それ以外の漢字(部首順)バイト構造(2バイト = 1文字)第1バイト第2バイト2バイトを組み合わせて1文字を表すので数千の漢字を収録できるJISコード = 1バイト系(X 0201)と 2バイト系(X 0208)を組み合わせた日本語の文字コード体系
解説

📌
JISコードとは

日本語を扱うための国家規格JIS(日本工業規格)文字に番号を割り当てる決まりあ・漢字・カタカナを数値で表せる

JISコードとは、日本工業規格(JIS=Japanese Industrial Standards)が定めた、日本語の文字に番号(コード)を割り当てる決まりです。ASCIIが英数字だけを対象にしているのに対し、JISコードはひらがな・カタカナ・漢字を含む日本語を扱えるように作られました。

身近な例で言うと、国が決めた「漢字の背番号一覧」のようなものです。日本中のコンピュータが同じ番号で同じ漢字を指せるよう、国の規格として番号付けのルールを統一しました。これにより、ある会社が作った日本語の文書を別のメーカーのパソコンでも正しく表示できます。

JISコードは主に2つの規格から成り立っています。
JIS X 0201:英数字・記号・半角カタカナを1バイトで表す
JIS X 0208:ひらがな・カタカナ・漢字を2バイトで表す
上の図解は、この2つがそれぞれどんな文字を担当するかをまとめたものです。

⚖️
JIS X 0201/0208の違い

JISコードの中心となる2つの規格は「1文字に何バイト使うか」「どんな文字を担当するか」で役割が分かれています。

JIS X 0201JIS X 0208
1文字のバイト数1バイト2バイト
扱える文字数約256文字約6,800文字
対象の文字英数字・記号・半角カナかな・漢字・全角記号
漢字扱えない第1・第2水準を収録

JIS X 0201は1バイト(8ビット=256通り)しか使わないため漢字は扱えませんが、半角カタカナを含むので少ない容量で日本語の音を表せます。一方JIS X 0208は2バイトを組み合わせ、漢字を以下のように整理して収録しています。
第1水準漢字:日常的によく使う約3,000字(音読みの五十音順に並ぶ)
第2水準漢字:それ以外の約3,400字(部首・画数順に並ぶ)
非漢字:ひらがな・カタカナ・各種記号・ギリシャ文字など

JIS X 0208では文字の位置を「区点コード」=区(行)と点(列)の番号で指定します。区点番号を一定のルールでバイト値に変換したものがJISコードです。「0201=1バイト、0208=2バイトで漢字対応」という対応関係を押さえておくとよいでしょう。

📨
用途(電子メール等)

メールは7ビットの通り道だけを使う日本語文ISO-2022-JP7ビットに変換8ビット目が落ちても壊れないよう設計

JISコードを実際の通信や保存で使うときの代表的な形式が「ISO-2022-JP」と呼ばれるエンコーディングで、特に電子メールの日本語で広く使われてきました。一般に「JISコード(メール用)」と言うとこの方式を指すことが多いです。

電子メールでJISコードが選ばれた理由は「7ビットしか通さない古い通信経路でも安全に届くから」です。昔のメールの仕組みは1バイトのうち7ビット分(0〜127)しか確実に届かない前提でした。ISO-2022-JPは8ビット目を使わずに日本語を表すよう工夫されており、途中で8ビット目が落とされても文字が壊れにくいのです。

このとき重要なのが「エスケープシーケンス」=特殊な切り替え記号です。
英数字モードと漢字モードを切り替える合図を文中に埋め込む
・受け取った側はその合図を見て「ここから先は2バイトの漢字」と判断する
・1バイト文字と2バイト文字を、同じ7ビットの通り道で混在させられる

身近な例で言うと、会話の途中で「ここから英語ね」「ここから日本語ね」と言葉を切り替えるのに似ています。現在はメールでもUTF-8が主流になりましたが、「JISコード(ISO-2022-JP)=メール用・7ビット・エスケープで切り替え」という性質を覚えておくとよいでしょう。

関連コンテンツ