Краткое практическое руководство по GPSS

"СПИСОК ОПЕРАТОРОВ GPSS, НЕ ЯВЛЯЮЩИХСЯ БЛОКАМИ"


Некоторые из рассмотренных в руководстве операторов не соответствуют непосредственно блокам в языке. Попадают в эту категорию неблочных операторов такие операторы , как BVARIABLE, CLEAR, RMULT и STORAGE. В руководстве было введено 19 таких операторов; 15 операторов из 19 включены в данное приложение.

Четыре оператора END (ЗАКОНЧИТЬ), JOB (ПРОДОЛЖИТЬ), RESET (СБРОСИТЬ) и SIMULATE (МОДЕЛИРОВАТЬ) не вошли в это приложение, потому что каждый из них состоит только из одного слова: или END, или JOB и т.д., помещаемого в поле операции в строке.В этих операторах не используется ни поле имени, ни поле операндов. (Как отмечалось ранее, существует еще избирательная карта RESET. В этой карте требуется использование поля операндов. Но, поскольку избирательная карта RESET не была рассмотрена в руководстве подробно, она не включена в данное приложение.)

Все 15 неблочных операторов приведены в алфавитном порядке в соответствии с их операцией. В столбцах приложения, соответствующих полям имени и операндов, содержится следующая информация:

  1. Вкратце описывается роль поля.
  2. Затем дается сводка возможностей, представляемых
программисту для ввода требуемой информации. Диапазоны доступных возможностей для ввода имен объектов и числовых данных обозначены в данном приложении следующими записями: k, имя, СЧАj и СЧА * j. Соответствующие определения смотрите в табл.P2.1 приложения 2.

Если информация обязана быть в данном месте, а программист имеет несколько возможностей для ее ввода, эти возможности перечислены в фигурных скобках.
Если какая-либо информация может быть введена по желанию программиста, то такая доступная программисту возможность (или возможности) указывается в квадратных скобках. Наконец, если информация должна присутствовать, и не имеется никаких иных форм ее записи, то ни фигурные, ни квадратные скобки не используют.

Примеры записей фигурных и квадратных скобок см. в приложении 2 на рис. P2.1 и P2.2. Однако в приложении 1 возникает необходимость в трех дополнительных типах записи.
Эти случаи используют специфические формы общего обозначения СЧАj и СЧА $ имя. В частности, вместо любого применимого СЧА можно использовать только какой-либо один или несколько.
Ниже указаны эти возможности.

  • 1. По отношению к карте CLEAR специфическими формами являются Xj, Х $ имя, XHj и ХН $ имя.
  • 2. По отношению к карте INITAL специфическими формами являются LSj, LS$ имя, MXj, МХ $ имя, MXj, MH$ имя, Xj, X$ имя, XHj и XH$ имя.
  • 3. Наконец в карте STORAGE, используемой для определения емкости нескольких многоканальных устройств, специфическими формами являются Sj и S$ имя.
Таким образом, для карт CLEAR, INITIAL и STORAGE в данном приложении использованы перечисленные специфические формы, а не обычные общие формы СЧАj и СЧА $ имя. В противоположность ситуации с операторами для GPSS-блоков, неблочные операторы не укладываются в единообразную схему общих свойств. За исключением общей идеи полей имени, операции и операндов, внутри категории неблочных операторов существуют значительные различия в их спецификации.
Таким образом, это приложение предназначено для того, чтобы собрать все эти операторы вместе в качестве справочной таблицы для пользователя, которому может потребоваться срочная консультация по поводу правила составления некоторого неблочного оператора.

