Введение
В научных вычислениях мы часто используем числа с плавающей запятой (плавающей точкой). Эта статья представляет собой руководство по выбору
правильного представления числа с плавающей запятой. В большинстве языков программирования есть два встроенных вида точности: 32-битная (одинарная точность) и 64-битная (двойная точность). В семействе языков C они известны как
float
и
double
, и здесь мы будем использовать именно такие термины. Есть и другие виды точности:
half
,
quad
и т. д. Я не буду заострять на них внимание, хотя тоже много споров возникает относительно выбора
half
vs
float
или
double
vs
quad
. Так что сразу проясним: здесь идёт речь только о 32-битных и 64-битных числах
IEEE 754.
Статья также написана для тех из вас, у кого много данных. Если вам требуется несколько чисел тут или там, просто используйте
double
и не забивайте себе голову!
Статья разбита на две отдельные (но связанные) дискуссии: что использовать для
хранения ваших данных и что использовать при
вычислениях. Иногда лучше хранить данные во
float
, а вычисления производить в
double
.