【じすこーど】

JISコード とは?

最終更新:
💡 文字の規格と、送り方を分けて理解する

JISに基づく日本語の文字コードを指す言葉。メールなどで「JIS」と呼ぶ場合はISO-2022-JPを指すことがあるが、文字集合の規格とデータの符号化方式は区別する。

📌 このページのポイント
ISO-2022-JP:文字集合を切り替えるJISの文字規格と、符号化方式は区別ASCIIの区間HelloESC $ BJIS X 0208へJIS X 0208の区間あ → 24 22ESC ( BASCIIへ戻すESC は制御文字 1B数値は16進数
ISO-2022-JPの一部を示す例。切り替えの指示と、文字を表すバイトを区別する。
ひよこ ひよこ
JISコードは、ISO-2022-JPの正式名称?
ペンギン先生 ペンギン先生
同じものと決めつけない方がいいよ。JIS X 0208のような文字集合の規格と、その文字をバイト列にする符号化方式を区別しよう。メールやソフトの設定で「JIS」と書かれていると、ISO-2022-JPを意味することがあるんだ。
ひよこ ひよこ
日本語をどうやって送るの?
ペンギン先生 ペンギン先生
ISO-2022-JPは、ASCIIやJISの文字集合をエスケープシーケンスで切り替えるよ。RFC 1468では7ビットの形で表せる方式として説明している。同じバイトの並びでも、どの文字集合を選んでいるかが重要なんだ。
ひよこ ひよこ
エスケープシーケンスの例を見たい!
ペンギン先生 ペンギン先生
ESC $ Bという3バイトは、JIS X 0208-1983へ切り替える例。ESC ( BはASCIIへ戻す例だよ。ESCは画面にE・S・Cと書くのではなく、16進数で1Bの制御文字。JIS X 0208の区間では一つの文字を2バイトで表すんだ。
ひよこ ひよこ
Shift_JISやUTF-8も、同じ?
ペンギン先生 ペンギン先生
同じ日本語を表せても、バイト列は違うよ。Shift_JISはISO-2022-JPと同じ切り替え方式ではなく、UTF-8はUnicodeを符号化する方式だね。「あ」という見た目だけでは、保存や通信に使った方式は分からないんだ。
ひよこ ひよこ
文字化けしたら、何を確認する?
ペンギン先生 ペンギン先生
送る側と読む側の符号化方式、Content-Typeのcharsetやファイルの仕様を確認しよう。ISO-2022-JPなら切り替えの制御文字もデータの一部だよ。まず元データを残し、方式を確認してから変換すると、何度も上書きして情報を失うのを避けやすいね。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「JISコード」って出てきたら「JISに基づく日本語の文字コード。メールではISO-2022-JPを指すこともある」と思えばだいたいOK!
📖 おまけ:英語の意味
「JIS code」 = JISに基づく文字コード
💬 JISは日本の規格。2019年7月から日本語の名称は「日本工業規格」ではなく「日本産業規格」になったよ。文字コード以外にも、さまざまな対象の規格がある。

参考資料

← 用語集にもどる