No.4ベストアンサー
- 回答日時:
の解説を手掛かりに解説してみます。
私も勉強させてもらいました。やっと納得と言うところです。
左からのビット(列。24ビット。Realからくる。)を考える。
第1--符号(サイン)を表す1ビット。正は0、負は1
この質問に出てくる、1は正で0。
第2ビットから第9ビットまで8ビット--指数部。
Exponent部。
1は1.0×2の0乗であるから0000000 0であるはずだが、バイアス(Bias。#2の ご回答に出てくる。)オッフセット値127=2 進数で1111111を加えるので、11111 11が指数部となります。
第10ビットから第24ビットまで---仮数部。 Mantissaと言う。仮数部は、1は2の1乗だから1のはずが、「仮数は先頭の1を省略し、」(上記サイトより学んだ)で0になる。
以上サインビット+指数ビット+仮数ビットを寄せ集めると0.01111111.000000000000000(.は区切りを判りやすく入れたもの)となり、左から16進のため4ビットずつとって
0011=3
1111=F
1000=8
0000=0以下同じ0.
で「3F800000」となります。
●「Baiasが127」と「仮数は先頭の1を省略し、」
の意味は、なんとなく掴めるのですが、知っていないと
どうにもならないところですね。
VBレベルでこの変換をするのは無意味(必要性はない)と思いますが、敢えてなさるのなら、上記ロジックを参考にしてVBで実現されては。Real型が出てくるのはPascal系か。浮動小数点数=Float型+Real型です。
No.3
- 回答日時:
> real型で表すとと3F800000になります。
分かりました。これは、例えば real 型変数 A があって、
A = 1.0
とすると 1.0 が自動的に内部表現のデータに変換されて A に入れられるのですが、その内部表現のデータを 16 進数であらわすと 3F800000 になるということです。
計算機や言語が違うと 1.0 は 3F800000 以外のデータになることもあります。
普通 1.0 が 3F800000 になると言うことは覚えておかなくてもよくて、1.0 は 1.0 と思っていればいいと思うのですが。何をしたいのでしょうか。
回答ありがとうございます。
>普通 1.0 が 3F800000 になると言うことは覚えておかな>くてもよくて、1.0 は 1.0 と思っていればいいと思うの >ですが。何をしたいのでしょうか。
私も分かりません(^^;。ただこういう表し方で行っているのでそれに合わさないといけないので。今更の変更が効かないので・・・まそういうわけです。
ありがとうございました。
No.2
- 回答日時:
Bias=127ですから378(0x7f)になります。
1ビット省略されているので変に感じます。
Sign Exponent Fraction Bias
Single Precision 1bit 8bit 23bit 127
参考URL:http://research.microsoft.com/~hollasch/cgindex/ …
回答ありがとうございます。
すみません。内容が私には高等すぎてよく分かりません。
また補足いただければありがたいです。
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語について。 5 2023/06/27 18:37
- その他(OS) Windowsで大量の画像サイズを半自動で変更する方法 6 2023/02/17 08:45
- カスタマイズ(バイク) HONDA VTR250("03)のメーター類交換について質問があります。 使用していた純正メーター 1 2023/01/29 22:16
- 数学 フーリエ変換後の負の周波数成分の扱いについて 4 2022/09/03 10:18
- au(KDDI) 明日Docomoからauに乗り換え予定なのですが気をつけた方がいい事とかありますか? 明日からauに 5 2023/03/17 23:09
- フリーソフト フォルダ、ファイル名の一括変換について 3 2023/03/16 09:23
- リフォーム・リノベーション 給水栓取り付けネジについて 4 2022/08/21 14:21
- その他(パソコン・周辺機器) 3色ケーブルをHDMI入力端子に繋いでも映らない 4 2022/07/09 19:26
- 日本語 なぜ「壊石料理」と記述するのでしょうか? 26 2023/06/17 13:01
- 工学 疑似乱数生成器 3 2023/01/05 02:06
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「彡」って文字はなんという文...
-
セル内の文字列が日本語か英語...
-
EBCDIC⇒SJIS変換の方法
-
Excelマクロにて30分単位の計算...
-
CString ←→ BSTRの変換について
-
友人とのラインで 「~MBと書く...
-
sedで日本語の置換方法について
-
英数字を含む文字列(0-9,A-Z)...
-
DOUBLE型の16進HEX文字列変換に...
-
C言語でUTF-8コードで読み込ん...
-
PL/SQLでSJISの文字コードを取...
-
%fと%gについて
-
10進数→2進数への変換
-
COBOLによる全角・半角混...
-
ビット反転(Not)が機能しない
-
フォームのコントロールのバッ...
-
std::stringからLPCWSTR型への変換
-
VisualBasic6からVB2005に移行...
-
VB.NETのコンソールアプリケー...
-
JISコードにエンコードすると、...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EBCDIC⇒SJIS変換の方法
-
セル内の文字列が日本語か英語...
-
「彡」って文字はなんという文...
-
std::stringからLPCWSTR型への変換
-
VS 2008(VB.NET)
-
ExcelVBA実行後に時々落ちる
-
ふりがなをアルファベット化す...
-
Excelマクロにて30分単位の計算...
-
Symfowareでのデータ型変換につ...
-
英数字を含む文字列(0-9,A-Z)...
-
JIS → S-JIS コード変換するには
-
sedで日本語の置換方法について
-
COBOLによる全角・半角混...
-
フォームのコントロールのバッ...
-
数字5桁文字コード?
-
バイナリデータ→ASCII 変換プ...
-
2バイト文字をJEFからSJISに変...
-
VBScript ASC関数:文字エンコ...
-
CString ←→ BSTRの変換について
-
入力した文字を全て自動で全角...
おすすめ情報