Войти на сайт ( )
[Вход] [Регистрация]
Компьютеры » Программирование » Структура и реализация макроязыков [Gaist-Endruy]
[Обновить]
[ Ответить ]
[Добавить в закладки]
Страница: 1, 2, 3, ... 12, 13, 14
Gaist-Endruy ( off )
( 09:28 24-03-2009 )
Аппарат макрокоманд позволяет присвоить этой последовательности имя и использовать это имя вместо нее. Можно также определить некоторый макроязык, позволяющий рассматривать данную конструкцию, как определение и в дальнейшем использовать это определение.

Gaist-Endruy ( off )
( 09:28 24-03-2009 )
Фактически, макропроцессор представляет собой отдельный языковой процессор со своим собственным языком.

Gaist-Endruy ( off )
( 09:28 24-03-2009 )
Форматы макроопределений в различных системах может отличаться друг от друга. В данном случае последовательность команд, определяющая макрокоманду имеет следующий формат:

Gaist-Endruy ( off )
( 09:28 24-03-2009 )
MACRO <macro name>
-----------------
-----------------
-----------------
END;

Gaist-Endruy ( off )
( 09:28 24-03-2009 )
Псевдокоманда MACRO - первая строка определения - определяет следующий за ней идентификатор, как имя макрокоманды. Вслед за этой строкой располагается последовательность команд, называемых "телом макроопределения". Определение заканчивается строкой с псевдокомандой END.

Gaist-Endruy ( off )
( 09:28 24-03-2009 )
Если макрокоманда определена, то использование имени соответствующей макрокоманды в качестве мнемоники кода в программе эквивалентно использованию соответствующей последовательности команд. Если повторяющейся последовательности команд дать имя "MacPageUp", то наш пример можно будет переписать следующим образом:

Gaist-Endruy ( off )
( 09:29 24-03-2009 )
Исходный текст
Расширение исходного текста
MACRO MacPageUp
SetPrevPos;
FixScreenPos;
PageScreenUp;
FixCursorPos;
END;

Gaist-Endruy ( off )
( 09:29 24-03-2009 )
.
.
.
MacPageUp
.
.
.
MacPageUp
.
.
.

Gaist-Endruy ( off )
( 09:29 24-03-2009 )
.
.
.
SetPrevPos;
FixScreenPos;
PageScreenUp;
FixCursorPos;
.
.
.
SetPrevPos;
FixScreenPos;
PageScreenUp;
FixCursorPos;
.
.
.

Gaist-Endruy ( off )
( 09:29 24-03-2009 )
В данном случае макропроцессор заменяет каждую макрокоманду (макровызов) строками:
SetPrevPos;
FixScreenPos;
PageScreenUp;
FixCursorPos;

Далее »
« Назад
Страница: 1, 2, 3, ... 12, 13, 14
[ Ответить ]
[Обновить]
[Добавить в закладки]
Компьютеры » Программирование » Структура и реализация макроязыков [Gaist-Endruy]
На главную
© s.sasisa.me