文字の符号化ビット数
英大文字 26 種類と数字 10 種類からなる 8 文字の ID を,1 文字ずつ固定長の 2 進符号で表す。1 文字当たりのビット数を,すべての文字を区別できる最小の値としたとき,ID 1 個を表すのに必要なビット数はどれか。
- ア40
- イ48
- ウ56
- エ64
正解と解説を見る
正解 イ
この問題の基礎知識
- n ビットの 2 進符号で区別できる値は 2 の n 乗通りであり,例えば 3 ビットなら 8 通りを区別できる。
- m 種類の文字を固定長の 2 進符号で区別するのに必要な最小ビット数は,2 の n 乗が m 以上となる最小の n である。
- 2 の累乗の値として,2 の 5 乗=32,2 の 6 乗=64,2 の 7 乗=128,2 の 8 乗=256 を覚えておくとよい。文字列全体のビット数は 1 文字当たりのビット数×文字数で求める。
ア40
1 文字を 5 ビットとした場合の値である。5 ビットで区別できるのは 2 の 5 乗=32 種類までなので,36 種類の文字をすべて区別することはできない。
イ48正解
文字の種類は 26+10=36 であり,2 の 5 乗=32<36≦2 の 6 乗=64 なので,1 文字に最低 6 ビット必要である。8 文字では 6×8=48 ビットとなる。
ウ56
1 文字を 7 ビットとした場合の値である。7 ビットでは 128 種類を区別できるが,36 種類の区別には 6 ビットで足りるので,最小のビット数ではない。
エ64
1 文字を 1 バイト(8 ビット)とした場合の値である。36 種類の区別には 6 ビットで足りるので,最小のビット数で符号化したときの値ではない。
検証用の出典出典照合済み
IPA 応用情報技術者試験(レベル 4)シラバス照合の根拠(1 件)
- イ(正解): 2 進表現で区別できる種類数の計算は出題範囲
2 進数,8 進数,10 進数,16 進数,n 進数の表現,2 進数と 10 進数などの基数の変換手法を理解する。
IPA 応用情報技術者試験シラバス Ver.7.2 · 中分類1 基礎理論 1. 離散数学 (1) 基数(新しいタブで開きます)
検算: 文字種 26+10=36。2^5=32<36≦2^6=64 なので 1 文字 6 ビット,8 文字で 6×8=48 ビット。5 ビット→40,7 ビット→56,8 ビット→64 はいずれも最小でないか不足。一般的な数学なので出典不要。