私は最初に 10 進数から IEEE 32 float 規格への変換を学んでいますが、ある方法でそれを行っている大学と別の方法で行っている大学からのいくつかの講義スライドと例を見て、現時点では混乱しています。特に、10 進数の 1 と 0 を取得する場合。したがって、1234.567 のような番号がある場合
1234 を 2 進数に変換しても問題ありませんが、10 進数を変換する方法について非常に混乱しています。もともと私はあなたが行くのを見ました
.567 * 2 = 1.134 = 1
.134 * 2 = .268 = 0
.268 *2 = .536 = 0
これが小数点以下の桁数であることに注意してください。しかし、他の例では、小数を決して終わらないポイント (どこで停止しますか?) まで続けています。上記の方法で実行すると、次のようになります。
10011010010 for 1234
10011010010.100
1.0011010010100 x 2 ^ (10).
127 +10 = 137. 137 in binary is 10001001.
So 32 bits of binary is
0 for sign| 10001001 for exp| 0011010010100 0000000000
全部で 32 ビット。これは正しいです?