掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
バージョンでTrunc結果が異なる (ID:49594)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
Delphi2010(32ビット)のTrunc結果と、Delphi10.2(32ビット)をのTrunc結果が異なるという問題に悩んでおります。 *Delphi2010(32ビット) Trunc( 5 * 0.01 * 100 ) = 5 *Delphi10.2(32ビット) Trunc( 5 * 0.01 * 100 ) = 4 レジスタについて以下を参考に調査したところ、http://verifiedby.me/adiary/pub/kashi/image/201311/roundingmode.pdf PC(浮動小数点演算精度)が2010だと53ビット、10.2だと64ビットとなっていました。 また直接的な原因とは異なりますが、ほかにもFPU設定には下記の違いがありました。 ・IM(無効な数値許容)が2010だとOFF、10.2だとON ・ZM(ゼロ除算許容)が2010だとOFF、10.2だとON Delphiのバージョンアップ時、何かこのような変更報告はありましたでしょうか? またDelphi10.2のTrunc結果をDelphi2010と同じ結果に合わせることは可能なのでしょうか? 以上、よろしくお願いいたします。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.