本文へスキップ

平成22年度 春期 ITパスポート試験 問52

この問題の解説と、これまでの解答の記録です。

問52
頻出度★★☆

2進数 1.101 を 10 進数で表現したものはどれか。

出典 平成22年度 春期 ITパスポート試験 問52
解説

問 52

  • 不正解ア

    1.2 は誤りです。2進小数を 3桁で表せる値は 0.125 (=2^-3) の整数倍に限られ、1.000、1.125、1.250、…… のように 0.125 刻みの値しか作れません。1.2 はこの刻みに乗らないため、そもそも 1.101 のような有限桁の2進小数では表現できない値です。逆に 1.2 を2進数に直すと 1.0011001100…… と循環し、有限桁で終わりません。

  • 不正解イ

    1.5 は 2進数 1.1 (=1 + 0.5) を10進数にした値で、小数第3位の 1 (=0.125) を数え落としたときの誤答です。1.101 には小数第3位に 1 が立っているので、0.125 を必ず加算しなければならず、1.5 では 0.125 だけ不足します。

  • 不正解ウ

    1.505 は、小数部の重みを 2 で割っていく (0.5、0.25、0.125) のではなく、10 で割っていく (0.5、0.05、0.005) と勘違いしたときに出る値です。1 + 0.5 + 0 + 0.005 = 1.505 となりますが、2進数の位取りの底は 10 ではなく 2 なので、この重み付けは誤りです。

  • エ

    正解 正解は「エ」の 1.625 です。2進数の小数は、小数点の左の桁から順に 2^0、2^-1、2^-2、2^-3 …… という重み (位取り) を持ちます。つまり小数点より右は 1桁ごとに 0.5、0.25、0.125 と半分ずつ小さくなります。1.101 を桁ごとに分解すると、整数部の 1 が 1×2^0 = 1、小数第1位の 1 が 1×2^-1 = 0.5、小数第2位の 0 が 0×2^-2 = 0、小数第3位の 1 が 1×2^-3 = 0.125 です。これらを合計して 1 + 0.5 + 0 + 0.125 = 1.625 となります。分数で確認しても 1 + 1/2 + 1/8 = 8/8 + 4/8 + 1/8 = 13/8 = 1.625 で一致します。

ここがポイント
  • 2進小数の位取り: 小数点より右の桁の重みは 2^-1=0.5、2^-2=0.25、2^-3=0.125 と 1桁ごとに半分になる。10進数へ直すには、値が 1 の桁の重みだけを合計すればよい。
  • 基数変換の考え方: n 進数の各桁の重みは基数 n のべき乗であり、小数部は n^-1、n^-2、…… となる。2進数の小数第3位までで表せるのは 0.125 刻みの値だけ、という感覚を持っておくと選択肢の絞り込みが速い。
用語

解答の記録