Are you sure your calculations are accurate? This tutorial addresses a critical but often overlooked aspect of computer science: floating-point arithmetic. It explains the direct impact on designers of computer systems due to floating-point. Floating-point is ubiquitous in computer systems and almost every language has a floating-point datatype. The paper 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. It begins with background on floating-point representation and rounding error and continues with a discussion of the IEEE floating-point standard. Understanding floating-point arithmetic is crucial for computer scientists to ensure the reliability and accuracy of numerical computations in various applications. This tutorial empowers designers with the knowledge to build computer systems that better support floating-point operations, enhancing the overall quality and robustness of software and hardware systems. The tutorial concludes with examples of how computer system builders can better support floating point.
This tutorial published in ACM Computing Surveys aligns perfectly with the journal's goal of providing comprehensive overviews of important computing topics. By explaining the intricacies of floating-point arithmetic, this paper serves as a valuable resource for computer scientists.