基本情報技術者試験 -65ページ目
次の 10進小数のうち、2進数で表すと無限小数になるものはどれか。
ア  0.05
イ  0.125
ウ  0.375
エ  0.5


【解説】
基数変換する場合、
 整数部分の基数変換は、2で割り続け、計算過程で出現する余りが2進数の各桁になり、商が0になるまで行います。
この時いつかは必ず商が 0 となります。

小数部分の場合は、2を掛け続けて、整数部分になるものを2進数の各桁とし、最終的に1.0になると終了します。
しかし、小数部分に関しては、2を掛け続けても1 .0 とならない場合があります。

それほど、難しい計算は出てこないので 選択肢を 2を乗じて各々計算してみます。

 0.05
0.05(10) = 0.00001001001001001 ・・・ (2) となります。

 0.125
0.125(10) = 0.001(2) となります。

 0.375
0.375(10) = 0.011(2) となります。

 0.5
0.5(10) = 0.1(2) となります。

また、解答を探す方法として、2進数の小数点以下の計算の場合
少し おおざっぱではありますが、

10進数 0.5  = 1/2   2進数 0.1
10進数 0.25 = 1/4   2進数 0.01
10進数 0.125 = 1/8   2進数 0.001
10進数 0.0625 = 1/16   2進数 0.0001


なので、この値だけ覚えておいて
10進数で問題に出される値が、ほぼこの組み合わせになるので、
2進数の値もその和になるということで、確認できます。
16 進小数 2A.4C と等しいものはどれか。 ア 25 +23 +21 +2-2 +2-5 +2-6          イ 25 +23 +21 +2-1 +2-4 +2-5

ウ 26 +24 +22 +2-2 +2-5 +2-6          エ 26 +24 +22 +2-1 +2-4 +2-5


【解答と解説】
16進数の1ケタは2進数の4ビットに該当します。
つまり、 2A.4C のそれぞれの位を 2進数で表すと、

  2→0010   A→1010  4→0100 C→1100

となります。

2進数のビット列で表すと
 00101010(小数点)01001100
となります。

これを 2進数の重みをつけて表現すると整数の部分は
 2A(16)=(1x25 )+(1x23)+(1x21)      

となります。

小数の部分は 階乗の指数が負になるので、
0.4C(16)=(1x2-2   )++(1x2-5 )++(1x2-6 )
となります。

結果は この整数の部分と、小数の部分の和になるので

2A.4C(16)=(1x25 )+(1x23)+(1x21)+(1x2-2 )++(1x2-5 )++(1x2-6 )
       =2
5 +23 +21 +2-2+2-5 +2-6  

です
解答 ア


コンピュータ内部は、電子回路で構成されています。


電気の流れは その回路を

   

「流れている」状態 か 「流れていない」状態  


の2種類で 判断されます。


その状態を数字で表すとすると、


「電流が流れていない状態」のとき、オフ = 「0

「電流が流れている状態」のとき、オン   = 「1


となるわけです。


つまり、コンピュータの内部において、最少単位の部分は


オン か  オフ であり


数値表現を行うと

0  もしくは   が 格納されているということです。


そこを BIT(ビットと 呼び、コンピュータ内部で表現される数値も BITの集合体であらわされることになります。


だから コンピュータの内部は  と  の羅列だと 思っていいのです。


0 と 1 の世界

この2種類の文字で表現されていく数字列

コンピュータ内部では この2つの文字で表現される 2進数を 使います。



しかし、現在 私たちが 日常使っている数値は


0,1,2,3,4,5,6,7,8,9


と 10種類の文字で表現する  10進数が メインになります。


だからコンピュータの作業過程である 0と1の世界を

 

時には 人間が理解しやすいように  10進数で表現したり、


コンピュータと 人間が 相互に理解しあうのにわかりやすい


8進数 や 16進数 を 使って 考えることが 多いのです。