ITパスポート試験 / 平成22年度 春期 ITパスポート試験 / 問52
certification-simodake-work

平成22年度 春期 ITパスポート試験 問52 解説 2進数の10進変換

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

  1. ア 1.2
  2. イ 1.5
  3. ウ 1.505
  4. エ 1.625 ✓ 正答

解説

小数点を含む2進数を10進数に変換する手順

2進数の「1.101」を10進数に直すには、各桁の数値を「重み(位の価値)」に掛け合わせて合計します。

  1. 整数部: 1×20=11 \times 2^0 = 1
  2. 小数第1位: 1×21=0.51 \times 2^{-1} = 0.5
  3. 小数第2位: 0×22=00 \times 2^{-2} = 0
  4. 小数第3位: 1×23=0.1251 \times 2^{-3} = 0.125

これらをすべて足し合わせると、1+0.5+0+0.125=1.6251 + 0.5 + 0 + 0.125 = 1.625 となります。

2進数の「重み」という考え方

10進数では、小数点より左側は1、10、100(100,101,10210^0, 10^1, 10^2)という位があり、右側は0.1、0.01(101,10210^{-1}, 10^{-2})という位が続きます。

2進数も仕組みは全く同じです。ただし、基数が2であるため、位が上がるごとに2倍、下がるごとに2で割る(1/21/2倍する)ことになります。

  • 小数第1位: 21=0.52^{-1} = 0.5
  • 小数第2位: 22=0.252^{-2} = 0.25
  • 小数第3位: 23=0.1252^{-3} = 0.125
  • 小数第4位: 24=0.06252^{-4} = 0.0625

このように、2進数の小数部分は「2のマイナス乗」を順番に並べたものとして考えることができます。

数値を変換する時の思考プロセス

試験会場でこの問題に遭遇した際は、まず「小数点以下の桁がいくつあるか」を確認します。今回の「101」は3桁ですので、0.5、0.25、0.125の3つの重みを準備します。

次に、2進数の「1.101」を各桁に分解します。 整数部の「1」はそのまま1。小数部は「1」「0」「1」の順で並んでいます。これらを先ほどの重みに対応させます。

  • 最初の「1」は0.5の場所にあるので、そのまま0.5
  • 次の「0」は0.25の場所にあるので、足し算の影響なし(0)
  • 最後の「1」は0.125の場所にあるので、そのまま0.125

最後にこれらを合計します。「1」+「0.5」+「0」+「0.125」を計算して「1.625」を導き出します。このように分解して考えれば、計算ミスを最小限に抑えることができます。

コンピュータにおける小数の重要性

コンピュータ内部ではすべてのデータが0と1の組み合わせで処理されています。しかし、人間が扱う数値には必ず小数(1.5倍、0.25秒など)が存在します。

もしコンピュータが小数を扱えなければ、科学技術計算や金融取引、画像処理などは一切行えません。今回の問題のように「2進数から10進数への変換」を理解することは、コンピュータが現実世界の曖昧な数値情報をどのように解釈・管理しているのか、その基礎知識を身につけることに他なりません。

また、実務において、ネットワークのサブネットマスクの計算や、プログラムでのビット演算を行う際にも、この「2のべき乗」の感覚が非常に重要になります。小数の扱いを知ることは、IT技術者としてデータの本質を正しく理解するための第一歩となります。

参考リンク

学習の記録にははてなブックマーク!

気づいたこと・覚えたことをコメントにメモしよう