NaN
- не число
#
в арифметике с плавающей запятой (точкой) NaN используется для представления исключительных случаев – значений выражений, которые невозможно представить в виде действительного (хотя бы и бесконечного) числа. При этом все биты экспоненты устанавливаются в 1. Примеры NaN: значение квадратного корня из отрицательного числа; сумма бесконечностей с разными знаками; результат попытки умножить бесконечность на ноль или поделить ноль на ноль; ситуация, когда переменная просто не была инициализирована. В некоторых языках программирования NaN является ещё и результатом неудачного преобразования строки в число. С NaN можно выполнять операции, но результат в любом случае будет тоже NaN. Употребление NaN определено стандартом IEEE 754. Различают signalling (сигнальные, сигнализирующие) NaN, вызывающие прерывание по ошибке операции в блоке (сопроцессоре) арифметики с плавающей запятой, и nonsignalling (не сигнальные, не сигнализирующие) NaN, используемые в вычислениях.
Связные термины
FPU, negative infinity, NPU