約2分で読めます
2進数・8進数・16進数の基礎と進数変換の仕組み
進数とは
進数(基数)とは、「いくつの数字で1桁を表すか」のことです。私たちが普段使う10進数は0〜9の10種類で数えますが、コンピュータの世界では2進数・8進数・16進数がよく使われます。
| 進数 | 使う数字 | 主な用途 |
|---|---|---|
| 2進数 | 0, 1 | コンピュータ内部の表現 |
| 8進数 | 0〜7 | ファイルのパーミッション |
| 10進数 | 0〜9 | 日常の数え方 |
| 16進数 | 0〜9, A〜F | 色コード・メモリアドレス |
なぜコンピュータは2進数なのか
コンピュータは電気のオン(1)とオフ(0)で情報を扱うため、2種類の状態で表せる2進数が最も自然です。ただし2進数は桁数が長くなりすぎるため、人間が読むときは桁をまとめた16進数がよく使われます。
桁の重み(位取り)
どの進数も「桁の重み」で値が決まります。例えば10進数の「253」は次の意味です。
253 = 2×100 + 5×10 + 3×1
2進数の「1101」も同じ考え方で、各桁が2のべき乗の重みを持ちます。
1101 = 1×8 + 1×4 + 0×2 + 1×1 = 13
10進数から2進数への変換
10進数を2進数にするには、2で割った余りを下から並べます。例えば13を変換すると次の通りです。
13 ÷ 2 = 6 余り 1
6 ÷ 2 = 3 余り 0
3 ÷ 2 = 1 余り 1
1 ÷ 2 = 0 余り 1
余りを下から読んで「1101」となります。逆に2進数から10進数へは、各桁の重みを足し合わせます。
16進数のメリット
16進数は2進数の4桁をちょうど1桁で表せます。例えば2進数「11111111」(8桁)は16進数では「FF」(2桁)です。色コードの #FF0000(赤)も、RGB各成分を16進数2桁で表したものです。
手計算は間違えやすいので、進数変換ツールに数値を入れれば、2進数・8進数・10進数・16進数を一度に相互変換できます。
まとめ
- 進数は「1桁を何種類の数字で表すか」の違い
- コンピュータは2進数、人間が読むときは16進数が便利
- 値は各桁の重み(べき乗)の合計で決まる
- 10進→2進は「2で割った余りを下から並べる」
- 進数変換ツールで各進数をまとめて変換できる