パソコンからインターネットや社内ネットワークを介して機器と通信するときに、機器の住所である、IPアドレスを指定します。社内のローカルネットワークの場合には機器のIPアドレスに、例えば「192.168.0.10」のように指定します。
IPアドレスはコンピュータ内部では2進数の8bit×4=32bitの数値で処理されます。前述のIPアドレス「192.168.0.10」は、人間が分かりやすいように2進数のIPアドレスを8bitづつ分割し、それぞれを10進数で表しています。(2進数、10進数は前回号も参照ください。)
それでは、IPアドレス「192.168.0.10」を2進数に変換してみましょう。関数電卓を使えば簡単に変換できますが、今回は手計算で、10進数を2進数に変換する方法を以下に紹介します。
〇方法1:
図5のように筆算により、2で割った余りを求めていき、2で割れなくなった時点で、下から順番に並べた数字が変換結果です。
図5 10進数から2進数へ変換 |
〇方法2:
表2のように「1」を一つだけ有する2進数と、10進数との対比を参考にして、下記のように行います。
上記IPアドレスを方法2で2進数に変換します。
・192の変換
10進数で192=128+64となり、2進数では
(10000000)2+(01000000)2=(11000000)2
・168の変換
10進数で168=128+32+8となり、2進数では
(10000000)2+(00100000)2+(00001000)2
=(10101000)2
・0の変換
10進数の0は2進数でも0である。
・10の変換
10進数で10=8+2となり、2進数では
(00001000)2+(00000010)2=(00001010)2
従って192.168.0.10を8bitの2進数で表現すると
(11000000 10101000 00000000 00001010)2
となる。
ちなみに、2進数は0と1の並びのため、桁数が多く見づらいので、ソフトウェア関連では、16進数で表現することが多くあります。
10進数 | 16進数 | 2進数(8bit) |
0 | 0 | 00000000 |
1 | 1 | 00000001 |
2 | 2 | 00000010 |
4 | 4 | 00000100 |
8 | 8 | 00001000 |
16 | 10 | 00010000 |
32 | 20 | 00100000 |
64 | 40 | 01000000 |
128 | 80 | 10000000 |