OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

浮動小数点数について

  • 暇なときにでも
  • 質問No.233139
  • 閲覧数139
  • ありがとう数1
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 27% (17/61)

現在情報処理の勉強をしているのですが、下記の問題が解けません。。
もし、わかりすく教えてもらえれば,,,と思い、、、

数値を16ビットの浮動小数点数で表現する。10進数0.375を正規化した表現を、2進数であらわすとどうなるか求めよ。ここでの正規化は仮数部の有効数字よりも上位の0がなくなるように指数部を調整する操作である。
仮数部の符号(正は0 負は1)(1ビット)
奇数を2とする指数部で、負数は2の補数(4ビット)
仮数の絶対値(11ビット)
で、
答えは 0111 1110 0000 0000
なのですが、この指数部がどうしてもわかりません。
初心者なので、、わかりやすく教えてくだされば、、うれしいな。と思うのです。
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル14

ベストアンサー率 50% (1122/2211)

まずは、0.375(10)を二進表記にすると 0.011(2) になります。

ここで「正規化」は

> ここでの正規化は仮数部の有効数字よりも上位の0がなくなるように指数部を調整する操作である。

と定義付けられていますが、ちょっと曖昧(*)です。回答から察するに 0.???? × 2の? 乗 という表現に
すれば良さそうです。

  (*) ?.??? × 2の? 乗 という表現も立派な正規化です

で、話を戻して、0.011(2) を正規化した表現で書くと 0.11 × 2^(-1) ですね。

正の数ですから仮数部の符号ビットは0。
指数部は -1 の4ビットの二の補数表現ですから 1111 ですね。
仮数部は 110 000 000 です(0.11 の分かりきっている0を除いて、11ビットに左詰にする)。


> この指数部がどうしてもわかりません

二の補数表現が分かりませんか?

細かい話を脇においておくと「ビットを反転したものに1を足したもの」が二の補数です。


# 説明が余り上手ではないなあ、という意味で「自信無し」としておきます (^^;
お礼コメント
noriemon

お礼率 27% (17/61)

よーーーーくわかりました。
0.11 × 2^(-1)の部分を11 × 2^(-3)と勝手に考えてしまっていました。
大変わかりやすい説明でした。
ありがとうございました。
投稿日時 - 2002-03-11 17:29:55
-PR-
-PR-
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