計算機算術
8ビットのうち下位4ビットを小数部とする固定小数点(符号なし)で、ビット列 0011 1000 が表す値はいくらか。
- A56
- B3.8
- C3.5
答えと解説を見る
正解:C. 3.5
上位4ビットの0011が整数部で3、下位4ビットの1000が小数部で、1ビット目の重みが2⁻¹ = 0.5なので0.5を表します。合わせて3 + 0.5 = 3.5です。言いかえると、ビット列を整数として読んだ56を、小数部の4ビット分の2⁴ = 16で割った値になります(56 ÷ 16 = 3.5)。56は小数点を無視して整数として読んだ値、3.8は2進数の1000を10進数の「.8」と読み違えた値です。
- A. 56は小数点を無視して整数として読んだ値です。
- B. 3.8は2進数の小数部を10進数と読み違えた値です。
- C. 正しい。整数部3と小数部0.5で3.5です。