Поле имениПоле операции A B C D E
Имя булевской переменной { k, имя} BVARIABLE (булевская переменная) Комбинация определений числовых данных, операций отношения, логических атрибутов и булевских операторов.
Определения числовых данных {k,СЧА j, СЧА $имя, СЧА *j} Операции отношения 'G' 'L' 'E' 'GE' 'LE' 'NE' Логические атрибуты1 FU или F FNU FI FNI LS LR SE SNE SF SNF Булевские операторы +(или), *(и) &nbsp
&nbspCLEAR (очистить) Сохраяемая величина (сохраняемые величины) , не подлежащая обнулению [Xj, X$имя, XHj, XH$имя] &nbsp&nbsp &nbsp &nbsp
Символи ческое имя элемента EQU (эквива лентность) Числовой эквивалент символического имени k Мнемони- ческое обозначение для типов элемента &nbsp &nbsp &nbsp
Имя функции {k, имя } FUNCTION (функция) Аргумент функции {СЧАj, СЧА$имя, СЧА*j за исключением MX, MH} Тип функции и число точек { C D E L M} k &nbsp &nbsp &nbsp
Карта (карты), следующая за функцией X1, Y1/X2, Y2/X3, Y3/и т.д. (X1 должна начинаться в первом столбце; MX и MH не разрешены в качестве величин Y в функция E- или M- типа)
&nbsp INITIAL (инициа- лизировать) Устанав ливаемые логические переключатели {LSj , LS$имя} Разделитель в случае нескольких входов [/] &nbsp&nbsp &nbsp
Матричные сохраняемые величины {MXj, MX$имя, MHj, MH$имя} Начальное значение [-] k Разделитель на случай нескольких входов [/] &nbsp &nbsp
Сохраняемые величины {Xj, X$имя, XHj, XH$имя} Начальное значение [-] k Разделитель на случай нескольких входов [/] &nbsp &nbsp
Имя матрицы {k, имя} MATRIX (задать матрицу)Тип матрицы {X, H} Число строк, kЧисло столбцов, k &nbsp &nbsp
1 Формируются посредством добавления j, $имя, *j к перечисленным логическим операторам
Имя таблицы {k, имя}QTABLE (Q-таблица) Имя очереди { имя, k} Верхний предел левого частотного класса, k Ширина промежутков между частотными классами, k Число частотных классов, k &nbsp
&nbspREALLOCATE (перераспре делитель) Мнемоническое обозначение предопре- деляемого элемента Общее число единиц этого элемента после предопре- деления, k Разделитель в случае нескольких входов [,] &nbsp &nbsp
&nbspRMULT (установить значение генератора) Положительная нечетная целая константа, которая может вводиться в один или несколько операндов от A до H для определения нестандартного начального множителя для датчиков случайных чисел соответственно с 1-го по 8-й. По умолчанию текущее значение множителя не изменяется. В случае нескольких входов разделителем является запятая.
&nbspSTART (начать) Начальное значение счетчика числа завершений, k Подавление печати, [NP] Начальное значение счетчика промежу точной выдачи, [k] Признак распечатка цепей, [l]&nbsp
Имя многока нального устройства {k, имя} STORAGE (многока нальное устройство) Емкость многока нального устройства, k &nbsp &nbsp &nbsp &nbsp
&nbspSTORAGE (многока нальное устройство) Ссылка на многока нальное устройство, {Sj, S$имя} Емкость многока нального устройства, k Разделитель в случае нескольких входов, [/] &nbsp &nbsp
Имя таблицы, {k, имя}TABLE (таблица) Аргументы таблицы {k, СЧАj, СЧА $имя, СЧА*j} Верхний предел левого частотного класса, k Ширина промежутка между частотными классами, k Кол-во частотных классов, [W] k Времен ной интервал для RT-таблиц, k
Имя переменной, {k, имя} VARIABLE; FVARIABLE (переменная; переменная с плавающей запятой) Комбинации числовых данных и арифметических операндов &nbsp &nbsp
Числовые данные Арифметические операторы
{k,СЧА j, СЧА $имя, СЧА *j} + - * / @ (только для VARIABLE)
Главная Содержание главы 3


Содержание раздела