16進数の必要性
コンピュータは数を0と1のみの2進数で表現する。この2進数、人間にとっては弱点がある。桁数が多くなると何が書いてあるか分かりづらいのだ。例えは0b01100011、これはぱっとみて全体の桁数も分かりづらいし、どの桁が1でどの桁が0かもとても見づらい。
そこで人間が理解し易いように16進数を用いる。
16進数
16進数とは、16から1を引いた数”15”で桁上がりをする数の表現方法である。1から15までを1桁で表現するのだが、残念ながら10以降を1桁で表現できる数字は無い。よって10〜15をアルファベットのA〜Fで表す。10進数、2進数、16進数の対比を示す。
10進数 | 2進数 | 16進数 |
0 | 0 | 0 |
1 | 1 | 1 |
2 | 10 | 2 |
3 | 11 | 3 |
4 | 100 | 4 |
5 | 101 | 5 |
6 | 110 | 6 |
7 | 111 | 7 |
8 | 1000 | 8 |
9 | 1001 | 9 |
10 | 1010 | A |
11 | 1011 | B |
12 | 1100 | C |
13 | 1101 | D |
14 | 1110 | E |
15 | 1111 | F |
ここでも16進数は10を”イチゼロ”と言い、1Bは”イチビー”と言う。
2進数と同様に、これが16進数表記だと分かるように頭に”0x”をつけ、0x10や0x1Bという様に記述する。
2進数は4bit毎に間を開けて書いておくと16進数に変換するときに見やすくなる。2進数4bit分で16進数1桁になるからだ。
2進数を4bit毎に区切り、4bitづつ16進数に変換していけば16進数表記になる。0b0000 0000は0x00、0b0110 1100は0x6Cとなる。
16進数を使えば少ない桁数で2進数を表現できるため、数の把握が容易になる。