Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

Вам нужна арифметика с фиксированной запятой.

Отправлено Oldring 11 июля 2008 г. 13:10
В ответ на: Помогите избавиться от плавающей точки (+) отправлено Dikoy 11 июля 2008 г. 12:56

Использовать на тиньке плавучку - действительно глупо. Тем более для умножения двух чисел. Тем более если их диапазон не слишком велик.

Примерно как Вы описали. Предварительное умножение всех чисел на константу. Дальше умножение двух чисел включает целочисленное умножение и умножение известных заранее констант, поэтому константа, на которую оказывается умноженным результат, известна заранее, и на нее можно поделить результат после всех вычислений. Дальше эти константы должны быть степенями двойки, а не 1000: в этом случае умножение/деление на константу сводится к битовым сдвигам влево и вправо, а умножение констант сводится к выполненному заранее суммированию их сдвигов.


Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 13:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru