What every computer scientist should know about floating-point arithmetic
- 1 March 1991
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Computing Surveys
- Vol. 23 (1) , 5-48
- https://doi.org/10.1145/103162.103163
Abstract
Floating-point arithmetic is considered as esoteric subject by many people. This is rather surprising, because floating-point is ubiquitous in computer systems: Almost every language has a floating-point datatype; computers from PCs to supercomputers have floating-point accelerators; most compilers will be called upon to compile floating-point algorithms from time to time; and virtually every operating system must respond to floating-point exceptions such as overflow. This paper presents a tutorial on the aspects of floating-point that have a direct impact on designers of computer systems. It begins with background on floating-point representation and rounding error, continues with a discussion of the IEEE floating point standard, and concludes with examples of how computer system builders can better support floating point.Keywords
This publication has 10 references indexed in Scilit:
- Compiler support for floating‐point computationSoftware: Practice and Experience, 1988
- The Arithmetic of the Digital Computer: A New ApproachSIAM Review, 1986
- Finite Precision Rational Arithmetic: Slash Number SystemsIEEE Transactions on Computers, 1985
- Underflow and the Reliability of Numerical SoftwareSIAM Journal on Scientific and Statistical Computing, 1984
- A Proposed Radix- and Word-length-independent Standard for Floating-point ArithmeticIEEE Micro, 1984
- A Simple but Realistic Model of Floating-Point ComputationACM Transactions on Mathematical Software, 1981
- The Sign/Logarithm Number SystemIEEE Transactions on Computers, 1975
- Evading the drift in floating-point additionInformation Processing Letters, 1975
- A floating-point technique for extending the available precisionNumerische Mathematik, 1971
- 27 bits are not enough for 8-digit accuracyCommunications of the ACM, 1967