Talk:System.Math.TArithmeticException

From RAD Studio API Documentation
Jump to: navigation, search

Almost good, but only Intel architecture information is described in this topic. Please add ARM architecture information.

- Please add / use the following contents

For Intel platform, The FPU (Floating Point Unit) handles floating-point calculations on 32-bit systems and the SSE (Streaming SIMD Extensions) handles floating-point calculations on 64-bit systems.

You can prevent exceptions from occuring by using SetExceptionMask to mask some or all of them on both FPU and SSE.

For ARM platform, the FPU handles floating-point calculations and set the exception status bit (same as Intel's implementation), but ARM FPU doesn't raise hardware-exception except invalid FPU instruction.

When an exception is masked, the floating-point calcutation returns its best attempt at a value – often NaN, Infinity, or NegInfinity. The value depends on the operation and the current rounding mode (see GetRoundMode and SetRoundMode) .

--Tarisawa (talk) 23:42, 18 February 2015 (PST)