問題タブ [floating-point-exceptions]

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 投票する
2 に答える
257 参照

c - 浮動小数点の例外と大きすぎる一定の警告?

uint64_tこれは学校の課題のためであるため、コードを投稿することを躊躇していますが、基本的には非常に大きくなる可能性のあるコードを繰り返す必要があります。

したがって、基本的に10文字の長さになる値があります。元々はでしたがint、コードは部分的に機能します(ただし、想定される出力の作成は完了しません)が、エラーが発生します"warning: integer constant is so large that it is unsigned"

int次に、これを(10倍されている)に変更するuint64_tと、浮動小数点の例外が発生します。

コードなしの洞察はありますか?

編集:少しのコードを追加しています...

^これにより、浮動小数点の例外が発生します。

これで十分かどうかはわかりません。

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

c++ - 浮動小数点例外エラーが発生するのはなぜですか?

私は初心者プログラマーですので、ご相談ください。私はデータを分析するプログラムを書いています。プログラムを実行すると、「浮動小数点例外」が発生しますが、その理由がわかりません。これは、エラーの原因となっているコードのセクションです。私の知る限り、そのif発言が問題のようですが、その理由はわかりません。あなたが与えることができるどんな助けも大歓迎です!

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

c - 埋め込みコードで浮動小数点例外を処理するための最良のアプローチはどれですか?

エンジニアリング計算にIEEE754浮動小数点演算(NaNおよびInfsを使用)を使用したいセーフティクリティカルな組み込みプログラム(C)に取り組んでいます。ここでは、浮動小数点の例外を処理するための2つのアプローチ(afaik)があります。

  • 例外が発生した場合は、永続的な障害状態になります。これは、エラー検出の観点からはより堅牢である可能性がありますが、フォールトトレランス/可用性には適していません。
  • 例外を無視し、それらが有限数(完全な計算に成功)またはNaN、inf(失敗した計算)であるかどうかの最終結果を確認します。このソリューションはフォールトトレラントですが、出力が誤ってチェックから除外される可能性があるため、リスクが高くなります。

    1. セーフティクリティカルシステムでより良い解決策はどれですか?
    2. 他に選択肢はありますか?
    3. 計算の複雑さが最初の解決策を許可しない場合(通常の使用法では例外を回避できません)、最終チェックは十分ですか、それとも考慮すべき他の側面がありますか?
0 投票する
1 に答える
729 参照

c - これのどの部分が浮動小数点例外を引き起こしますか?

人々がこのコードのスニペットを見て、浮動小数点例外の考えられる原因を教えていただければ幸いです。

情報:

  • ブランチはサイズ 200 の int 配列です
  • line は char 配列サイズ 20 です
  • ループが 6 回正常に実行された後、例外が発生します。

これを引き起こす可能性のある除算、浮動小数点数、または整数がないため、私は混乱しています。

0 投票する
0 に答える
304 参照

flash - x64 で Flash ActiveX コントロールが浮動小数点例外をスローする

Flash Player のアクティブ x コントロールを使用する MFC ダイアログがあります。x86 プログラムでは問題はありませんが、x64 用にビルドすると、ダイアログのメッセージ ループで浮動小数点例外がスローされ始めます。私はこれらの最初のものを処理できますが、すべてではありません。

コントロールの作成は OnInitDialog() のように行われます

最後のループで例外がスローされます。

例外フラグのリセットまたは SEH ハンドラーの使用が機能しない

キャルスタックは以下の通り

