パソコンのビットやバイトってなんのことかな?
こんな疑問にお答えします。
というわけで、本記事の内容は次のとおりです。
- パソコンのビットとバイトをエンジニアが丁寧に解説
ビットとバイトがわかっているとプログラミングをするときに理解が深まりますし、パソコンを購入するときにスペック表の意味をちゃんと理解した上で購入できるので失敗が減りますよ。
そんな私は大手メーカーでソフトウェアエンジニアを6年以上経験していまして、情報工学の修士号を持っています。
この私が解説します。
ビットとバイトについて丁寧に解説
ビットとバイトはどちらもデータの量を表す単位です
bitとByteはどちらもデータの量を表す単位です。
それぞれの意味は次のとおりです。
- bit(省略形:b)・・・コンピューターが処理する最小単位
- Byte(省略形:B)・・・複数のビットをひとまとまりにして表す単位
多くの場合は8bit = 1Byteです。
ビットとバイトを理解するにはコンピューターがどのようにデータ(情報)を扱っているか知る必要があります。
なので、まずはコンピューターがデータをどう扱っているか丁寧に解説しますね。
コンピューターはデータ(情報)を2進法で表現しています
コンピューターはデータ(情報)を2進法で表現しています。
2進法は2種類の文字で数を表す方法です。2種類の文字というのは「0」と「1」です。
なぜコンピューターは2進法を使うかというと、電子機器であるコンピューターは「スイッチをOFFにするかONにするか」の2種類しか表現できないからです。
スイッチをOFFにすると「0」を表し、スイッチをONにすると「1」を表すようにすることで2進法を使ってデータ(情報)を表現することができます。
例えば、スイッチの数が1個だけだと2種類のデータ(情報)しか表現できません。⇩
パターン | スイッチ |
1 | OFF(0) |
2 | ON(1) |
しかし、スイッチが2個あればスイッチの組み合わせでデータ(情報)を4種類表現することができますね。⇩
パターン | スイッチA | スイッチB |
1 | OFF(0) | OFF(0) |
2 | ON(1) | |
3 | ON(1) | OFF(0) |
4 | ON(1) |
さらに、スイッチが3個あればデータ(情報)を8種類表現することができます。⇩
パターン | スイッチA | スイッチB | スイッチC |
1 | OFF(0) | OFF(0) | OFF(0) |
2 | ON(1) | ||
3 | ON(1) | OFF(0) | |
4 | ON(1) | ||
5 | ON(1) | OFF(0) | OFF(0) |
6 | ON(1) | ||
7 | ON(1) | OFF(0) | |
8 | ON(1) |
コンピューターにはこのスイッチがたくさんあるので文字や画像といった複雑なデータを2進法で表現することができます。
2進法で文字を表現する方法
ここで疑問なのが2進法でどうやって文字を表現するのかですよね。
簡単にいうと「この数字の並びはこの文字とする」と取り決められているだけです。
画像などは情報が多いので、もっと複雑に表現の仕方が決めてあります。
これなら色々なデータ(情報)を2進法で表現できそうですね。
ビットは2進数の1桁のことです
前置きはここまでで、具体的にビットとバイトについて解説します。
ビットは2進数で表現したデータ(情報)の1桁のことであり、コンピューターが処理する最小単位です。
8ビットで1バイトです
多くの場合は8ビット=1バイトとして扱われています。
図にするとこんな感じです。
以上のように、基本的には8ビット=1バイトとお考えください。
バイトの表現方法
バイトにはKBとかGBのような表現があります。
まとめると次のとおりです。
1[KB] | =1024[B] | |
1[MB] | =1024[KB] | =1024✕1024[B] |
1[GB] | =1024[MB] | =1024✕1024✕1024[B] |
1[TB] | =1024[GB] | =1024✕1024✕1024✕1024[B] |
1024という数字を見るとキリが悪いように思うかもですが、1024は2の10乗なので2進数で表現するコンピューターにとってはキリがいいんです。
つまりこういうことです。
- K=2の10乗
- M=2の20乗
- G=2の30乗
- T=2の40乗
Tより上の文字もありますので、興味があれば調べてみてください。
ビットとバイトがわかればプログラミングが少しわかる
今回はコンピューターのデータ量を表すビットとバイトについて解説しました。おさらいすると、
- コンピューターはデータ(情報)を2進法で表現している
- ビットは2進数の1桁のこと
- 8ビットで1バイト
上記の通りです。
ビットとバイトがわかるとデータの考え方がわかるようになるのでプログラミングをするときに少しは役に立つかなと。
それでは(^_^)/~