アプリ版:「スタンプのみでお礼する」機能のリリースについて

2^{24}を32bit整数表現及び32bit(単精度)浮動小数点表現で表せ。
結果は16進数で示せ。

符号ビット:MSB
指数部n:7ビット
仮数部:24ビット


という問題があるのですが、
解いてみたものの、答えもないのであっているのか分かりません。
以下の答えで合っているでしょうか?
また、合っていなかったら、どのように解くのか教えていただけませんか?

整数表現
0100 0000H

浮動小数点
0100 1000 0100 0000 0000 0000 0000 0000

A 回答 (5件)

すいません。

訂正です。
2^24 = 0.1h*16^7 ですので、47100000hですね。
    • good
    • 0
この回答へのお礼

訂正ありがとうございます!

お礼日時:2008/06/29 23:41

>整数表現 0100 0000H



正しいです。最下位ビットが2の0乗なので,2^{24}は 右から25ビット目がオンです。

>浮動小数点
>符号ビット:MSB 指数部n:7ビット 仮数部:24ビット

上記の前提自体が現在もっとも広く採用されている標準規格IEEE754とは異なりますので,「指数部7ビットにはどんな形式で値が格納されているのか」「同様に,仮数部:24ビットの形式はどうか」というさらなる前提がないと解答できない問題だと思います。(この点をANo.3では補足しているわけです)

IEEE754による「指数部:8ビット,仮数部:23ビット」「指数部の+127バイアス表現」「仮数部の隠れ1表現」を用いるなら,2^{24}は次のような2進数になります。
+-+--------+-----------------------+
|0|10010111|00000000000000000000000|
+-+--------+-----------------------+

IEEE754については私の過去の回答を参照。
http://okwave.jp/qa3739494.html
    • good
    • 0
この回答へのお礼

問題文に詳しい指定がされているのを見逃していました。すみません。
私のノートに書いてあった方式と、問題文の方式は違うものでした。

jjon-comさんの仰っているIEEE754という方式でしたので、
過去の回答を参考にさせて頂きます。
答えまでお教え頂けたので、大変助かりました。
ありがとうございました!

お礼日時:2008/06/29 23:40

浮動小数点数の内部表現はいろいろな方法があります。


IBM方式(エクセス64)と呼ばれる方法であれば、質問者の考え方であっています。
--- エクセス64 ---
符号部は0を正、1を負とする
指数部は16を基数とし、実際の指数に64を足した値で表す
仮数部は1以下の2進小数とする
    • good
    • 0
この回答へのお礼

浮動小数点数といえば、JaritenCatさんが仰っているIBM方式だと思い込んでいましたが、
よく読んでみると問題文からの指定では違うものでした;;
でも、この方式での解き方も大体が当たっているようでよかったです。
ありがとうございました!

お礼日時:2008/06/29 23:36

整数表現はあっていると思います。

この回答への補足

どのように解いたのかを説明しておくべきだと思い、
追記させていただきます。

2^24なので2進数24bit目を1にすればいいと思い、

0000 0001 0000 0000 0000 0000 0000 0000 B
これを16進数に直し、
0 1 0 0 0 0 0 0" H (1) 
としました。

浮動小数点数は、
(1)式の0"の右に小数点があるので正規化し
0.0100 0000 * 16^8
とし、

MSB 指数部   仮数部
↓  ↓     ↓
0 | 100 1000 | 0100 0000 0000 0000 0000 0000 |
としました。

16進数に直すと
4 8 4 0 0 0 0 0 H

でいいのでしょうか・・・?

補足日時:2008/06/29 22:06
    • good
    • 0

残念ながらどちらもハズレです。



2の24乗、
整数表現ではつまり右から24ビット目がオンでしょう。

浮動少数点では単精度にもなっていません。
符号1ビット、指数7ビット、仮数24ビット、計32ビット
です。128ビットになっていませんか? もしかして
2進表現ですか? 問題は16進数で表せとなっています。

浮動小数点の正確な表現は忘れてしまいましたね。
精度が単純な例では、多くの表現が可能ですね。
適当に表現して正規化かな?

この回答への補足

浮動小数点の答えを2進数のまま表記してしまいました。
すみません。

整数表現も間違ってますか・・・

補足日時:2008/06/29 21:38
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!