1

重複の可能性:
10進数からIEEE 754単精度浮動小数点形式に変換するにはどうすればよいですか?

(0.01)未満の誤差で21.36の2進数に相当するものを計算する方法

21をバイナリ10101に、36をバイナリ100100に変換しましたが、どのように進めるか、誰かを助けてください。

4

1 に答える 1

1

小数部は、数値自体としてではなく、小数として変換する必要があります。36をバイナリに変換することは、0.36をバイナリに変換することと同じではありません。

分数を2進数に変換することも同じように機能しますが、1、2、4、8などを使用する代わりに、1 / 2、1 / 4、1/8などを使用します。

0.36を表すには:

0 times 1/2 (0.5)
1 times 1/4 (0.25), leaves 0.11
0 times 1/8 (0.125)
1 times 1/16 (0.0625), leaves 0.0475
1 times 1/32 (0.03125), leaves 0.01625
1 times 1/64 (0.015625), leaves 0.000625

これで0.01未満になるため、21.36に十分近い数の完全なbianry表現は次のようになります。

10101.010111

その10進数の正確な値は21.359375です。

于 2012-12-26T12:46:46.653 に答える