STM8 -- посчитать отношение 2х 32-битных чисел

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
surok01
Первый раз сказал Мяу!
Сообщения: 35
Зарегистрирован: Ср июл 25, 2018 21:20:42

STM8 -- посчитать отношение 2х 32-битных чисел

Сообщение surok01 »

Есть задача посчитать отношение 2х 32-разряднных беззнаковых чисел (первое произвольное до 10^8, второе всегда порядка 10^7) и вывести результат на дисплей с точностью не менее 8 знаков. Например:
N1 = 12312312
N2 = 10000123
Res = 1,2312161
Как это правильно сделать в IAR STM8? Время выполнения операции и использование ресурсов не важно.
Про простое деление оператором "/" в доке на IAR (DSTM8-3) сказано "The precision of the float operators (+, -, *, and /) is approximately 7 decimal digits.", т.е. нужная точность не гарантируется.
Реклама
Martian
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32
Контактная информация:

Re: STM8 -- посчитать отношение 2х 32-битных чисел

Сообщение Martian »

https://blog.segger.com/algorithms-for- ... ns-method/ там цикл статей, думаю, если их прочесть, то можно создать подходящее
ну и вообще https://en.wikipedia.org/wiki/Division_algorithm
Реклама
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25220
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: STM8 -- посчитать отношение 2х 32-битных чисел

Сообщение КРАМ »

Присоединяюсь к предыдущему оратору. Написать собственное деление 64 разрядного формата мантиссы не составит труда. С порядками, надеюсь, вы справитесь очень легко - там простая арифметика плюс/минус.
veso74
Поставщик валерьянки для Кота
Сообщения: 1906
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария
Контактная информация:

Re: STM8 -- посчитать отношение 2х 32-битных чисел

Сообщение veso74 »

Пример отсюда: How can I divide two longs in an accurate double?
Установил Ваши значения и до 18 знаков после запятой, как из примера. Ниже приведен счет и с калькулятором.

Изображение
Вложения
sketch_may02b.zip
(875 байт) 49 скачиваний
Реклама
Эиком - электронные компоненты и радиодетали
linkov1959
Держит паяльник хвостом
Сообщения: 923
Зарегистрирован: Пн сен 10, 2018 19:16:28

Re: STM8 -- посчитать отношение 2х 32-битных чисел

Сообщение linkov1959 »

veso74, я для частотомера использовал double для результата деления, разве там 8 знаков не будет?
Реклама
Martian
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32
Контактная информация:

Re: STM8 -- посчитать отношение 2х 32-битных чисел

Сообщение Martian »

увы, но (по крайней мере для IAR STM8) double и float одно и тоже. Но вообще да, я бы в любом случае указывал тип double, чтобы подчеркнуть, что требуется точность.
Реклама
Ответить

Вернуться в «Разные вопросы по МК»