平成24年度 秋期 午前 問4
情報に関する理論
ビットに関する問題
英字の大文字(A〜Z)と数字(0〜9)を同一のビット数で一意にコード化するには,少なくとも何ビットが必要か。
- ア5
- イ6
- ウ7
- エ8
答えと解説を見る
✓ これが正解イ6
解説
大文字と数字で36種類なので、最少で6ビット必要です。
同じ長さでコード化して全部を区別するには、その長さで表せる組合せの数が、区別したい対象の数以上でなければなりません。軸は二つです。一つ目は数え上げで、英字の大文字26種類と数字10種類を合わせた36種類が対象になります。二つ目は最小性で、条件を満たすもののうち、いちばん短いものを選びます。nビットで表せる組合せは2をn回掛けた数です。5ビットでは32通りしかなく36に届きませんが、6ビットなら64通りとなって36を上回ります。したがって条件を満たす最小の長さは6ビットです。これは、区別したい情報の量から符号の長さを決める、という考え方にあたります。
ほかの選択肢はなぜ違うのか
- ア5:5ビットで表せるのは32通りにとどまり、区別したい36種類に足りません。英字だけを対象にすれば収まる長さなので、数字の10種類を数え落とした場合に出てくる値です。
- ウ7:7ビットなら128通りを表せるので区別自体はできますが、その1つ手前の長さで既に足りています。少なくとも何ビット必要かという問いなので、余裕のある長さは答えになりません。
- エ8:8ビットは1バイトの幅としてよく使われる長さで、256通りを表せます。これも条件は満たしますが最小ではなく、慣れた区切りをそのまま当てはめた場合の値です。
出典:平成24年度 秋期 基本情報技術者試験 午前 問4
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)