[an error occurred while processing this directive]
Ответ:
(«Телесистемы»: Конференция «Цифровые сигнальные процессоры (DSP) и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено AntZ 05 сентября 2004 г. 13:13
В ответ на: Ребята,кто в математике силён? отправлено вдребезги 04 сентября 2004 г. 14:03

Если не понравится что я говорю не обессудьте

-наибольшая выгода от оптимизации достигается на стадии дизайна. правильный дизайн - наилучшая гарантия эффективности
-если код плохо понятен постороннему человеку, а это как раз тот случай, то лучще сначала привести код в читаемую форму. Замените константы на понятные символы - (CodeStart*16+4)%100 для меня китайская грамота, а вот (СodeStart*ARRAY_SIZE+OFFSET)%BUFFER_SIZE уже понятней, и сопровождать легче, через месяц Вы спми забудете что такое 16, 4 и 2000.

Теперь по мелочи.
1) умножения на степени двойки меняются на шифты.
2) остаток от деления на 100 и 2000 - это деление. Если Вы сможете изменить 100 и 2000 на 128 и 2048, то Вы сможете ускорить вычисление выражения раз в десять, заменив деление AND'ом.

Если бы я мог понять что делает Ваш код, я бы смог дать более умные советы.


Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru