ビット数と符号化
コンピュータの内部では、あらゆる情報を2進数の数値で表している。例えば、文字、画像、音声などを、 数値で表している。このように、本来なら数値でない情報を、 数値に置き換えて表したものを符号やコード (code)と呼び、符号を割り当てることを符号化と呼ぶ。
表せる符号の数
ビット数によって、表せる符号の数が決まる。 1ビットで表せる符号は、0と1の2通りである。
2ビットで表せる符号は、00、 01、10、11の4通りとなる。
3ビットで表せる符号は、000、001、010、011、100、101、110、111の8通りとなる。
それでは、4ビットで表せる符号は、 何通りだろうか。 2進数は、1桁がと 1の2通りである。
4ビットあれば、それぞれの桁が2通りに変化できるので、全 部で2×2×2×2=2=16通りの符号が表せる。 nビットなら、2n通りである。 以下に、ビット数と表せる符号の数を示している。
8ビット=1バイトでは、 256通りの符号が表せる。 これは、半角英数記号と半角カナを表すのに、 ちょうどよい数となる。そのため、1バイトを半角1文字に割り当てた文字コードがよく使われる。
ビット数と表せる符号の数
ビット数 | 表せる符号(組み合わせ)の数 | 例(2進数の範囲) |
---|---|---|
1ビット | 2通り | 0 ~ 1 |
2ビット | 4通り | 00 ~ 11 |
3ビット | 8通り | 000 ~ 111 |
4ビット | 16通り | 0000 ~ 1111 |
5ビット | 32通り | 00000 ~ 11111 |
6ビット | 64通り | 000000 ~ 111111 |
7ビット | 128通り | 0000000 ~ 1111111 |
8ビット | 256通り | 00000000 ~ 11111111 |
一般式
- 表せる符号の数 = 2n
(※n はビット数)
補足
たとえば「8ビット」で表せる組み合わせは( 28 = 256 ) 通りである。
このうち、符号なしの場合は 0~255、符号付き(2の補数表現)の場合は −128~+127 を表せる。
ビットパターンの個数を比較する
例題2.2は、32ビットで表せる符号の数と、 24ビットで表せる符号の数を比較する問題である。
「ビットパターン」 とは、2進数の0と1で作られる数値のパターン、つまり符号のことである。
例題2.2 表現できるビットパターンの個数(H28 秋 問4)
問4 32ビットで表現できるビットパターンの個数は, 24ビットで表現できる個数の何倍か。
ア 8
イ 16
ウ 128
エ 256
nビットで表せる符号の数は2n通りである。 したがって、32ビットで表せる符号の数は232=4294967296通りで、 24ビットで表せる符号の数は224= 16777216通りである。
ただし、 4294967296÷16777216という計算をしたのでは、あまりにも面倒である。
そこで、簡単に答えが得られるように、 計算方法を工夫しよう。
桁数が1ビット増えると、表現できる符号の数が2倍になる。
32ビット と24ビットは、 32ー24=8ビット違うので、 表現できる符号の数が、2×2×2×2×2×2×2×2=256倍違うことになる。
正解は、選択肢エである。
(参考)情報処理教科書 出るとこだけ!基本情報技術者[科目A][科目B]2025年版
コメント