本文へスキップ

符号化と文字コード

標準約 31 分4 用語過去問 5 題

この単元の目標

  • 符号化 と 復号 の関係を説明し、区別したい種類の数から必要な ビット数 を求められる。
  • JISコード と シフトJISコード を、1 バイト文字と 2 バイト文字の混ぜ方で区別できる。
  • Unicode を、扱う文字の範囲と符号化方式の考え方で説明できる。
用語総表(4 語)
用語ひとことで対象とする情報・文字1 文字の大きさ
符号化情報を決められた規則で符号に対応づけること文字・音・画像など情報全般規則による (n ビットで 2 の n 乗通り)
JISコード日本産業規格が定めた日本語の文字コード日本語の文字と英数字英数字は 1 バイト、漢字などは 2 バイト
シフトJISコード2 バイト文字の番号をずらして 1 バイト文字と共存させた文字コード日本語の文字と英数字英数字や半角カナは 1 バイト、漢字などは 2 バイト
Unicode世界の多くの言語の文字を 1 つの番号体系にまとめた文字コード世界の多くの言語の文字符号化方式による (UTF-8 は 1〜4 バイト)

用語

符号化 とは、文字・音・画像などの情報を、決められた規則に従って ビット列 などの符号に対応づけることである。

文字や情報

符号化(エンコード)

ビット列(0と1)

復号(デコード)

対応の規則 (コード体系) を送り手と受け手が共有していれば、符号を元の情報へ戻す 復号 ができ、規則が食い違うと文字化けなどが起こる。n ビット の符号では 2 の n 乗通りを区別できるので、表したい種類の数から必要なビット数が決まる。符号の長さには、すべての対象で同じにする 固定長 と、対象ごとに変える 可変長 がある。

たとえ灯台の光の点滅パターンに、あらかじめ意味を割り当てておくようなもの。同じ対応表を持つ船だけが、点滅から意味を読み取れる。

覚え方「符号」は合図の記号、「化」はそれに変えること。逆向きの「復号」は、符号から元に「復(もど)す」と読む。

出題のポイント

  • 出題n ビットで区別できるのは 2 の n 乗通りで、表したい種類の数をまかなえる最小の n が必要なビット数になる。例えば 10 種類なら 3 ビットの 8 通りでは足りず、4 ビットが要る。
  • 出題1 回の標本を表すビット数を増やすと、区別できる段階の数が増え、振幅の変化を細かい刻みで表せる。
  • 出題可変長の符号でも、どの符号も別の符号の先頭部分にならなければ、区切りのない列を先頭から一意に読み戻せる。1 の桁が重ならない符号を割り当てると、組合せを加算、除去を減算で表せる。

この用語の過去問 3 題 符号化

JISコード は、日本産業規格 (JIS) が定めた文字コードで、英数字などを 1 バイト、漢字やひらがな・全角カナを 2 バイトで表す。

文字の集合の規格 (例)主な文字1 文字の大きさ
JIS X 0201英数字・記号・半角カナ1 バイト (8 ビット)
JIS X 0208漢字・ひらがな・全角カナ2 バイト (16 ビット)

1 バイトで表す文字を 1 バイトコード、2 バイトで表す文字を 2 バイトコード と呼び、例えば英数字の集合は JIS X 0201、漢字などの集合は JIS X 0208 に定められている。狭い意味の JISコード は、1 つの文字列の中で 1 バイト文字と 2 バイト文字を切り替えるとき、切替えを示す特別な符号を挟む形式を指し、主に電子メールで使われてきた。

たとえ国が配る共通の文字の番号表のようなもの。同じ番号表を使う機器どうしなら、同じ番号で同じ文字を指せる。

覚え方JIS は Japanese Industrial Standards の頭文字で、日本の工業製品の規格と同じ名前の仲間。

出題のポイント

  • 出題JIS の文字コードでは、英数字などは 1 文字 1 バイト (8 ビット)、漢字などは 1 文字 2 バイトで表す。1 バイトの英数字には、例えば JIS X 0201 で 8 ビットの値が割り当てられている。
  • 出題圧縮しない文字データの容量は、項目ごとに文字数と 1 文字のバイト数を掛けて合計し、件数を掛けて求める。2 バイト文字は同じ文字数の 1 バイト文字の 2 倍の領域を使う。

