For questions with concerns specifically related to the usage of floating point, such as accuracy and precision of calculations, handling of 0, infinity, and over/underflow, input/output, and binary representation. Not for code that casually happens to use floating point.

In most computer languages, the implementation of floating-point arithmetic is based on the IEEE 754 standard. The standard specifies four formats, with the 32-bit ("single precision") and 64-bit ("double precision") formats being most commonly used. Since floating-point numbers are stored in a base-2 representations, many numbers cannot be represented exactly. Therefore, code that performs floating-point arithmetic should take care to minimize concerns such as:

  • accuracy and precision of calculations
  • handling of 0, infinity, and over/underflow
  • input/output and binary representation

Some languages, such as Java, only partially adhere to the IEEE 754 standard — a potential source of bugs.

Related tags include:

history | excerpt history