Название в значительной степени суммирует все.Расчет диапазона поплавка в C
Я знаю, что поплавки имеют 32-битную сумму с 23 битами для мантиссы и 8 бит для показателя экспоненты и 1 для подписания.
Расчет диапазона "ИНТ" довольно прост: 32бит = 32-1bit подпись = 31bits ==> Диапазон поэтому 2³¹ = 2.14e9
формула имеет смысл ...
Теперь я Я посмотрел на stackoverflow, но все ответы, которые я нашел в расчетах с плавающей точкой, не содержали вещества. Просто пучок чисел, появляющихся случайным образом в ответах и магически достигая заключения 3.4e38.
Я ищу ответ от человека с реальным знанием предмета. Кто-то, кто может объяснить с помощью формулы, как рассчитывается этот диапазон.
Спасибо всем.
Мо
[Попробуйте эту страницу] (https: //en.wikipedia.org/wiki/Single-precision_floating-point_format) –
https://en.wikipedia.org/wiki/Single-precision_floating-point_format –
«Знайте, что поплавки всего 32 бит ...» Вы знаете неправильно. Даже для типа 'float' это не обязательно верно. В стандарте C не применяется конкретный формат или размер, а также минимальные требования. И для 'double', который окончательно ошибочен. Для 'int' вы также ошибаетесь. В большинстве систем на самом деле используется 16-битный 'int'. – Olaf