[an error occurred while processing this directive]
|
Если не понравится что я говорю не обессудьте
-наибольшая выгода от оптимизации достигается на стадии дизайна. правильный дизайн - наилучшая гарантия эффективности
-если код плохо понятен постороннему человеку, а это как раз тот случай, то лучще сначала привести код в читаемую форму. Замените константы на понятные символы - (CodeStart*16+4)%100 для меня китайская грамота, а вот (СodeStart*ARRAY_SIZE+OFFSET)%BUFFER_SIZE уже понятней, и сопровождать легче, через месяц Вы спми забудете что такое 16, 4 и 2000.
Теперь по мелочи.
1) умножения на степени двойки меняются на шифты.
2) остаток от деления на 100 и 2000 - это деление. Если Вы сможете изменить 100 и 2000 на 128 и 2048, то Вы сможете ускорить вычисление выражения раз в десять, заменив деление AND'ом.
Если бы я мог понять что делает Ваш код, я бы смог дать более умные советы.
E-mail: info@telesys.ru