16進数(じゅうろくしんすう、Hexadecimal)

16進数(じゅうろくしんすう、Hexadecimal)とは、0から9の数字とA〜Fのアルファベットを組み合わせた、16種類の文字で数を表す表記方法のことです。私たちが普段使う10進数や、コンピューターの基本である2進数とは異なる考え方で数を表しますが、コンピューターの世界では非常によく登場します。

イメージとしては、16進数は長い暗証番号を短くまとめる速記術のようなものです。0と1だけの長い並びである2進数を、少ない桁数でぎゅっと圧縮して表せるため、人間にとって格段に読みやすくなります。

16進数とは

16進数は、桁が上がる基準となる数が16であるという点を除けば、10進数や2進数と基本的な考え方は同じです。0から9までの10個の数字だけでは16種類を表しきれないため、10・11・12・13・14・15を、それぞれA・B・C・D・E・Fというアルファベットで代用している点が最大の特徴です。

16進数の表し方

16進数では、1の位が9の次にA、B、Cと進み、Fまで到達すると桁が繰り上がって10(16進数での「16」)になります。この繰り上がりの基準が10ではなく16であるという点だけが、10進数との根本的な違いです。

16進数と2進数の関係

16進数がよく使われる最大の理由は、2進数の4桁ちょうどが、16進数の1桁にきれいに対応するという性質にあります。2進数の「1111」は16進数では「F」の1文字で表せるため、桁数の多い2進数を、より短くまとめて表現する手段として重宝されています。

16進数と10進数の変換

16進数の「F」は10進数の「15」、16進数の「10」は10進数の「16」に相当するというように、決まった計算方法で相互に変換できます。プログラミングの現場では、こうした変換を意識する場面がしばしば登場します。

16進数が使われる場面(カラーコード)

身近な例として、Webサイトなどで色を指定するカラーコードがあります。「#FF0000」のように「#」に続く6桁の16進数で、赤・緑・青それぞれの明るさを2桁ずつ表しており、この組み合わせによって無数の色を細かく指定できます。

16進数が使われる場面(メモリアドレスやエラーコード)

コンピューターの内部では、メモリ上の場所を示すメモリアドレスや、プログラムの不具合を示すエラーコードの表示にも16進数がよく使われます。桁数の多い2進数の情報を、人間にも扱いやすい短さで表現できることが、こうした場面での採用理由です。

16進数の表記方法

16進数だと一目で分かるように、数値の前に「0x」を付けたり、末尾に「H」を付けたりする表記のルールがよく使われます。「0x1A」や「1AH」と書かれていれば、これが10進数ではなく16進数であることを示しています。

なぜ16進数が便利なのか

2進数はコンピューターにとって扱いやすい一方、桁数が多くなりすぎて人間には読みづらいという弱点があります。16進数は2進数の情報量を保ったまま、桁数を4分の1に圧縮して表現できるため、コンピューターの内部データを人が確認・記録するうえでの、実用的な橋渡し役を果たしています。

10進数 2進数 16進数 備考
9 1001 9 ここまでは数字のみ
10 1010 A アルファベットに切り替わる
15 1111 F 1桁で表せる最大値
16 10000 10 桁が繰り上がる

あわせて知っておきたい用語

  • 2進数
    0と1の2種類の数字だけで数を表す、コンピューターの基本となる表記方法
  • ビット(bit)
    コンピューターが扱う情報の最小単位
  • バイト(byte)
    8ビットをひとまとめにした、データ量の基本単位
  • カラーコード
    色を数値で指定するための表記方法

コメント

タイトルとURLをコピーしました