高校三年生の合唱祭で何を歌いましたか?

●指数部の表現方法
・2の補数を使う場合
101.011 → 0.101011 × 23
指数部は3 → 00000011
0.00101 → 0.101 × 2-2
指数部は-2 → 11111110

・イクセスを使う場合
101.011 → 0.101011 × 23
指数部は3 → 3 + 127 = 130 → 10000010
0.00101 → 0.101 × 2-2
指数部は-2 → -2 + 127 = 125 → 10000001

の2種類の求め方があるみたいですが、どちらの指数部を使ってもよろしいのでしょうか?

A 回答 (1件)

その「浮動小数点数」を処理する側で合意が取れていれば、どの方法を使っても全然問題はありません。


どちらを使うかは、「ソフトウェアの仕様をどう決めるか」という仕様策定の問題ですし、
仕様上どちらかに決められているなら、それに従わなければいけないだけです。

ちなみに、浮動小数点数表現の規格である IEEE754 の場合
http://ja.wikipedia.org/wiki/IEEE_754
エクセスを採用しています。
ただし、仮数部の表現が質問者さんとは異なり、
最上位桁が1の位になるようにし、仮数部の1の位はかならず1なので記録しません。
例えば、float(32bit)の場合、符号1bit指数部8bit仮数部23bitなので、

101.011=1.01011×2^2 正なので符号は0 指数部は2+127=129 仮数部は .01011 を記録
→ 0 10000001 01011000000000000000000

0.00101=1.01×2^-3 正なので符号は0 指数部は-3+127=124 仮数部は .01を記録
→ 0 01111100 01000000000000000000000

となります。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報