
Функции и процедуры Директивы компилятора Встроенный ассемблер Команды редактора и зарезервированные слова Сообщения об ошибках Примеры программ Написать письмо
О проекте Автора!Автора! |
|
Assembler (процедурная директива)
---------------------------------------------------
Используя директиву Assembler, вы можете писать процедуры и функции с
использованием встроенного ассемблера, без операторов Begin..End. Директива
Assembler заставляет компилятор выполнять следующую оптимизацию объектного
кода:
- Параметры значений: компилятор не генерирует код, для копирования
параметров, передаваемых в подпрограмму, в локальные переменные.
- Переменная Result: компилятор не создает переменную Result для функций, и
ссылка на символ @Result вызывает ошибку.
- Область стека: компилятор не генерирует стек для процедур и функций без
параметров или локальных переменных.
Оптимизация параметров значений воздействует на все параметры строкового типа
и на другие параметры, с размером, не равным 1, 2 или 4 байтам. Внутри
процедуры или функции, такие параметры должны обработаться как переменные
параметры. Строковые функции являются исключением оптимизации - для них
всегда существует указатель @Result, распределяемый родительским процессом. |