Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Теоретические вопросы _ Директивы паскаля

Автор: daZe1 8.10.2007 20:09

Как могут влиять директивы на производительность программ на паскале? и вообще могут ли?!?!?!?!?! smile.gif

Автор: volvo 8.10.2007 20:35

Смотря какие директивы... Например, подключение сопроцессора {$N+} без внесения других изменений увеличило сейчас скорость выполнения тестовой программы (активно работающей с переменными типа Real) в 4 раза (!!!)

Контроль за переполнением стека тоже замедляет программу, поэтому в отлаженной программе его лучше отключать: {$S-}... Контроль переполнения {$Q+} и выходов за границы {$R+} замедляют программу...

Добавлено через 2 мин.
P.S.
Подробнее о директивах - здесь: http://forum.pascal.net.ru/index.php?showtopic=3895

Автор: klem4 9.10.2007 2:00

Могу предположить как пример директиву {$B-} которая отключает полную проверку логических выражений (что может увеличить быстродействие), в том случае когда она уже не имеет смысла, то есть

например

if (1 < 0) and (a > 3) and (c > 5);

первое условие дает false соответственно в даном случае проверка остальных условий не имеет смысла.

Автор: volvo 9.10.2007 2:23

Только аккуратнее с этой директивой, она очень опасна... Я в FAQ-е написал, к каким проблемам это может привести...