• 締切済み

浮動小数点の問題が解りません。

浮動小数点の問題が解りません。 10進数の(46.625)を最終的に16進数で表したいと思っています。2進数の(101110.101)までもっていき、小数点より上の部分は(2E)というところまでは解りました。ですが(.101)の部分が解答ではAとなっているのですがどのように算出したらいいのか解りません。どなたか教えてください。よろしくお願いします。

みんなの回答

  • 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進数の数に直すだけで良いです。

kurukuru8000
質問者

お礼

分かりやすい解答ありがとうございました!!

回答No.1

46.625 を10進数で小数を使わずに表せ、と言う問題の答が、  「46」「6250」 と書いてあったようなものですね。 小数部分を何ビットで表すのか指示されていませんでしたか? 答から察するに、16進1桁でしょう。つまり 4ビット ですね。 小数部分を16倍して16進数に直せばオッケーです。

kurukuru8000
質問者

お礼

参考になります!ありがとうございました。

関連するQ&A