- 締切済み
浮動小数点の問題が解りません。
浮動小数点の問題が解りません。 10進数の(46.625)を最終的に16進数で表したいと思っています。2進数の(101110.101)までもっていき、小数点より上の部分は(2E)というところまでは解りました。ですが(.101)の部分が解答ではAとなっているのですがどのように算出したらいいのか解りません。どなたか教えてください。よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- R_Earl
- ベストアンサー率55% (473/849)
回答No.2
2進数を小数点を基準にして4桁ずつに区切っていきます 101110.101 ↓ 10 1110. 101 空位に0をつめて、全部4桁区切りになるようにします。 10 1110. 101 ↓ 0010 1110. 1010 最後に16進数に直します。 0010は16進数の2, 1110は16進数のE, 1010は16進数のAなので 0010 1110. 1010 ↓ 2 E. A となります。 基本的に2進数→16進数に変換する時は、 2進数を(小数点を基準に)4桁区切りにし、 その区切られたものを16進数の数に直すだけで良いです。
- hopper0024
- ベストアンサー率60% (14/23)
回答No.1
46.625 を10進数で小数を使わずに表せ、と言う問題の答が、 「46」「6250」 と書いてあったようなものですね。 小数部分を何ビットで表すのか指示されていませんでしたか? 答から察するに、16進1桁でしょう。つまり 4ビット ですね。 小数部分を16倍して16進数に直せばオッケーです。
質問者
お礼
参考になります!ありがとうございました。
お礼
分かりやすい解答ありがとうございました!!