進数の表記と変換

進数の表記と変換

ネットワーク周りのお仕事をしていると2進数や10進数、16進数といった様々な「進数」を扱うことがあります。
現代の日本では0から9の10種類の数で表記するので10進法と呼ばれているものが一般的な表記になっています。
先述したその他の進法である2進法と16進法は同じ要領で0,1のみで表記のものが2進法と呼ばれ16進法は0から9の他に,アルファベットのAからFも使います。

●進数の使いどころ

そんなに種類がある進法ですが2進数や10進数、16進数のほかにも様々なものがありますが代表的な3種類はどういったところで使用するのでしょうか。

10進法は現在一般的な表記になっている事は書きましたが2進法は主にコンピュータなどのデジタル機器の内部で利用されています。
16進法はコンピュータでは2進数などと並んで扱うことも多く、 例えばASCIIコードや日本語の文字コード、色を示すカラーコードなどは16進数を使用しています。
またIPアドレスはv4では10進法でv6では16進法で表記しています。

●進数の変換

10進法の表記を2進法に直したり、その逆などを計算する場面が多々出てきます。

・2進法から10進法
今度は、1111011という2進数を10進数に変換してみます。
7桁の2進数がある場合、桁を右から1,2,4,8,16,32,64と「桁の重み」をあてはめ下の図のように計算します。

今回は7桁なので4×0も計算していますが足し算に影響しないので桁数が多い場合は0を×箇所は計算せずにとばしてしまうと楽でしょう。

・10進法から2進法

123という10進数を2進数に変換してみます。
123を2で割った商と余りを求めることを、商が0になるまで繰り返し余りを図のように下から上に向かって書き並べた1111011が、変換後の2進数となります。

割り算や掛け算など変換時に異なる計算法になり余りを読み取ったり、桁の重みという学校では習わないような概念も出てくるので後は練習あるのみになりますがネットワーク周りの仕事をしようとすると避けて通れないのでスムーズに計算できるようにしていきましょう。