На 32-разрядной платформе ARM, в среде разработки IAR EWB for ARM применены следующие типы float, double и long double.
float - 32-битное число с плавающей точкой. Диапазон чисел от ±1.18E-38 до ±3.39E+38, 7 десятичных разрядов, 8 бит показателя степени (экспонента) и 23 бита основания степени (мантисса).
double - 64-битное число с плавающей точкой. Диапазон чисел от ±2.23E-308 to ±1.79E+308, 15 десятичных разрядов, 11 бит показателя степени (экспонента) и 52 бита основания степени (мантисса).
long double - абсолютно то же самое, что и double.
Операции с числами в формате с плавающей точкой весьма неэффективны по затратам кода, памяти и процессорного времени, поэтому таких чисел нужно по возможности избегать, или хотя бы использовать float вместо double.
Информация получена из документа справки "IAR C/C++ Development Guide" EWARM_DevelopmentGuide.ENU.pdf, раздел "FLOATING-POINT TYPES".
[См. также]
1. Описание стандартных функций < cmath > (math.h) site:cplusplus.com. 2. Как избавиться от чисел с плавающей точкой. |