6.データの内部表現

6.1 2 進数

  我々は,通常,数値を表すのに 10 進数を使用します.10 進数では,0 から 9 までの 10 個の記号を使用し,各桁はその桁に対応した 10 のベキ乗の重みを持っています.例えば,365 や 3.14 は,以下のような意味を持っています.

   3653*102+6*101+5*100
   3.143*100+1*10-1+4*10-2

  コンピュータでよく使用される 2 進法binary)は,0 と 1 の記号だけを使用した数値表現方法です.一般に,bnbn-1・・・b1b0.c1c2・・・cm と書かれ,その意味するところは以下の通りです.

   bn*2n+bn-1*2n-1+・・・+b1*21+b0*20+c1*2-1+c2*2-2・・・+cm*2-m
      bi,cj: 0 または 1

例えば,10 進数の 6,17,0.25,3.625 は,2 進数では以下のように表現されます.

   6 = 4+2 = 1*22+1*21+0*20 = 110
   17 = 16+1 = 1*24+0*23+0*22+0*21+1*20 = 10001
   0.25 = 0*20+0*2-1+1*2-2 = 0.01
   3.625 = 2+1+0.5+0.125 = 1*21+1*20+1*2-1+0*2-2+1*2-3 = 11.101