1.基数と基数変換

 


    *** 基数 ***

    コンピュータの基礎を理解する上で、基数についての理解は必須である。

    10進数では、10になると桁が1つ繰り上がるが、2進数では、2で桁が1つ上がる。
    この桁の繰り上がる基準となる数のことを基数という。


    ☆10進数と2進数、16進数との対応表
   
10進数 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
2進数 0 1 10 11 100 101 110 111 1000 1001 1010 1011 1100 1101 1110 1111
16進数 0 1 2 3 4 5 6 7 8 9 A B C D E F


    2進数は、0又は1の数字で表現し、
    16進数は、1から16までを0〜9、A〜Fの文字で表現する。

    ・IPv4(Internet Protocol Version 4)

    IPアドレスを10進数で表記し、
    0.0.0.0 〜 255.255.255.255(10進数) = 0.0.0.0 〜 11111111.11111111.11111111.11111111(2進数)
    のように8bit区切り合計32bitの長さとなる。

    ・IPv6(Internet Protocol Version 6)

    IPアドレスを16進数で表記し、
    2005:1000:0ab0:0000:0000:1234:5678:fe5e
    のように16bit区切り合計128bitもの長さとなる。
     
    ・NIC(Network Interface Card)

    LANカード等のNICには、MACアドレス(Physical Address)があり、
   
12桁の16進数表記で、
    00:00:EB:5D:02:C1
    のように8bit区切り合計48bitの長さである。
 


    *** 基数変換 ***

    ① 2進数→10進数

    8桁の2進数を10進数に変換するには、
    上の位より、

    128    (= 2^7)
    64    (= 2^6)
    32    (= 2^5)
    16    (= 2^4)
    8    (= 2^3)
    4    (= 2^2)
    2    (= 2^1)
    1    (= 2^0)

    の10進数を当てはめ、1がある場合のみその数字を抜き出し、加算していく。
    例:    11111111(2進数) = 128+64+32+16+8+4+2+1 = 255(全て抜き出すと255になる)


    ② 10進数→2進数

    10進数を8桁の2進数に変換するには、 128、64、32、16、8、4、2、1(10進数)の順番で、
    元の10進数の数字になるまで加算しながら、
    加算した場合は1を、加算しない場合は0を、左側より8桁書き出していく。

    例:    255(10進数) = 11111111(128 から 1までを全て加算すると255になる)


      


    NEXT: 章末テスト


目次 TOP