この記事では、ビットとバイトについて、初心者にも分かりやすく、図解付きで丁寧に解説しています!
ビットとバイト
- ビットは情報の最小単位。
- 1バイトは8ビット。
- 4ビットずつでまとめると情報の表現がしやすく、また、扱いたい情報の数から1バイト=8ビットとなった。
コンピュータは2進数で動く
コンピュータは電子機器です。なので、電気を使って様々な処理をしています。
電気にはオンとオフの2つの状態しかありません。この2つの状態を「1」と「0」で表現するのが便利なので、「1」と「0」で数を表す2進数がコンピュータでは使われています。

2進数については、この記事で解説しています。

ビットは0と1を入れる箱
コンピュータは、「0」と「1」の組み合わせで様々な情報を表現しますが、
この「0」と「1」の情報を入れる箱の数をビットという単位で表します。

ビット数は重要です。なぜならビット数に応じて扱える情報の数が変わるからです。
例えば、2ビットなら4通り、3ビットなら8通りの情報が扱えます。
なので、進行方向を2進数で表す場合、2ビットなら上下左右しか表現出来ませんが、
3ビットなら、更に4方向追加で表現出来ます。

このように、ビット数が大きい程、扱える情報の量も大きくなります。
ビット数 | 扱える情報の数 |
1ビット | 2¹=2個 |
2ビット | 2²=4個 |
3ビット | 2³=8個 |
4ビット | 2⁴=16個 |
5ビット | 2⁵=32個 |
6ビット | 2⁶=64個 |
7ビット | 2⁷=128個 |
8ビット | 2⁸=256個 |
1バイト=8ビット
0と1を入れる箱が8個あるとき、1バイトと表現します。つまり、1バイト=8ビットです。

1バイト=8ビットなので、1バイトで扱える情報の数は256個になります。
なぜ1バイト=8ビットなの?
1バイト=8ビットって凄く中途半端な気がしますよね。
しかし、実は、1バイト=8ビットで都合が良い理由があるんです。その理由を見てみましょう。
扱いたい情報を網羅するには最低6ビット位は必要
ビット数に応じて扱える情報の数は変わるよという話をしましたね。
では、最低限どれくらいの数の情報を扱えると良いのか考えてみましょう。
コンピュータが作られたのはアルファベットを使う欧米です。アルファベットはa~zの小文字と大文字を合わせて52種類あります。また、数字の0~9も表現できる必要があるので、これだけでも最低62種類の文字を扱えないといけないことが分かります。
さて、62種類の文字を扱うには何ビット必要でしょうか?
下の表を見ると6ビット必要であると分かりますね。
ビット数 | 扱える情報の数 |
1ビット | 2¹=2個 |
2ビット | 2²=4個 |
3ビット | 2³=8個 |
4ビット | 2⁴=16個 |
5ビット | 2⁵=32個 |
6ビット | 2⁶=64個 |
7ビット | 2⁷=128個 |
8ビット | 2⁸=256個 |
なので、最低でも1バイト=6ビット以上が良いですね。
8ビットは16進数で表現しやすい
コンピュータは2進数で情報を扱いますが、2進数で使える数は0と1だけなので、桁数が大きくなりがちなんですね。
例えば、10進数の「100」は2進数で「1100100」と表現します。10進数なら3桁で表現出来た情報を2進数で表現するには7桁も必要です。
我々人間からすると、桁数が大きくなるほど、読み間違えも増えそうでちょっと嫌だなと思いますよね。
ここで出てくるのが16進数です。
下の表を見てください。4桁の2進数と1桁の16進数が綺麗に対応しています。

2進数で表現しているものを、4桁区切りで綺麗に変換出来るから、
16進数は便利で、よく使われるんですね。

同じように考えてみましょう。
4ビットを1つの塊とすると、ちょうど16進数1文字で全ての情報を表せます。
2進数の「0000」~「1111」は16進数の「0」~「F」だからですね。
しかし、最低でも1バイト=6ビットは欲しいって話でしたよね。
では、8ビットを1つの塊としましょう。すると、16進数の「00」~「FF」で全ての情報を扱えるようになります。これが1バイト=8ビットになった理由です。(諸説あります)