Gaist-Endruy
( off
)
(
09:48 24-03-2009
)
Например, возможно объединение таблиц имен макросов и имен кода операции; специальный признак может указывать на то макро это или встроенная операция.
Gaist-Endruy
( off
)
(
09:48 24-03-2009
)
Основные преимущества включения макропроцессора в первый просмотр состоят в следующем:
Gaist-Endruy
( off
)
(
09:48 24-03-2009
)
1.Многие функции не надо реализовывать дважды (например, функции ввода-вывода, проверки на тип, и.т.п.)
2.В процессе обработки отпадает необходимость создавать промежуточные файлы или массивы данных.
3.У программиста появляются дополнительные возможности по совмещению средств ассемблера (например, команды EUQ) совместно с макрокомандами.
Gaist-Endruy
( off
)
(
09:48 24-03-2009
)
Основные недостатки:
Gaist-Endruy
( off
)
(
09:48 24-03-2009
)
1. Программа должна требовать больше оперативной памяти, что критично на некоторых типах ЭВМ, не имеющих много оперативной памяти.
2.Реализация подобного типа задачи может оказаться на порядок сложнее, чем отдельная реализация ассемблера и макропроцессора.
Gaist-Endruy
( off
)
(
09:49 24-03-2009
)
Отдельно от рассмотрения реализации аппарата макросредств в ассемблер лежит рассмотрение дополнительного просмотра, используемого многими программами для выявления определенных характеристик исходной программы, таких как типы данных. Располагая таким макропроцессором, можно использовать команды условной компиляции, позволяющие поставить расширение макрокоманд в зависимость от определенных характеристик программы.
Gaist-Endruy
( off
)
(
09:49 24-03-2009
)
Макроязыки и соответствующие им макропроцессоры представляют собой самостоятельную форму языков программирования. При использовании вместе с ассемблером, макропроцессор является для программиста полезным инструментом и по существу, позволяет ему самому определять свой язык "высокого" уровня.
Gaist-Endruy
( off
)
(
09:49 24-03-2009
)
Существуют четыре основных задачи, решаемых макропроцессором:
Gaist-Endruy
( off
)
(
09:49 24-03-2009
)
1.Распознавание макроопределений
2.Хранение макроопределений
3.Распознавание макрокоманд
4.Расширение макрокоманд и подстановка параметров
Gaist-Endruy
( off
)
(
09:49 24-03-2009
)
Макропроцессор в ассемблере может быть реализован несколькими способами: