Общие сведения о формате операторов GPSS. Формат и действие блоков GENERATE и TERMINATE.
Операторы GPSS делятся на три типа: 1) блоки; 2) операторы описания данных; 3) команды GPSS. Общие сведения о формате операторов GPSS. В GPSS для ссылки на числа, блоки и объекты используются имена (идентификаторы). Имя представляет собой алфавитно-цифровую последовательность длиной до 20 символов в GPSS/PC и до 250 символов в GPSS World, которая начинается c буквы. Допускается использование символов только латинского алфавита, цифр и знака подчеркивания. Формат GPSS-блоков такой: [Номер cmpoки ][< Метка >] < Операция > < Операнды > <; Комментарии > Номер строки. Обязательное поле для GPSS/PC (в GPSS World – игнорируется). Начинается c первой позиции строки. Представляет собой десятичное число. Метка (имя блока). Содержимым поля является имя – последовательность символов, начинающаяся c буквы. В некоторых операторах это поле является обязательным. Операция. Операциями* блоков являются глаголы, которые описывают основные функциональные назначения блоков. Каждый из блоков характеризируется своим собственным предписанным ему глаголом. Операнды. Блоки могут иметь операнды. Операнды блоков задают информацию, специфичную для действия данного блока. Число операндов блока зависит от типа блока. В блоках не может использоваться больше семи операндов. Операнды в общем случае обозначаются символами: А, В, C, D, E, F, G. Значения операндов определяются типом блока. Одни операнды некоторых блоков должны быть определены всегда,адругие могут задаваться или не задаваться (т.е. являются необязательными). Операнды следуют один за другим и отделяются запятыми или одним пробелом. Если операнд опущен, то вместо него ставится запятая. Между операндами не должно быть более одного пробела, так как это будет означать, что операнды закончились и интерпретатор прекращает чтение строки. Комментарии. Необязательное поле. Комментарии отделяются от поля операндов символом «;». Допускается запись комментария c начала строки. В этом случае в первой позиции строки ставится символ «;» или «*». В GPSS/PC допускаются комментарии c использованием заглавных или строчных букв только латинского алфавита, в GPSS World также допускается использование символов кириллицы. Строка описания блока может содержать до 79 символов в GPSS/PC и до 250 символов в GPSS World. При описании форматов квадратные скобки [ ] указывают на необязательность поля. Именами и метками не могут быть названия или начальные символы названий блоков, операторов, команд и СЧА. Во избежание конфликтов c ключевыми словами рекомендуется в именах использовать символ подчеркивания. Блок GENERATE (ГЕНЕРИРОВАТЬ) – это блок, через который транзакты входят в модель. Не существует ограничений на количество разных блоков GENERATE в одной модели. Интервал времени между последовательными появлениями транзактов из блока GENERATE называют интервалом поступления. Когда транзакт входит в модель через блок GENERATE. интерпретатор планирует время поступления следующего транзакта путем розыгрыша случайного числа c соответствующим распределением интервалов поступления на время, равное текущему значению ЧАСОВ плюс разыгранное значение. При достижении этого значения модельного времени следующий транзакт вводится в модель через блок GENERATE и т.д. Разработчик должен задать функцию распределения интервалов поступления транзактов в блоке GENERATE. Все возможные виды случайных распределений интервалов поступления транзактов в GPSS делятся на равномерное распределение и другие виды распределений. В нашем случае специально рассматривают самое простое из всех случайных нетривиальных распределений – равномерное распределение. Использование других видов распределений требует задания функций, которые описаны ниже Формат блока: GENERATE [A],[B],[C],[D],[E] Ta6лица 4.2
* Если опущено поле операнда, транслятор проставляет значения по умолчанию или выдает ошибку. Значение операндов: А – среднее значение интервала поступления; В – величина разброса возможных значений относительно среднего значения. (Если операнд В не задается, то интервал времени поступления – детерминированная величина); C – момент времени, в который в блоке GENERATE должен появиться первый транзакт. (После этого первого прихода все остальные приходы транзактов возникают в соответствии c распределением, заданным операндами А и В); D – ограничитель общего числа транзактов, которое может войти в модель через данный блок GENERATE на протяжении времени моделирования. (Если это число достигнуто, данный блок GENERATE перестает быть активным); Е – уровень или класс приоритета каждого из транзактов. которые вводятся в модель через данный блок GENERATE. (Всего существует 128 разных уровней, которые задаются c помощью чисел от 0 до 127. Чем больше число, тем выше приоритет). 1. Транзакты не могут входить в блок GENERATE,так как он сам их генерирует. 2. Если в модели GPSS/PC встречаются подряд два или больше блоков GENERATE,то последний блок переопределяет операнды предыдущих блоков. В GPSS World транслятор выдает ошибку. 3. Операнды не могут быть отрицательными числами. Операнды А, В, C целочисленные (в GPSS World могут быть действительными числами).
|