Оптимизация программы в Turbo Pascal 7

Опубликовано: 05.09.2018

видео Оптимизация программы в Turbo Pascal 7

Программирование на Паскале.Условный оператор.Часть 4.

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



Целесообразно на разных этапах создания и эксплуатации программы использовать различные наборы ключей компилятора (см. п. 17.7.1).

Использование константных выражений в программе не увеличивает размер исполняемого файла и время выполнения программы, т. к. их значения вычисляются на этапе компиляции.


Турбо Паскаль. Обработка одномерных массивов. Удаление элементов из одномерного массива. Урок 45

При использовании несколько раз одной и той же константы-строки создается только одна копия этой строки, что экономит память.

Целесообразно, особенно в случае структурированных параметров, использовать в подпрограммах параметры-константы вместо параметров-значений, т. к. в этом случае в стеке не создаются копии исходных параметров, что экономит память и увеличивает быстродействие.


My old Turbo Pascal programs 2

Использование оператора над записями with обычно уменьшает размер исполняемого файла и увеличивает быстродействие программы.

Целесообразно при использовании параметров порядкового типа вместо операций многократного сравнения с граничными значениями использовать операцию in, если диапазон изменения параметра допускает использование множеств. Например, вместо выражения (X >= 'A') and (X

Всюду, где можно, следует использовать короткие - в пределах от 0 до 7 (либо от 0 до 15) - множества, т. к. работа с ними осуществляется очень быстро.

Следует учитывать, что при вычислении значений выражений в Turbo Pascal действия одного уровня приоритета не всегда выполяются слева направо (см. п. 4.6), и, если все-таки такая последовательность необходима, нужно выражение разбить на части в соответствии с требуемым порядком выполнения действий.

Не используемые программой подпрограммы, переменные и типизированные константы не увеличивают ее размер, т. к. не включаются в исполняемый файл.

Целесообразно всюду, где только можно, использовать "ближнюю" (near) адресацию подпрограмм, т. к. это экономит память и увеличивает быстродействие.

Для увеличения программы (правда, в ущерб ее размеру) целесообразно параметры располагать, начиная с четных адресов, используя директиву компилятора {$А+}.

Укороченные логические вычисления, как правило, увеличивают быстродействие программы.

При умножении и делении целых чисел на число, являющееся целой степенью числа 2 (2, 4, 8 и т.д.), вместо операций умножения и деления следует использовать операции shr и shl.

Те части программы, которые используются довольно часто (отдельные подпрограммы, циклы, выполняющиеся большое число раз и т.д.) целесообразно писать на языке ассемблера.

IRC (Internet Relay Chat)
rss