各ビットが0または1のいずれかをとる5ビットの固定長ビット列で表せる、異なる状態の総数を次から選べ。
- 0
5通り
- 1
32通り
- 2
10通り
- 3
25通り
解答・解説を確認
正解1.32通り
解説
nビットの各桁が独立に0または1を取るなら、組合せは2×…×2=2n通りです。5ビットでは32通りになります。
- 出典
- オリジナル
TERM GUIDE · DIGITAL
ビット(bit)は、コンピュータが情報を表すときの基本となる単位であり、0または1の2通りの状態を表します。bitは「binary digit(二進数字)」に由来する言葉です。
例えば、スイッチの「OFF/ON」、LEDの「消灯/点灯」のように、二つの状態を0と1に対応させれば、1ビットで表すことができます。
実際のコンピュータでは、0と1そのものを保存しているというより、物理的な二つの状態を0と1に対応させています。例えばHDDでは磁性体の磁化状態の違いを利用してビットを記録します。装置によっては電気的な状態など、別の仕組みが使われます。
1ビットには、0と1の2通りがあります。
2ビットでは、00、01、10、11の4通りを表せます。
同様に、次のようになります。
3ビット → 23=8通り
4ビット → 24=16通り
5ビット → 25=32通り
6ビット → 26=64通り
7ビット → 27=128通り
8ビット → 28=256通り
各ビットがそれぞれ0または1を独立に取るので、nビットで表せるビット列は2n通りとなります。
例えば、3個のLEDがそれぞれ点灯・消灯の2状態を取るなら、その組合せは23=8通りです。すべて消灯している場合も一つの組合せとして数えます。
反対に、「M種類の状態を区別するには何ビット必要か」という問題では、
2n ≧ M
を満たす最小の整数nを求めます。
例えば26種類の文字を区別する場合、
24=16
25=32
なので、4ビットでは不足し、5ビットあれば足ります。したがって最小5ビットです。
100種類の場合は、
26=64
27=128
なので7ビット必要です。
24時間制の「時」は0~23の24通りなので5ビット、「分」は0~59の60通りなので6ビット必要です。
nビットのすべてを数値の大きさに使う符号なし整数では、
0~2n−1
の整数を表せます。
例えば8ビットでは、0~255の256種類の整数を表せます。
負の数も扱う2の補数表現では、nビットで表せる範囲は、
−2n−1 ~ 2n−1−1
となります。例えば8ビットなら−128~127です。
表せる範囲を計算結果が超えることをオーバーフローといいます。
データ量ではバイトもよく使われます。
1バイト=8ビット
なので、次のように考えます。
バイトからビットへ直すときは8倍
ビットからバイトへ直すときは8で割る
例えば16バイトは、
16×8=128ビット
です。
通信速度やデータ量では、k(キロ)、M(メガ)、G(ギガ)などの接頭語を付けて表すことがあります。
1kビット=1,000ビット=103ビット
1Mビット=1,000kビット=1,000,000ビット=106ビット
1Gビット=1,000Mビット=1,000,000kビット=1,000,000,000ビット=109ビット
一方、2進数を基準とする接頭語では、次のように表します。
1KiB=1,024バイト=210バイト
1MiB=220バイト
1GiB=230バイト
例えば、
8kB=8×1,000=8,000バイト
8KiB=8×1,024=8,192バイト
となります。
0と1の各桁に対して行う演算をビット演算といいます。
ANDは、両方が1のときだけ1になります。特定のビットだけを残す処理などに使われます。
ORは、どちらか一方でも1なら1になります。特定のビットを1にする処理などに使われます。
XORは、二つのビットが異なるとき1になります。特定のビットを反転する処理などに使われます。
ビット数は、画像で表現できる階調や色の数にも関係します。
1画素を8ビットで表すなら、
28=256
より256段階を表せます。
RGB画像で赤・緑・青をそれぞれ8ビットで表す場合は、1画素当たり24ビットとなり、
2563=16,777,216色
を表現できます。
このように、ビットは単に0と1を表す単位ではなく、ビット数によって表現できる情報の種類や範囲が決まります。特に、
nビット → 2n通り
という関係が、整数、画像、通信、記憶装置などを考える基本となります。
EXAMPLE
5通り
32通り
10通り
25通り
正解1.32通り
nビットの各桁が独立に0または1を取るなら、組合せは2×…×2=2n通りです。5ビットでは32通りになります。
PRACTICE