10進数から16進数へ変換する方法

ここでは、まず初めに16進数の基本を解説し、その後10進数から16進数へ変換する方法を解説します。

16進数の基本

16進数とは、0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,Fの16通りの記号を使って数を表現する方法です。使い慣れている10進数は、0,1,2,3,4,5,6,7,8,9と10通り記号を使って数を表現していますので、はじめはとっつきづらいかも知れませんが、理屈を覚えてしまえば簡単です。

16進数を10進数に割り当てると以下のようになります。

10進数と16進数の対応表

10進数では、基数が10なので10の累乗でケタが上がるので「10」になりますが、16進数で基数が16なので、16の累乗でケタがあがるので、「10」ではなく「A」となります。このように、16進数ではひとケタで10進数の15までの数を数えられることが分かります。

さらに16進数を2進数に割り当てると以下のようになります。

10進数、2進数、16進数の対応表

このように、2進数で4ケタあれば、16進数の1ケタ全てを表現できることが分かります。

上の基本を押さえた上で、10進数から16進数への変換方法を説明します。

10進数から16進数への変換

10進数から16進数へ変換するには、まず、10進数を2進数へ変換し、次に2進数から16進数へ変換します。

例として、10進数の「53」を使って説明します。

10進数を2進数へ変換する

10進数の「53」を2進数へ変換すると、「110101」になります。

2進数を16進数へ変換する

16進数では、2進数の4ケタをひとかたまりとしますので、2進数の「110101」を4ケタずつに分割します。このとき、4ケタに足りない部分については、ケタに0を追加します。

まず、4ケタずつになるように分割します。

「110101」⇒「00110101」(0を追加)⇒ 「0011」「0101」(4ケタに分割)

そして、分割したそれぞれを、16進数に変換します。

このとき、上で使った、2進数と16進数の割り当てを使うと分かりやすいです。

「0011」⇒「3」

「0101」⇒「5」

このように10進数の「53」は16進数では「35」となることが分かります。