Оптимизация
Оптимизацией называется обработка, связанная с переупорядочиванием и изменением операций в компилируемой программе в целях получения более эффективного объектного кода. Обычно выделяют машинно-зависимую и машинно-независимую оптимизацию. Под машинно-зависимой оптимизацией понимается преобразование исходной программы в ее внутреннем представлении, что означает полную независимость от выходного языка, в отличие от машинно-зависимой, выполняемой на уровне объектной программы.
Среди машинно-независимых методов можно выделить самые основные:
- Свертка, т.е. выполнение операций, операнды которых известны во время компиляции..
- Исключение лишних операций за счет однократного программирования общих подвыражений.
- Вынесение из цикла операций, операнды которых не изменяются внутри цикла.
Оптимизация внутри линейных участков
Линейным участком является выполняемая по порядку последовательность операций с одним входом и одним выходом (первая и последняя операции соответственно). Например, последовательность операций представленных ниже образуют линейный участок.
I:=1+1;
I:=3;
B:=7+I;
Внутри линейного участка обычно проводят две оптимизации: свертку и устранение лишних операций.
Дата добавления: 2015-07-30; просмотров: 741;