「C言語とは」でも触れましたが、コンピュータは、「0」と「1」だけで命令やデータを表しています。
今回は、その「0」と「1」の単位である ビット(bit) と、それをまとめた バイト(byte) について解説します。
この内容を理解しておくと、メモリの仕組みや、マイコンのデータサイズを考えるときに役立ちます。
ビット(bit)とは
ビットは、コンピュータで扱う最小の単位です。
1ビットは 「0」または「1」 のどちらかを表します。
電気が流れている:1(ON)
電気がながれていない:0(OFF)
コンピュータ内部では、すべてのデータがこの0と1の組み合わせで管理されています。
例えば、CPUが理解する命令(「足し算しろ」、「メモリに保存しろ」など)は、最終的には次のようなビットの集まりになっています。
10110000 01100001このように、0/1で表すのがビットになり、例では、0/1が16個並んでいるので、16ビットということになります。
バイト(byte)とは
バイトは、ビットの集まりです。
8ビットをまとめたものを 1バイト と呼びます。
つまり、1バイトは、0か1を8個並べたものです。
00000000 (1バイト)次にバイトの単位についてです。
1キロバイト(KB):1024バイト
1メガバイト(MB):1024KB
1ギガバイト(GB):1024MB
※日常生活では「1キロメートル=1000メートル」など、「キロ=1000」というイメージがありますよね。
なぜ、「1024」なのか、次の記事で説明する2進数と16進数の中で説明します。
1バイトで表せる数
1ビットでは、「0」と「1」の2通りの状態が作れます。
では、2ビットならどうでしょう。
00
01
10
11このように、4通りの状態が作れます。
つまり、2×2=4通りです。
3ビットならどうでしょう。
000
001
010
011
100
101
110
1118通りの状態が作れます。
つまり、2×2×2=23=8通りです。
2のビット数乗の通り数になることがわかります。
同じように1バイトは、8ビットなので、
2×2×2×2×2×2×2×2 = 28 = 256通り
つまり、0~255の数字を表せることになります。
まとめ
- ビット(bit) は 0 または 1 の最小単位
- 1バイト(byte)=8ビット
- 1バイトで表せる数は 0〜255(256通り)