【問題】
4バイト(最上位ビットから1ビットの符号ビット、7ビットの指数部、24ビットの仮数部からなる)の数値で表現する浮動小数点を考える
。この形式で表現される浮動小数点数の絶対値は、
16^n * (f1 / 16 + f2 / 16^2 + f3 / 16^3 + f4 / 16^4 + f5 / 16^5 + f3 / 16^3)
となる。ただし、nの負数は2の補数で表すものとする。また、fi(i=1,2,3...6)は、0から15までの数値である。例えば、10進数の16.5は
16.5=16^2*(1/16+0/16^2+8/16^3)…(1)
であるから、浮動小数点形式では16進数表示で02108000・・・(2)
となり、
-16.5は82108000・・・(3)
となる。
分からないのは、問題文中の「例えば~」以降で(1)、(2)、(3)がどうしてそのように表されるのか理解できません。分かる方詳細に教えてください。
No.2ベストアンサー
- 回答日時:
指数関数は y=m*16^x となります。
mが仮数部、xが指数部。ここまではいいですか?
(ここが分からないと数学の教科書を読み返してもらうことに)
次にここが最大の山場なのですが、
仮数部の値は1/16≦m<1 の範囲内になるように調整します。
つまりその状態が(1)です。
上の式に当てはめれば y=m*16^2 となっています。
指数部は2ですね。マイナスは符号ビットが1が立ちます。
すると先頭8ビットは次のようになります。
1 0000010
符号ビット 指数部2
これを合わせると10000010 で最初の82が完成です。
+の場合は符号ビットが0なので02になるわけです。
仮数部は1/16の倍数、つまり16で割っています。
すると余りは必ず 0~15 の範囲に来ます。
ここもよく工夫されているところで 4ビットで1つの桁を表せます。
(1)でも仮数部の並びは 1、0、8 となってますから
4ビット単位で配置していくと108となります。
あとは辻褄を合わせるために後ろに0を埋めていきます。
これで完成になります。
この回答への補足
>>次にここが最大の山場なのですが、
仮数部の値は1/16≦m<1 の範囲内になるように調整します。
つまりその状態が(1)です。
(1)の導出の仕方はないのですか?
自力で見つけるしかないのでしょうか?
No.3
- 回答日時:
>(1)の導出の仕方はないのですか?
ええっとこれはそれほど難しくないのですが、
まずは10進数を16進数に変換できないことには始まりません。
16.5は 16進数で10.8になります。
ここの変換はさすがに自分で計算するよりない。
次に1/16<x<=1 ですが、10.8 を小数点以下にすればいいです。
すると2回右にずらせば0.108となります。
この2回右にずらした状態が 16^2 で割った値になっています。
よって指数部は 16^2 が来ます。
このずらすという行為はシフトとよばれています。
右シフトや左シフトというものを会得されるとより考察が深まります。
No.1
- 回答日時:
16.5 = 0.165*10^2とします。
ここで符号ビットと指数部が決まります。0x00(符号)+0x02(指数)=0x02です。
0.165を1/16で割ると2.75です。1/16の桁が2=0x2になります。
0.165-(2/16)=0.04が余ります。
0.04を1/256で割ると10.24です。1/256の桁が10=0xAになります。
0.04-(10/256)=0.0009375を同様に1/4096で割ると....
022A....となるのではないでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 数学 以下の問題が分かりません。 8ビット浮動小数点数が、最上位ビットから順に符号1ビット、指数部3ビット 4 2023/07/22 16:06
- 情報処理技術者・Microsoft認定資格 情報技術の問題についてです。 10進数の−36を以下のような16ビットの浮動小数点表示にするといくつ 3 2022/05/21 19:53
- 数学 「FFTの基本は、DFTはサンプル数Nが偶数なら 2つのDFTに分解できるということ。 分解するとD 3 2022/03/31 21:01
- Excel(エクセル) エクセルの数式について教えてください。 2 2023/03/04 09:54
- その他(データベース) Accessフォームにて指定のフィールドの平均値を小数点第一位で表示できない 2 2022/08/30 17:19
- 計算機科学 8ビット浮動小数点数 0 1000 100 を10進法 8ビット浮動小数点数 1 1100 011 3 2022/10/28 08:07
- 情報処理技術者・Microsoft認定資格 2進数の問題を教えてください。 1 2022/07/27 09:42
- 計算機科学 2進数の計算について 2進数の値は全て8ビットで負数は2の補数形式とする。結果が8ビットで表現出来な 3 2023/07/22 14:08
- 計算機科学 浮動少数点数で、16ビットで数値を表すとき、 1.0の指数部のビットパターンは、下駄が15なので、0 1 2023/02/07 11:10
- Excel(エクセル) エクセルのセルの書式設定・ユーザー定義の条件設定について 1 2022/08/17 21:56
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SSDのデータがビット落ちにより...
-
6ビット(符号含む)の二進数
-
16ビット浮動小数点数の表現...
-
浮動小数点の問題です。
-
●ビットで表現できる状態は、最...
-
2ビット、3ビット、4ビットのグ...
-
データ量の単位について教えて...
-
エクセルVBAで xlOn xlOff の切替
-
【有効数字について】 授業で、...
-
1Mバイトって何バイト?
-
KBとMB
-
携帯電話の略語であるMBって英...
-
KBのMB違いって
-
EXCELでの16進数取り出し、上...
-
8進数 8進数の47+32の答えを 8...
-
命令網羅率の計算問題です
-
ワードの改行について
-
16進数どうしの乗算
-
実行計画の「COST」と「BYTE」...
-
DVD-R 4.7GBって、何byte でし...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCEL16進⇒浮動小数変換したい
-
エクセルVBAで xlOn xlOff の切替
-
エクセルでビット1をカウント J...
-
2ビット、3ビット、4ビットのグ...
-
16ビットの符号付固定小数点...
-
6ビット(符号含む)の二進数
-
基本情報技術者試験問題
-
9ビットの2進数を符号付整数…
-
16ビット浮動小数点数の表現...
-
データ量の単位について教えて...
-
●ビットで表現できる状態は、最...
-
ALUのオーバーフローフラグの生...
-
EXCELでの16進数取り出し、上...
-
KBのMB違いって
-
文字の容量(サイズ)についての...
-
携帯電話の略語であるMBって英...
-
【有効数字について】 授業で、...
-
1Mバイトって何バイト?
-
実行計画の「COST」と「BYTE」...
-
1TBHDDに音楽ファイルは何ア...
おすすめ情報