問題タブ [mantissa]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
582 参照

floating-point - 仮数ビット幅を減らす

うーん、これは自力で出せなくて恥ずかしいのですが..浮動小数点数の仮数(と指数)のビット
数を減らすにはどうすればいいでしょうか?


私は (畳み込み) 人工ニューラル ネットワークをトレーニングしています (そしてそれを FPGA に実装しています)。CPU での仮数 (および指数) ビット幅とテスト (およびトレーニング) 精度の関係を調べたいと思います (およびGPU)。次のステップは、フロートを固定小数点表現 (FPGA で使用しているもの) に変換し、どうなるかを確認することです。

同様の種類の研究が他の研究者によって既に行われているため ([Tong, Rutenbar and Nagle (1998)] および [Leeser and Zhao (2003)])、「方法」はまだわかっていませんが、これを行う方法があるはずです。私には明らかです。

最後のポイント、私は Lua でプログラミングしていますがffi、LuaJIT を使用して C のものを簡単に含めることができます。

0 投票する
1 に答える
453 参照

binary - バイナリ -> 符号付き仮数

符号付き仮数に 0xFA を書き込む方法を教えてください。バイナリ=1111_1010に変換しました。ここからどこへ行くべきかわからない。

問題は、「レジスタファイルが合計8ビット幅の場合、符号付き仮数部に次のように書きます。」

また、符号付き仮数の説明は素晴らしいでしょう!

0 投票する
1 に答える
147 参照

c - printf の仮数部の値がわずかにずれています

私はC言語がまったく初めてです。ここで取り上げようとしています。皆さんが私を少し助けてくれることを願っています。私が愚かなことを尋ねた場合は事前に申し訳ありませんが、この特定の質問に対する答えを実際に見つけることができませんでした. 私の英語もごめんなさい。

とにかく、以下は私にとって問題なく動作する私のコードです。

printfの結果が表示されます

しかし、Crit_Dmg と Magic_Dmg の値を高くすると、仮数が入力どおりに不正確になります...

たとえば、私はに変更しました

printfは以下のように見えます

仮数部が入力どおりに表示されないのはなぜですか? どうすれば修正できますか?

0 投票する
1 に答える
3309 参照

c - 32 ビット浮動小数点数から符号、仮数、指数を抽出する方法

そのため、uint32_t として指定された浮動小数点数から符号、指数、および仮数を抽出する必要があるタスクを取得しました。私は C でそれをしなければなりません。

符号については、MSB を検索します (最上位ビット。数値が 0 か 1 かによって、数値が正か負かがわかるため)

または、私の考えに直行しましょう。32 ビットの数値を 3 つの部分に「継ぎ合わせる」ことはできますか?

msb/sign の 1 ビットを取得します。次に、指数を表す 1 バイトが続き、最後に仮数を表す 23 ビットが続きます。

おそらくそのようには機能しませんが、ヒント/解決策を教えてもらえますか? 私はfreexpを知っていますが、Cをもう少し学ぶ別の方法が必要です.ありがとう.

0 投票する
2 に答える
56 参照

floating-point - 負数の浮動小数点表現

使用して....

仮数の符号ビット 2 の補数の 8 ビット指数 23 ビット仮数

次のようにコーディングします: -28.625

誰かがこれを行う最も簡単な方法を教えてもらえますか...講師はあまり役に立ちませんでした!

0 投票する
1 に答える
622 参照

c++ - double を 64 ビット ieee754 に変換するにはどうすればよいですか?

私はこのコードを持っています:

double の 64 表現を取得したい。

何を変更する必要がありますか?