基本情報技術者 PR

【基本情報】ビットとバイトとは何か、1バイト=8ビットの理由も解説

記事内に商品プロモーションを含む場合があります

コンピュータは2進数で動く

コンピュータは電子機器なので、電流で情報を制御します。その際、電子部品に電流が流れたかどうか、つまり1か0で情報を制御します。なので、0と1で数字を表現する2進数がコンピュータには重要です。

こちらの記事でもっと詳しく2進数の重要性について記載していますので、こちらも是非参考にしてください。

【基本情報】コンピュータが理解できるのは0と1だけ?!2進数は基本情報で頻出されるキーワードの1つです。この記事では、ITを理解する上で、なぜ2進数を学ぶ必要があるのかを解説しています。...

ビットってどういう単位?

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

ビット数に応じて扱える情報の数が変わります。2ビットなら4通りの情報を扱えるので、上、下、右、左に進むコマンドが作れそうです。

では、3ビットならどうでしょうか。3ビットなら8通りの情報を扱えるので、更に4つの進行方向を増やすことが出来ます。

このように、ビット数が大きい程、扱える情報の量も大きくなります。

ビット数 扱える情報の数
1ビット 2個
2ビット 4個
3ビット 8個
4ビット 16個
5ビット 32個
6ビット 64個
7ビット 128個
8ビット 256個

バイトってどういう単位?

0と1を入れる箱が8個あるとき、1バイトと表現します。つまり、8ビット=1バイトです。

1バイト=8ビットなので、1バイトで扱える情報の数は256個になります。

なぜ1バイト=8ビットなの?

今では1バイト=8ビットですが、コンピュータが作られた当初は1バイト=6ビットや7ビットのコンピュータも存在していました。しかし、メーカーによって1バイトの大きさが違うと不便です。

ここに終止符を打ったのがIBMという会社が発売した1バイト=8ビットのコンピュータでした。このコンピュータが世界中で爆発的に売れたことで1バイト=8ビットが一般的になりました。

1バイト=8ビットが扱いやすい理由は2つあります。その理由を見ていきましょう。

2進数と16進数は相性が良い

コンピュータは電流の有無、つまり0と1で情報を制御するため2進数で情報を扱います。しかし、0と1しか使えないので、どうしても桁数が多くなりがちです。

そこで、16進数を使って情報を表現することにしました。16進数で最も大きい1桁の英数字「F」は、2進数で最も大きい4桁の数字「1111」に対応するため、切り良く桁数を縮めることが出来ます。

2進数と16進数の相性については下記の記事でより詳細に解説しているので、興味がある方はこちらを参考にしてください。

【基本情報】16進数とコンピュータは相性が良い16進数は基本情報の勉強をする上で頻出されるキーワードの一つです。この記事では、ITを勉強する上で、なぜ16進数を学ぶことが重要なのかについて解説しています。...

2進数と16進数は4の倍数をキーワードに強いつながりを持ちます。

1バイトで表せる最大の数字「11111111」は16進数で「FF」と表せるので、1バイト=8ビットというのは扱いやすくなるんですね。

扱いたい情報の数

コンピュータが作られたのはアルファベットを使う欧米です。アルファベットはa~zの小文字とA~Zの大文字を合わせて52種類あります。また、アルファベットに加えて数字の0~9や!や$などの記号もコンピュータで表現する必要があります。

そのため、最低でも6ビット無いと、扱える情報の数として足りないという訳です。

ビット数 扱える情報の数
1ビット 2個
2ビット 4個
3ビット 8個
4ビット 16個
5ビット 32個
6ビット 64個
7ビット 128個
8ビット 256個

4の倍数で、しかも、扱いたい情報の数を網羅できる最小の数が8ビットなので、1バイト=8ビットがちょうど良かったんですね。

ASCIIコード

コンピュータではアルファベットや数字も2進数で表現します。
コンピュータを開発した企業によって文字の表現方法が違うと正しく情報を伝え合うことが出来ません。

例えば、A社では「a」を「00101100」、B社では「x」を「00101100」と表現してしまうと、A社のコンピュータから「a」と書かれたファイルをB社のコンピュータが受け取ると「x」と表示されてしまいます。

そこで誕生したのが文字コードです。世界で初めて誕生した文字コードがASCIIです。ASCIIでは文字を下表のように表示します。ASCIIは1バイトで様々な文字を表現します。

文字コードを合わせることで違う企業が作ったコンピュータ同士でも正しくデータの受け渡しが出来ます。