Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Основные операторы языка GPSS
Основные операторы языка GPSS приведены в виде примеров с конкретными значениями подполей в поле переменных.
GENERATE 12,4,50,5,1 - генерация транзактов, интервалы времени между появлениями транзактов распределены равномерно в диапазоне [12-4, 12+4], первый транзакт появится с задержкой в 50 единиц модельного времени, всего будет создано 5 транзактов, приоритет транзактов равен единице.
GENERATE 12,4,50,,1 - то же, но количество генерируемых транзактов неограничено.
GENERATE 6, FN$FFF,50,5,1 - то же, но интервал времени между появлениями транзактов есть целая часть произведения числа 6 на значение функции FFF.
FNK FUNCTION RN1,C4 0,0/0.1,0.8/0.5,1.6/1.0,1.9 - описание функции FNK, ее аргументом является случайная величина (на это указывает значение RN1), равномерно распределенная в диапазоне [0,1], функция является непрерывной числовой (указатель С), заданной таблично четырьмя точками: (0;0), (0.1; 0.8), (0.5, 1.6), (1.0; 1.9).
FNK FUNCTION *2,D4 0,12/1,9/2,8/3,6 - то же, но аргументом является значение второго параметра транзакта, для которого вычисляется значение дискретной величины (D) числовой функции FNK, заданной таблично четырьмя узловыми точками. Это текущее значение округляется до ближайшего большего значения аргумента в узловой точке.
SEIZE PLOT - занятие устройства PLOT приходящим на его вход транзактом; если устройство занято, то транзакт задерживается в очереди к этому устройству.
RELEASE PLOT - освобождение устройства PLOT обслуженным транзактом.
ENTER MEM,12 - занятие транзактом 12 единиц емкости в накопителе MEM.
LEAVE MEM,*2 - освобождение k единиц памяти в накопителе MEM, гдк k - значение 2-го параметра транзакта.
STR STORAGE 4096 - описание накопителя STR емкостью 4096 единиц.
TERMINATE 3 - удаление транзакта из системы, при этом содержимое итогового счетчика уменьшается на 3 единицы, моделирование заканчивается, если содержимое счетчика станет равным или меньше нуля.
ADVANCE A,B - задержка транзакта на время, определенное содержимым полей A и B, смысл величин, записываемых в этих подполях, такой же, как и в операторе GENERATE.
SPLIT 3,LLL,6 - копирование транзактов, в данном случае создаются три копии исходного транзакта, исходный транзакт направляется в следующий по порядку блок, а созданные копии - в блок с меткой LLL, при этом параметр 6 основного транзакта увеличивается на единицу, а транзактов - копий - на 2, 3, 4 соответственно.
ASSEMBLE 5 - объединение транзактов, первый из вошедших в блок транзактов продолжит движение в системе после того, как в блок придут еще четыре транзакта.
ASSIGN 2,NAP - изменение параметров транзактов, в данном случае второй параметр транзакта получит значение NAP.
ASSIGN 3+,V4 - изменится значение третьего параметра транзакта - к нему прибавится значение V4.
TRANSFER ,MET - безусловная передача управления оператору с меткой (номером) MET.
TRANSFER BOTH,LAB1,UNN - переход к оператору с меткой LAB1, если он невозможен, то к оператору с меткой UNN, если и он невозможен, то транзакт задерживается до следующего момента дискретного модельного времени, в который повторяются указанные попытки перехода.
TRANSFER.4,AAA,LAB - транзакт с вероятностью 0.4 переходит к оператору с меткой LAB и с вероятностью 0.6 к оператору с меткой AAA.
TRANSFER PICK,STK7,STK21 - равновероятный переход к операторам с номерами STK7, STK7+1, STK7+2,..., STK21.
TRANSFER FN,AAA,5 - переход к оператору, метка которого равна сумме значения функции AAA и числа 5.
TRANSFER P,4,41 - переход к оператору, метка которого равна сумме значения параметра N 4 транзакта и числа 41.
TRANSFER SBR,PRC,7 - переход к оператору PRC с записью в параметр N 7 транзакта метки данного оператора.
LOOP 6,MET - организация цикла - переход 5 раз к оператору с меткой MET и на шестой раз - к следующему по порядку оператору.
TEST E V7,K256,LAB - переход по условию (условная передача управления): в позициях 13-18 записывается знак отношения, в первых двух подполях поля переменных записываются сравниваемые величины, если условие выполняется, то перехода нет, иначе переход есть к оператору с меткой LAB. Символы отношений: G - больше, L - меньше, E - равно, NE - неравно, LE - меньше или равно, GE - больше или равно. В данном примере перехода нет, если V7 = 256, иначе переход к оператору с номером LAB.
QUEUE SQV - оператор организации очереди, длина очереди SQV увеличивается на единицу.
DEPART SQV - то же, но длина очереди уменьшается на единицу.
PRIORITY 2 - транзакту присваивается приоритет 2.
SIMULATE - начальная карта программы, если разработчик намерен выполнить прогон модели. Если эта карта отсутствует, то интерпретатор проверяет правильность записи модели на языке GPSS, но прогона модели не выполняет.
START 100,,25 - занесение значения 100 в итоговый счетчик, вывод накопленных статистических данных производится с интервалом изменения содержимого итогового счетчика в 25 единиц.
TABULATE MAT7 - в соответствующий интервал гистограммы с именем MAT добавляется единица.
MAT7 TABLE P3,8,1,5 - описание таблицы (гистграммы) MAT7, предназначенной для табулирования величины, значения которой находятся в третьем параметре транзакта, входящего в оператор TABULATE MAT7, верхний предел левого интервала гистограммы равен 8, ширина каждого последующего интервала равна 1, всего интервалов 5.
5 VARIABLE X2 - K25 - вычислительный оператор, в данном случае из хранимой величины N 2 вычитается число 25 и результат присваивается переменной N 5.
SAVEVALUE 5,*3 - хранимая величина N 5 (X5) получает значение третьего параметра транзакта.
Основные команды интерпретатора GPSSPC @<имя файла> - загрузить исходный текст модели
SAVE <имя файла> - сохранить текст модели
DISPLAY[<строка N 1>],[< строка N 2>] - вывести на экран текст модели, начиная со строки N1, до строки N 2.
DELETE [<строка N 1>],[<строка N 2>] - удалить из программы текст, начиная со строки N1, до строки N 2.
EDIT <номер строки> - отредактировать строку текста
CLEAR - сбросить всю статистику модели в ноль (включая таймеры абсолютного и относительного модельного времени), возвратить все транзакты в пассивный буфер.
END - завершить работу интерпретатора.
|
||||||
Последнее изменение этой страницы: 2020-12-09; просмотров: 59; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.142.98.108 (0.009 с.) |