mshtml.dll!CLayout::GetElementLayoutTransform()
mshtml.dll!CLayout::CalcSize()
mshtml.dll!CLayout::CalcTopLayoutSize()
mshtml.dll!CView::EnsureSize()
mshtml.dll!CView::EnsureView()
mshtml.dll!CDoc::RunningToInPlace()
mshtml.dll!CServer::Show()
ieframe.dll!CDocObjectHost::_ShowMsoView()
ieframe.dll!CDocObjectHost::ActivateMe()
mshtml.dll!CServer::ActivateView()
mshtml.dll!CServer::DoUIActivate()
mshtml.dll!CServer::DoVerb()
mshtml.dll!CMarkup::Navigate()
ieframe.dll!CDocObjectHost::_ActivateMsoView()
ieframe.dll!CDocObjectHost::UIActivate()
ieframe.dll!CDocObjectView::UIActivate()
ieframe.dll!CBaseBrowser2::_UIActivateView()
ieframe.dll!CBaseBrowser2::v_ActivatePendingView()
ieframe.dll!CWebBrowserSB::v_ActivatePendingView()
ieframe.dll!CBaseBrowser2::_ExecShellDocView()
ieframe.dll!CBaseBrowser2::Exec()
ieframe.dll!CWebBrowserSB::Exec()
ieframe.dll!CDocObjectHost::_OnReadyState()
ieframe.dll!CDocObjectHost::_OnChangedReadyState()
ieframe.dll!CDocObjectHost::OnChanged()
mshtml.dll!CBase::FirePropertyNotify()
mshtml.dll!CMarkup::SetReadyState()
mshtml.dll!CMarkup::SetInteractiveInternal()
mshtml.dll!CMarkup::RequestReadystateInteractive()
mshtml.dll!CMarkup::BlockScriptExecutionHelper()
mshtml.dll!CHtmPost::Exec()
user32.dll!DefWindowProcWorker()

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

c++ - 浮動小数点例外の問題

私はデバッガーとキャッチアンドスローを試しましたが、どちらにも慣れていないことを告白します。しかし、プログラムで浮動小数点例外の原因を見つけることができません。奇妙なことに、35未満の数値に対して完全に実行されます。それを超えると、例外が発生します。問題はどこにありますか?

どうもありがとう。

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

c++ - 不思議な浮動小数点の例外

重複の可能性:
これらの未定義の動作を誰かが説明できますか(i = i ++ + ++ i、i = i ++など…)

私の友人と私は、考えられる最悪のforループを考え出そうとしていじっていました(したがって、これがひどいコードであるとは言わないでください!)。

私の友人はこれをforループで思いついた:

見た目は問題ありませんが、浮動小数点の例外のため、初めてでも入力できません。ですから、私の最初の考えは、モジュロが0で除算されるということでした。しかし、これを実行すると、正常に実行されるため、そうではないようです。

しかし、これはしません:

しかし、それは見知らぬ人になります。最初のケースは正常に実行され、2番目のケースは正常に実行されません。

だから今では何が起こっているのか本当に混乱していますが、それは再び奇妙になります。(正常に実行された)ケースを? 0 : 1ifステートメントに入れると、浮動小数点例外が再度スローされます。

私はこれで完全に迷子になっています。誰かがここで何が起こっているのか考えを持っていますか?

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

vhdl - ghdl 浮動小数点例外 8

バイト レーン書き込みを有効にして、32 ビット アドレスで SRAM をコーディングしようとしています。しかし、x1F より大きいアドレスにアクセス (読み取りまたは書き込み) しようとすると、GHDL でコンパイルすると「浮動小数点例外 8」が発生します。コードの一部を次に示します。

したがって、テストベンチでアドレスを x0000_001F 以下に設定するとコンパイルされますが、x0000_0020 以上を設定するとコンパイルされません。

0 投票する
0 に答える
135 参照

floating-point-exceptions - MCH1206 浮動小数点オーバーフロー条件

IBM OS400 C ILE プログラム

CプログラムでMCH1206がいつ発行されるか知っている人はいますか? C プログラムにはエラー処理が定義されていません。

私の環境では、オーバーフローが発生するたびに、たとえば result = pow(a,b)

オーバーフローが発生した場合、result は HUGE_VAL に設定され、実行が継続されます。
ジョブ・ログに、「CEESDXPD で浮動小数点オーバーフロー例外が発生しました」というメッセージが表示されます。

ただし、別の環境では実行が停止し、
「浮動小数点のオーバーフロー状態が検出されました。アプリケーション エラーです。ステートメント 00000038 で F07RTB によって監視されていない MCH1206」というメッセージが発行されます。

グローバル処理はありますか (システムレベルで定義されているなど)? 数学ライブラリのグローバル処理?

ありがとう

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

c - 浮動小数点例外を発生させる方法

彼ら。浮動小数点演算を回避する作業を行っています。0.1 は、2 進浮動小数点形式で表される不正確です。だから私はこれを書き留めました

不正確な例外が発生することを期待しています。-fp-trap-all=all オプションをオンにし、fp-mode を strict に設定し、コードに SIGFPE シグナル ハンドラーをインストールしました。しかし、何も起こりませんでした。それから私は試しました

まだ例外をキャッチできません! それは私を夢中にさせます。

申し訳ありませんが、私はついに Linux で Intel C++ コンパイラを使用しています。