この用語の過去問 1 題 JISコード

シフトJISコード は、JIS の漢字などの 2 バイト文字の番号を、1 バイト文字と重ならない範囲へずらして割り当てた文字コードである。

2 バイト文字の 1 バイト目には 1 バイト文字に使われない値が来るので、読んだ値から 1 バイト文字か 2 バイト文字かを見分けられる。英数字や半角カナと漢字を混ぜた文書を扱いやすく、Windows などのパソコンの日本語処理で広く使われてきた。

たとえ同じ棚に 2 種類の商品を並べるとき、片方の番号札を別の色の範囲にずらしておけば、仕切り板を置かなくても札の色だけで種類が分かる、というのに似ている。

覚え方シフト (shift) は「ずらす」。番号の置き場所をずらしたから「シフト」JIS。

出題のポイント

  • 混同注意シフトJISコード と Unicode は、対象とする文字の範囲で分かれる。シフトJISコードは日本語の文字と英数字を、Unicode は世界の多くの言語の文字を 1 つの体系で扱う。

この用語の過去問 1 題 シフトJISコード

「JISコード」と「シフトJISコード」の違い

観点JISコードシフトJISコード
決め手1 バイト文字と 2 バイト文字の混ぜ方切替えを示す特別な符号を挟む2 バイト文字の 1 バイト目を 1 バイト文字と重ならない値にして見分ける
主な利用場面電子メールパソコンの日本語処理 (Windows など)
基になる文字の集合JIS の英数字と漢字などの集合同じく JIS の英数字と漢字などの集合

Unicode は、世界の多くの言語の文字に 1 つずつ番号を割り当て、1 つの体系で扱えるようにした文字コードである。

  1. 文字 (例: あ)
  2. Unicode の番号 (U+3042)
  3. UTF-8 のバイト列 (3 バイト)

文字に振った番号を実際のバイト列にする方法を 符号化方式 と呼び、例えば UTF-8 や UTF-16 がある。UTF-8 は英数字を 1 バイト、日本語の多くの文字を 3 バイトで表す可変長の方式で、Web ページなどで広く使われている。

たとえ世界中の図書を 1 つの通し番号で管理する図書館のようなもの。どの国の本でも、同じ台帳の番号で探せる。

覚え方uni は「1 つの」(uniform、unit と同じ) という意味。1 つの体系で世界の文字を表すコード。

出題のポイント

  • 出題Unicode は多くの言語の文字を共通の番号体系にまとめた文字コードで、言語ごとに文字コードを使い分けなくても、多言語の文字を同じ文書で扱える。
  • 混同注意UTF-8 は Unicode の番号をバイト列で表す方式の 1 つで、文字の集合そのものの名前ではない。同じ Unicode の文字でも、UTF-8 と UTF-16 ではバイト列が異なる。

この用語の過去問 1 題 Unicode

「シフトJISコード」と「Unicode」の違い

観点シフトJISコードUnicode
決め手対象とする文字日本語の文字と英数字世界の多くの言語の文字
1 文字のバイト数1 または 2符号化方式による (UTF-8 は 1〜4)
多言語の文字の混在日本語以外の多くの文字は表せない1 つの体系のまま混在できる

要点

  • 符号化 は規則に従って情報を符号に対応づけることで、同じ規則で 復号 すれば元に戻り、規則が食い違うと文字化けが起こる。
  • n ビットで区別できるのは 2 の n 乗通りで、必要なビット数は表したい種類の数から決まる。
  • JIS の文字コードでは英数字などが 1 バイト、漢字などが 2 バイトで、文字データの容量はこのバイト数と文字数から見積もる。
  • シフトJISコード は 2 バイト文字の番号を 1 バイト文字と重ならない範囲へずらした文字コードで、パソコンの日本語処理で広く使われてきた。
  • Unicode は文字に振る番号の体系で、UTF-8 などの符号化方式がその番号をバイト列にする。

確認問題

この単元の過去問から 5 題

確認問題を解く

この分野の過去問をすべて見る