Версия 2, книга 1 (Система программного обеспечения на языке GPSS), страница 7
Описание файла
Файл "Версия 2, книга 1" внутри архива находится в папке "Система программного обеспечения на языке GPSS". Текстовый-файл из архива "Система программного обеспечения на языке GPSS", который расположен в категории "". Всё это находится в предмете "имитационное моделирование дискретных процессов" из 7 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "имитационное моделирование дискретных процессов" в общих файлах.
Просмотр 7 страницы текстового-файла онлайн
MPj - значение времени, равное разности абсолютного модельно-
го времени и содержимого j-го параметра текущего сообщения;
MBj - флаг синхронизации : 1 , если сообщение в блоке j при-
надлежит тому же семейству , что и текущее сообщение ; 0 - в про-
тивном случае.
Блоки имеют СЧА:
Nj - общее число сообщений, которое должно войти в j-й блок.
Подсчет ведется программой автоматически. Например, N$MET1 - счет-
чик числа входов в блок МЕТ1. Этот счетчик изменяется при каждом
входе сообщения в блок МЕТ1;
Wj - текущее число сообщений, которое находится в блоке j.
Значение этого счетчика подсчитывается автоматически. Например,
W$MET2 - счетчик текущего числа сообщений в блоке МЕТ2.
Многоканальные устройства имеют следующие СЧА:
Sj - текущее содержимое многоканального устройства j. Содер-
жимое многоканального устройства может изменяться блоками ENTER и
LEAVE. Например, S$OPER - текущее содержимое многоканального уст-
ройства OPER;
Rj - число свободных единиц многоканального устройства j. Эта
величина может изменяться блоками ENTER и LEAVE. Например, R$MACH -
свободный объем многоканального устройства MACH;
- 14 -
SRj - коэффициент использования многоканального устройства j
в тысячных долях, т.е., если коэффициент равен 0.65, то SRj равно
650;
SAj - среднее содержимое многоканального устройства j (целая
часть);
SMj - максимальное содержимое многоканального устройства j;
SCj - общее число входов в многоканальное устройство j;
STj - среднее время пребывания сообщений в многоканальном ус-
тройстве j.
SEj - флаг незанятости многоканального устройства j :
1 - свободно, 0 - занято;
SFj - флаг заполненности многоканального устройства j :
1 - заполнено, 0 - не заполнено;
SVj - флаг готовности многоканального устройства j :
1 - готово , 0 - не готово;
Устройства имеют следующие СЧА:
Fj - текущее состояние устройства j. Эта величина равна 0,
если устройство свободно, и 1 - во всех остальных случаях. Этот ат-
рибут изменяется блоками SEIZE, RELEASE, PREEMPT и RETURN. Напри-
мер, F$ACPU - состояние устройства ACPU;
FIj - флаг прерывания устройства : 1, если устройство нахо-
дится в состоянии прерывания, 0 - в противном случае;
FVj - флаг готовности устройства к использованию : 1 , если
готово, 0 - в противном случае;
FRj - коэффициент использования устройства j в тысячных до-
лях, т.е., если коэффициент равен 0.88, то FRj равен 880;
FCj - общее число входов в устройство j;
FTj - среднее время использования устройства одним сообщени-
ем.
Очереди имеют следующие СЧА:
Qj - длина соответствующей очереди j. Эта величина может из-
меняться блоками QUEUE и DEPART. Например, Q2 соответствует очереди
2;
QAj - средняя длина очереди j.
QMj - максимальная длина очереди j. Это значение автоматичес-
ки определяется и сохраняется программой;
QCj - общее число входов в очередь j. Это значение автомати-
чески определяется и сохраняется программой;
QZj - число нулевых входов в очередь j. Это значение подсчи-
тывается автоматически;
QTj - среднее время пребывания сообщения в очереди j (включая
нулевые входы);
QXj - среднее время пребывания сообщения в очереди j (без ну-
левых входов).
Таблицы имеют следующие СЧА:
TBj - вычисленное среднее таблицы j. Для занесения в таблицу
используется блок TABULATE;
TCj - общее число включений в таблицу j;
TDj - вычисленное среднеквадратичное отклонение для таблицы.
Ячейки и матрицы ячеек сохраняемых величин имеют следующие
СЧА:
Xj - содержимое ячейки j;
MXj(a,b)- содержимое элемента матрицы ячеек j, расположенного
в строке a, столбце b;
Вычислительные объекты имеют следующие СЧА:
FNj - вычисленное значение функции j. От значения функции бе-
рется целая часть, за исключением тех случаев, когда это значение
используется в качестве модификатора в блоках GENERATE, ADVANCE или
- 15 -
ASSIGN или в качестве аргумента другой функции;
Vj - вычисленное значение переменной j. При вычислении значе-
ния переменной с фиксированной точкой получается целое число. При
вычислении значения переменной с плавающей точкой дробная часть ко-
нечного результата отбрасывается;
BVj - вычисленное значение (1 или 0) булевской переменной.
Списки и группы имеют следующие СЧА:
GNj - текущее число членов в числовой группе j;
GTj - текущее число членов в группе сообщений с номерами j;
CHj - текущее число сообщений в j-том списке пользователя;
CAj - среднее число сообщений в j-том списке пользователя;
CMj - максимальное число сообщений в j-том списке пользователя;
CCj - общее число сообщений в j-том списке пользователя;
CTj - среднее время пребывания сообщения в j-том списке поль-
зователя;
LSj - возвращает состояние логического ключа j : 1 - установ-
лен, 0 - не установлен.
Стандартные числовые атрибуты могут использоваться в качестве
операндов практически в любом типе блоков. Также значение любого
СЧА может входить в большинство операторов описания объектов. Осо-
бенность СЧА является то, что они обеспечивают пользователю доступ
к характеристикам состояния системы в процессе моделирования.
2.2. Типы операторов GPSS/PC
После того, как блок-диаграмма составлена,она должна быть за-
писана в форме, удобной для ввода в ЭВМ. Для этого информация об
объектах GPSS/PC записывается в виде операторов в определенном фор-
мате. Операторы GPSS/PC делятся на следующие типы:
- операторы описания блоков;
- операторы описания данных и контроля управления;
- команды GPSS/PC.
2.2.1. Операторы описания блоков
В исходном тексте модели блоки описываются с помощью операто-
ров описания блоков. Каждому блоку соответствует определенный опе-
ратор описания блока. При обработке исходного текста модели ассемб-
лер GPSS/PC присваивает последовательные номера блокам. Таким обра-
зом, с каждым блоком будет связан идентифицирующий номер. Если в
модели к какому-либо блоку происходит обращение, то во избежание
работы с номерами блоков можно идентифицировать его меткой (сово-
купностью алфавитно-цифровых символов), а ассемблер данной метке
поставит в соответствие номер. В дальнейшем к данному блоку можно
будет обращаться по метке.
В поле операции пользователь должен записать обозначение бло-
ка, например, GENERATE, ASSIGN, MSAVEVALUE, TERMINATE, SPLIT,
PRIORITY, ENTER. Задание исходных данных, необходимых для выполне-
ния операций, соответствующих блоку, производится в поле операндов.
Всего может быть семь операндов, эти операнды обозначаются буквами
A,B,C,D и т.д. Значение каждого операнда определяется типом блока.
Если у блока несколько операндов, они разделяются запятыми. Не все
операнды являются обязательными, и если они опущены, то вместо про-
пущенного операнда ставится запятая.
Ниже приводится список блоков GPSS/PC и дается их краткая ха-
рактеристика:
ADVANCE - задержка сообщения на определенное время, с включе-
нием его в список будущих событий;
ALTER - проверка и модификация сообщений в группе;
ASSEMBLE - вывод из модели одного или нескольких сообщений;
ASSIGN - модификация параметров сообщений;
BUFFER - размещение сообщения в списке текущих событий
- 16 -
последним в своем приоритетном уровне;