Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Betriebssysteme (https://www.delphipraxis.net/27-betriebssysteme/)
-   -   Für wen gelten die FPU-Exception-Bits? (https://www.delphipraxis.net/179996-fuer-wen-gelten-die-fpu-exception-bits.html)

Der schöne Günther 16. Apr 2014 09:39

Betriebssystem: Win XP,Win 7

Für wen gelten die FPU-Exception-Bits?
 
Man möge mir verzeihen, das ist wahrscheinlich gradezu Allgemeinwissen dass man einfach nachschlagen können sollte. Ich kann es nicht: Ich finde keine eindeutigen Aussagen.

Es geht um die FPU-Exception Mask: Gilt die (unter Windows) systemweit? Nur für den Prozess? Nur für den Thread? Macht es Unterschiede, ob 32 oder 64 Bit? Macht es einen Unterschied, welches Windows? Macht es einen Unterschied, welche Befehlssätze meine CPU kann?


Wer gerne liest, hier meine optionale Geschichte:
Eine Methode teilte unter Umständen 0.0 durch 0.0 und gab das zurück. Also #NaN.

Ich entwickelte fröhlich vor mich hin. Auf dem Entwicklungsrechner und einer 32 Bit-VM war alles in Butter, es wurde ordnungsgemäß #NaN zurückgegeben.

Beim Kunden bubbelte die Division als "Ungültige Gleitkommaoperation!"-Exception (natürlich deutsche Fehlermeldung auf englischem System, Delphi-Style! 8-)) bis auf die Oberfläche durch.

Ich verstehe bis heute nicht, wer auf dem System dort wann und wie und warum an den Floating Point Exceptions gespielt hat (Siehe auch: http://blogs.msdn.com/b/oldnewthing/...3/8682463.aspx).

Bernhard Geyer 16. Apr 2014 12:25

AW: Für wen gelten die FPU-Exception-Bits?
 
Wenn du dich auf ein bestimmtes Verhalten verlässt musst du ach die entsprechende Verhalten für deinen Prozess einstellen.

Aber schau dir doch die Doku zu diesem Thema an:
http://docwiki.embarcadero.com/Libra...tExceptionMask

Der schöne Günther 16. Apr 2014 12:29

AW: Für wen gelten die FPU-Exception-Bits?
 
Das habe ich alles bereits rauf- und runtergelesen. Was ich machen kann, ist mir klar.

Meine Frage ist, wie weit das gilt- Du sagst, prozessweise?

Bernhard Geyer 16. Apr 2014 12:34

AW: Für wen gelten die FPU-Exception-Bits?
 
Der Prozess bekommt von Windows einen Defaultwert der von Windowsversion/DirectX-Version und HP-Druckertreiber abhängt.
Also musst du dafür sorgen das dieser so ist wie du ihn erwartest. Du kannst dich nicht darauf verlassen das dieser einen bestimmten wert hat.

Der schöne Günther 16. Apr 2014 12:36

AW: Für wen gelten die FPU-Exception-Bits?
 
Alles klar, genau das wollte ich wissen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:07 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz