Операнды:
A– параметр активного транзакта. Обязательный операнд. Допустимые значения: Name, PosInteger, ParenthesizedExpression, SNA или SNA'Parameter, после которого следуют «+», «-» или Null.
В – значение. Обязательный операнд. Допустимые значения: Name,
Number, String, ParenthesizedExpression, SNA или SNA' Parameter.
С – номер функции. Необязательный операнд. Допустимые значения: Null, Name, PosInteger, ParenthesizedExpression, SNA или SNA' Parameter.
Действие:
Когда транзакт входит в блок ASSIGN, значение параметра транзакта, указанного в операнде А, устанавливается в соответствии с операндами В и С.
Если необходимо, параметр транзакта создается.
Вы можете присвоить, прибавить или вычесть из числового эквивалента значения параметра транзакта. Если операнд С отсутствует, операнд В вычисляется и используется в качестве нового значения, или же его числовой эквивалент – в качестве инкремента или декремента. Сложение и вычитание задаются знаками «+» или «-», следующими сразу же за операндом А. Если эти знаки отсутствуют, операнд Ввычисляется и результат присваивается значениюпараметра транзакта.
|
|
Дополнительно для определения номера функции может быть использован операнд С, называемый в этом случае модификатором функции. Если он задан, то вычисляется функция, которая затем умножается на числовой эквивалент вычисленного операнда В и результат прибавляется, вычитается или присваивается значению параметра транзакта в зависимости от знака в операнде А. Следует отметить, что операнд С определяет номер функции или ее имя
(не нужно использовать FN или FN$ перед ним). Если используется СЧА класса FN, то вычисляется функция GPSS, результат которой используется для определения второй функции GPSS, которая в свою очередь будет вычислена.
8. Определение движения требований по каналам. Поскольку СМО многоканальная, то необходимо использовать оператор TRANSFER для обеспечения возможности направления требований к незанятому каналу.
9. Блок SEIZE. Когда активный транзакт пытается войти в блок SEIZE, он ожидает возможности занять или занимает устройство.
SEIZE A
10. Запоминание канала, в который требование попало на обслуживание. Для этого используется оператор ASSIGN (Присвоить) – с его помощью в параметре требования под номером 1 запоминается имя канала, в который требование пошло на обслуживание. Присвоение будет выглядеть так:
ASSIGN 1, CAN1
Освобождение элементов памяти.
Блок LEAVE освобождает элементы памяти: