KM-53|情報Ⅰ 対策問題
令和8年度追・再試験 第1問 問1a 任意の時刻をビット列で表すことを考える。24時間制で、時と分をそれぞれ h ビットと m ビットのビット列で別々に表す。h と m をそれぞれ最小のビット数にする場合、h + m はいくつになるか。最も適当なものを選べ。
解答・解説を見る
正解: 2
正答
2
問題の整理
「時」は0〜23の24通り、「分」は0〜59の60通りの値をとります。それぞれを2進法のビット列で表すとき、何ビットあれば全部の値を区別できるかを考える問題です。
基本になる知識は1つだけ:
nビットで区別できるのは 2^n 通り(1ビット=2通り、2ビット=4通り、3ビット=8通り、4ビット=16通り、5ビット=32通り、6ビット=64通り…)。
解き方
- 「時」(24通り)に必要なビット数:
4ビットでは 2^4 = 16通り しかなく、24通りに足りない。
5ビットなら 2^5 = 32通り で、24通りを表せる。→ h = 5 - 「分」(60通り)に必要なビット数:
5ビットでは 32通り で足りない。
6ビットなら 2^6 = 64通り で、60通りを表せる。→ m = 6 - 合計: h + m = 5 + 6 = 11
ポイントは「表したい通り数を初めて超える(またはちょうどになる)2のべき乗を探す」ことです。16 < 24 ≤ 32、32 < 60 ≤ 64 という挟み方で確かめると確実です。
選択肢の確認
1.× 10ビット(時4+分6など)では時が16通りまでしか表せない。
2.○ 時5ビット(32通り≥24)+分6ビット(64通り≥60)。
3.× 12ビットでも表せるが「最小」ではない。
4.× 13ビットも同様に最小ではない。
ここだけは覚えよう
nビット=2^n通り — 「何通り必要か」→「それを超える最小の2のべき乗」の順で考える。