2進法と16進法
コンピュータの世界では、2 進法と 16 進法が頻繁に使われます。コンピュータ内部ではすべてのデータが 0 と 1 で表現されるため 2 進法が基本ですが、人間が読み書きしやすいように 16 進法もよく利用されます。
2 進法
2 進法は 0 と 1 の 2 種類の数字だけを使う表記法です。各桁は右から順に 、、、、… の位を表します。
2 進法では桁数が多くなりがちなのが欠点です。たとえば は と 8 桁にもなります。
16 進法
16 進法は 0〜9 に加えて A〜F の文字を使い、16 種類の数字で表記します。
| 16進 | 10進 | 2進 |
|---|---|---|
| 0 | 0 | 0000 |
| 1 | 1 | 0001 |
| 2 | 2 | 0010 |
| 3 | 3 | 0011 |
| 4 | 4 | 0100 |
| 5 | 5 | 0101 |
| 6 | 6 | 0110 |
| 7 | 7 | 0111 |
| 8 | 8 | 1000 |
| 9 | 9 | 1001 |
| A | 10 | 1010 |
| B | 11 | 1011 |
| C | 12 | 1100 |
| D | 13 | 1101 |
| E | 14 | 1110 |
| F | 15 | 1111 |
16 進法の 1 桁は 2 進法の 4 桁に対応します。これが 16 進法の便利な点です。
2 進法 ⇔ 16 進法の変換
なので、2 進法の 4 桁が 16 進法の 1 桁に対応します。
2 進法 → 16 進法
右から 4 桁ずつ区切り、各グループを 16 進法の 1 桁に変換する
16 進法 → 2 進法
各桁を 4 桁の 2 進法に変換して並べる
を 16 進法に変換します。
逆に を 2 進法に変換します。
2 進法と 16 進法が使われる場面
メモリアドレス
コンピュータのメモリアドレスは 16 進法で表示されることが多いです。「0x7FFF」のように 0x をつけて 16 進法であることを示します。
カラーコード
Web の色指定で使う「#FF5733」は RGB 各 8 ビットを 16 進法 2 桁で表したものです。FF は赤、57 は緑、33 は青の強さを表します。
ビット演算
プログラミングでビット演算を行う際、2 進法で考えながら 16 進法で記述することがよくあります。
2 のべき乗を覚えておく
2 進法を扱うときは、2 のべき乗を暗記しておくと便利です。
| 1 | |
| 2 | |
| 4 | |
| 8 | |
| 16 | |
| 32 | |
| 64 | |
| 128 | |
| 256 | |
| 1024(約 1000、1K) |
特に は「キロ」の由来であり、コンピュータ分野では頻出の値です。