Генерируемые переменные параметры
Генерируемые переменные параметры могут использоваться всюду, где можно применять переменные параметры, включая операторы LCLx и GBLx. Для генерации названий переменных параметров можно использовать в свою очередь генерируемые параметры.
В макроопределениях можно использовать системный параметр &SYSLOC, значением которого является имя счетчика адреса, действующего для макрокоманды, по которой вызывается макроопределение. Принцип использования параметра &SYSLOC такой же, как и параметра &SYSECT: если в макроопределении используется оператор LOCTR, то с помощью параметра &SYSLOC можно восстановить счетчик адреса, действующий до вызова этого макроопределения.
При создании макроопределений используются операторы присваивания значений параметрам, проверки этих значений, условного и безусловного переходов. Фактически макросредства представляют некоторый язык программирования, на котором программируются макроопределения, а программирование требует отладки.
При выполнении программы каждая машинная команда макрорасширения реализует определенное действие. Операторы 3, 4 и 5 проверяют знак аргумента. Если аргумент отрицательный, то результатом считается 0 и с помощью машинной команды В происходит выход из макрорасширения в основную часть программы. Если аргумент положительный, происходит переход на оператор 8, который начинает вычисление значения квадратного корня. В регистр 6 загружается аргумент функции, а в регистр 4 — число 1, которое принимается за первое приближение — У. Оператор 9 начинает вычисление следующего приближения—Уп+1. Оператор 13 начинает проверку вычисленного приближения. Если разность между текущим приближением Уп и вычисленным приближением Уп+1 меньше погрешности, вычисления прекращаются. В противном случае значение Уп+ принимается за текущее приближение и повторяется вычисление следующего приближения.
Операционная система ОС ЕС предоставляет пользователю возможность модульного программирования, т. е. позволяет программировать сложные задачи в виде отдельных модулей, каждый из которых кодируется, транслируется и может изменяться независимо от других. Модульность предполагает, что уже при проектировании задачи определяются связи между модулями выполняемой программы. Соответственно операционная система предоставляет пользователю не только возможности для создания модулей, но и средства соединения модулей в одну программу, при условии, что при программировании модулей соблюдаются определенные стандартные интерфейсные связи.