реклама на сайте
подробности

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Не работает правильно, вычисление float в Keil, Деление на 10
ar__systems
сообщение Feb 14 2017, 16:24
Сообщение #16


self made
****

Группа: Свой
Сообщений: 855
Регистрация: 7-03-09
Из: Toronto, Canada
Пользователь №: 45 795



Цитата(psL @ Feb 14 2017, 04:11) *
не слушайте Борща с его принятым размером мантисы.

Keil использует IEEE-754:
http://www.keil.com/support/man/docs/armli...58938949149.htm

которого достаточно для представления 25.1, можно проверить, например, здесь:

Вы просто не понимаете, как работает представление чисел с плавающей точкой. 25.1 не представляются точно в двойчной системе.

Чтобы было (я надеюсь) понятно, ответьте на простой вопрос - сколько надо ДЕСЯТИЧНЫХ разрядов чтобы ТОЧНО представить число 1/3? Теперь понятно? 251/10 в двоичной системе это абсолютно такая же ситуация.

Conan, cheers.gif

Цитата(psL @ Feb 14 2017, 07:03) *
Спасибо, конечно, но Вы бы лучше мысль свою пояснили про приведение типов. Смысл моего предложения ТС был в том, что при делении на 10 происходит приведение целого к вещественному с потерей точности, а при умножении вещественных точность выше, чем при делении. В чем я не прав? Только своими словами. Не нужно "братву с википедии" подтягивать.

Ерунда. Приведение ЦЕЛОГО к вещественному происходит без потери точности.
Поделить на 10 и умножить на 0.1 дадут одинаковый результат, хотя теоретически делить даже лучше, потому что в этом случае оба аргумента представлены абсолютно точно, в отличии от 0.1.
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 28th August 2025 - 16:17
Рейтинг@Mail.ru


Страница сгенерированна за 0.0135 секунд с 7
ELECTRONIX ©2004-2016