【2進数・10進数・16進数の変換について】


このHPは2進数・10進数・16進数の変換についてまとめたものです。


1-1 基数変換

コンピューターで扱う数字には、2進数が使われる。0と1の2種類の数字だけで数値を表す。2進数は、数値が大きくなると桁数が多くなり、人には読みづらくなる。 2進数をもう少し扱いやすくするために、 16進数が使われる。また2進数の2、10進数の10を 基数という。また2進数から10進数への変換などを、基数変換という。



※以下に2進数、10進数、16進数の対応表 を示す。





1-2 2進数から10進数への変換

2進数から10進数へ変換するには、右から、1、2、4、8、16、32、64、128の数値を並べ、各ビットに対応する0と1を並べる。そしてビットが1になっている数字を加算していく。これで10進数に変換した数値になる。下記の例で2進数「10101100」を10進数に変換してみる。






1-3 10進数から2進数への変換

10進数から2進数への変換は、変換対象の10進数を答えが1になるまで2で割っていき、その1と各計算での余りを下から並べていく。





従って、172を2進数に変換すると上記のとおり10101100となる

また、通信における情報単位はオクテットが使われる。オクテットは8ビットなので、2進数に変換した結果が8桁よりも小さければ、先頭に0を補う。


1-4 2進数から16進数への変換

2進数から16進数へ変換するには、まず2進数を上位4桁、下位4桁に分けてそれぞれの値を16進数に変換する。

16進数は基数が16だから、それを表現するのには16個の数字が必要。10進数は、10になると2桁になり、9までが一桁だが、16進数は15まで一桁。10〜15までを一桁であらわすのにA〜Fが使われる。 また、16進数である事を示す為に先頭に「Ox」を付ける。下記の例で、2進数「00011001」を16進数に変換してみる。






1-5 16進数から2進数への変換

16進数から2進数へ変換するには、まず16進数で表現された値を1桁づつに分けて考え、その桁を2進数に変換する。 16進数0x2Bを2進数に変換してみる。






1-6 10進数から16進数への変換

10進数から16進数へ変換するには、まずまず10進数の値を2進数に変換し、その値を上位4桁、下位4桁に分けて16進数に変換する。 下記の例で、10進数「125」を16進数に変換してみる。