System.Math.TArithmeticException
Delphi
TArithmeticException = (exInvalidOp, exDenormalized, exZeroDivide,
exOverflow, exUnderflow, exPrecision);
C++
enum DECLSPEC_DENUM TArithmeticException : unsigned char { exInvalidOp, exDenormalized, exZeroDivide, exOverflow, exUnderflow, exPrecision };
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
enum | public | System.Math.pas System.Math.hpp |
System.Math | System.Math |
Beschreibung
Aufzählung mit Werten, die Gleitkomma-Exceptions repräsentieren.
Gleitkommaberechnungen werden auf 32-Bit-Systemen von der FPU (Floating Point Unit) und auf 64-Bit-Systemen von den SSE (Streaming SIMD Extensions) verarbeitet. Sie können das Auftreten von Exceptions verhindern, indem Sie mit SetExceptionMask für die FPU und die SSE einige oder alle Exceptions maskieren.
Wenn eine Exception maskiert ist, geben die FPU oder die SSE einen Näherungswert zurück (meist NaN, Infinity oder NegInfinity). Dieser Wert ist von der Operation und dem verwendeten Rundungsmodus abhängig (siehe GetRoundMode und SetRoundMode).
Die folgende Tabelle enthält die festgelegten Werte:
Wert | Bedeutung |
---|---|
exInvalidOp |
Versuch, eine ungültige Operation auszuführen. |
exDenormalized |
Die Größe einer Zahl wurde so verkleinert, dass sie nicht als Nicht-Null gespeichert werden kann. Sie wurde denormalisiert. |
exZeroDivide |
Versuch einer Division durch Null. |
exOverflow |
Eine Zahl hat den höchsten unterstützten positiven Wert überschritten. |
exUnderflow |
Eine Zahl hat den höchsten unterstützten negativen Wert überschritten. |
exPrecision |
Eine Zahl hat die Anzahl der Ziffern für die Genauigkeit überschritten. |