図に示す16ビットの浮動小数点形式において、10進数 0.25 を正規化した表現はどれか。ここで、正規化は仮数部の最上位けたが1になるように指数部と仮数部を調節する操作とする。
4ビット
1ビット │ 11ビット
↓ ↓ ↓
┌─┬────┬───────────┐
│s│ e │ f │
└─┴────┴───────────┘
s: 仮数部の符号 (0: 正、1: 負)
e: 指数部 (2を基数とし、負数は2の補数で表現)
f: 仮数部 (符号なし2進数)
┌─┬────┬───────────┐
ア│0│0001│10000000000│
└─┴────┴───────────┘
┌─┬────┬───────────┐
イ│0│1001│10000000000│
└─┴────┴───────────┘
┌─┬────┬───────────┐
ウ│0│1111│10000000000│
└─┴────┴───────────┘
┌─┬────┬───────────┐
エ│1│0001│10000000000│
└─┴────┴───────────┘
ウ
10進数の0.25は、2進数で表現すると0.01であり、0.01 = 0.01 × 20 であるが、これでは、仮数部の最上位けたが0となってしまう。
仮数部の最上位けたが1になるようにするには、0.01 = 0.1×2-1 となる。
よって、
s: 仮数部の符号は正だから0。
e: 指数部は −1であり、2の補数で表現するため、1111。
f: 仮数部は10000000000。
問1 | 目次 | 問3 |