Problem mit Status der FPU
-
warum ist in folgenden Anweisungen der Status der FPU immer 0x00?
double ovflow = DBL_MAX/DBL_MIN; cout << "ovflow = " << ovflow << " FPU Status is: 0x" << setbase(16) << _status87() << endl; _clearfp(); double underflow = DBL_MIN/DBL_MAX; cout << "underflow = " << underflow << " FPU Status is: 0x" << setbase(16) << _status87() << endl; _clearfp(); double inexact = 1.0/3.0; cout << "inexact = " << inexact << " FPU Status is: 0x" << setbase(16) << _status87() << endl; _clearfp();
Als Ausgabe bekomme ich:
ovflow = 1.#INF FPU Status is: 0x0 underflow = 0 FPU Status is: 0x0 inexact = 0.333333 FPU Status is: 0x0
Erwarten würde ich aber 0x4, 0x2 und 0x1.
(s. auch: http://msdn.microsoft.com/en-us/library/e9b52ceh.aspx)
-
Die Frage hat jetzt so irgendwie gar nichts mit C++ zu tun ...
-
Dieser Thread wurde von Moderator/in SeppJ aus dem Forum C++ (auch C++0x) in das Forum Rund um die Programmierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.