Linked e-resources
Details
Table of Contents
Intro; Contents; List of Figures; List of Tables; Preface; I Introduction, Basic Definitions, and Standards; 1 Introduction; 1.1 Some History; 1.2 Desirable Properties; 1.3 Some Strange Behaviors; 1.3.1 Some famous bugs; 1.3.2 Difficult problems; 1.3.2.1 A sequence that seems to converge to a wrong limit; 1.3.2.2 The Chaotic Bank Society; 1.3.2.3 Rump's example; 2 Definitions and Basic Notions; 2.1 Floating-Point Numbers; 2.1.1 Main definitions; 2.1.2 Normalized representations, normal and subnormal numbers; 2.1.3 A note on underflow; 2.1.4 Special floating-point data; 2.2 Rounding
2.2.1 Rounding functions2.2.2 Useful properties; 2.3 Tools for Manipulating Floating-Point Errors; 2.3.1 Relative error due to rounding; 2.3.2 The ulp function; 2.3.3 Link between errors in ulps and relative errors; 2.3.3.1 Converting from errors in ulps to relative errors; 2.3.3.2 Converting from relative errors to errors in ulps; 2.3.3.3 Loss of information during these conversions; 2.3.4 An example: iterated products; 2.4 The Fused Multiply-Add (FMA) Instruction; 2.5 Exceptions; 2.6 Lost and Preserved Properties of Real Arithmetic; 2.7 Note on the Choice of the Radix
2.7.1 Representation errors2.7.2 A case for radix 10; 2.8 Reproducibility; 3 Floating-Point Formats and Environment; 3.1 The IEEE 754-2008 Standard; 3.1.1 Formats; 3.1.1.1 Binary interchange format encodings; 3.1.1.2 Decimal interchange format encodings; 3.1.1.3 Larger formats; 3.1.1.4 Extended and extendable precisions; 3.1.1.5 Little-endian, big-endian; 3.1.2 Attributes and rounding; 3.1.2.1 Rounding direction attributes; 3.1.2.2 Alternate exception-handling attributes; 3.1.2.3 Preferred width attributes; 3.1.2.4 Value-changing optimization attributes; 3.1.2.5 Reproducibility attributes
3.1.3 Operations specified by the standard3.1.3.1 Arithmetic operations and square root; 3.1.3.2 Remainders; 3.1.3.3 Preferred exponent for arithmetic operations in the decimal format; 3.1.3.4 scaleB and logB; 3.1.3.5 Miscellaneous; 3.1.4 Comparisons; 3.1.5 Conversions to/from string representations; 3.1.6 Default exception handling; 3.1.6.1 Invalid operation; 3.1.6.2 Division by zero; 3.1.6.3 Overflow; 3.1.6.4 Underflow; 3.1.6.5 Inexact; 3.1.7 Special values; 3.1.7.1 NaN: Not a Number; 3.1.7.2 Arithmetic of infinities and zeros; 3.1.8 Recommended functions
3.2 On the Possible Hidden Use of a Higher Internal Precision3.3 Revision of the IEEE 754-2008 Standard; 3.4 Floating-Point Hardware in Current Processors; 3.4.1 The common hardware denominator; 3.4.2 Fused multiply-add; 3.4.3 Extended precision and 128-bit formats; 3.4.4 Rounding and precision control; 3.4.5 SIMD instructions; 3.4.6 Binary16 (half-precision) support; 3.4.7 Decimal arithmetic; 3.4.8 The legacy x87 processor; 3.5 Floating-Point Hardware in Recent Graphics Processing Units; 3.6 IEEE Support in Programming Languages; 3.7 Checking the Environment; 3.7.1 MACHAR; 3.7.2 Paranoia
2.2.1 Rounding functions2.2.2 Useful properties; 2.3 Tools for Manipulating Floating-Point Errors; 2.3.1 Relative error due to rounding; 2.3.2 The ulp function; 2.3.3 Link between errors in ulps and relative errors; 2.3.3.1 Converting from errors in ulps to relative errors; 2.3.3.2 Converting from relative errors to errors in ulps; 2.3.3.3 Loss of information during these conversions; 2.3.4 An example: iterated products; 2.4 The Fused Multiply-Add (FMA) Instruction; 2.5 Exceptions; 2.6 Lost and Preserved Properties of Real Arithmetic; 2.7 Note on the Choice of the Radix
2.7.1 Representation errors2.7.2 A case for radix 10; 2.8 Reproducibility; 3 Floating-Point Formats and Environment; 3.1 The IEEE 754-2008 Standard; 3.1.1 Formats; 3.1.1.1 Binary interchange format encodings; 3.1.1.2 Decimal interchange format encodings; 3.1.1.3 Larger formats; 3.1.1.4 Extended and extendable precisions; 3.1.1.5 Little-endian, big-endian; 3.1.2 Attributes and rounding; 3.1.2.1 Rounding direction attributes; 3.1.2.2 Alternate exception-handling attributes; 3.1.2.3 Preferred width attributes; 3.1.2.4 Value-changing optimization attributes; 3.1.2.5 Reproducibility attributes
3.1.3 Operations specified by the standard3.1.3.1 Arithmetic operations and square root; 3.1.3.2 Remainders; 3.1.3.3 Preferred exponent for arithmetic operations in the decimal format; 3.1.3.4 scaleB and logB; 3.1.3.5 Miscellaneous; 3.1.4 Comparisons; 3.1.5 Conversions to/from string representations; 3.1.6 Default exception handling; 3.1.6.1 Invalid operation; 3.1.6.2 Division by zero; 3.1.6.3 Overflow; 3.1.6.4 Underflow; 3.1.6.5 Inexact; 3.1.7 Special values; 3.1.7.1 NaN: Not a Number; 3.1.7.2 Arithmetic of infinities and zeros; 3.1.8 Recommended functions
3.2 On the Possible Hidden Use of a Higher Internal Precision3.3 Revision of the IEEE 754-2008 Standard; 3.4 Floating-Point Hardware in Current Processors; 3.4.1 The common hardware denominator; 3.4.2 Fused multiply-add; 3.4.3 Extended precision and 128-bit formats; 3.4.4 Rounding and precision control; 3.4.5 SIMD instructions; 3.4.6 Binary16 (half-precision) support; 3.4.7 Decimal arithmetic; 3.4.8 The legacy x87 processor; 3.5 Floating-Point Hardware in Recent Graphics Processing Units; 3.6 IEEE Support in Programming Languages; 3.7 Checking the Environment; 3.7.1 MACHAR; 3.7.2 Paranoia