Каждый транзакт может иметь
от 0 до 1020 параметров, Интерпретация смысла параметров произвольная. В момент
генерации транзакта все его параметры нулевые. Блок ASSIGN15 является основным
средством для задания значений параметров транзактов. В поле А указывается, какой
параметр поступившего транзакта должен быть изменен. Следующий непосредственно за
номером параметра символ указывает, что нужно сделать с записанным в поле B целым
числом: прибавить его к текущему значению параметра, вычесть его из текущего значения
параметра; заменить текущее значение этим числом. Эти операции соответственно
обозначаются п+ , n-, п, где п — номер параметра.
Если в поле С указано какое-либо значение, оно интерпретируется как номер функции.
Производится определение значения функции, а результат используется для модификации
целого числа, указанного в поле В. Произведение помешается в параметр, указанный в
поле А.
В поле D задается тип изменяемого параметра. Допускайте следующие записи: РН, PF,
РВ, PL, соответствующие параметрам формата: «полуслово» «слово», «байт» и
«плавающая точка». Если модификатор-функция не задан, то вместо поля D можно
использовать поле С. Например:
ASSIGN 1,475,РН
(т. е. первому параметру формата «полуслово», входящему в блок ASSIGN транзакта,
нужно присвоить значение 475).
ASSIGN 12+,45,РВ
(т. е. текущему значению 12-го параметра формата «байт» прибавить число 45).
Можно изменять значения нескольких последовательных пара метров одного типа
следующим образом:
ASSIGN 1—7,5„PH
(здесь текущее значение параметров с 1-го по 7-й включительно (формата «полуслово»)
заменяется числом 5).
Если же число 5 следует прибавить к текущему значению этих параметров, то блок
следует закодировать так:
ASSIGN l-7+,5„PH
Если в поле С задан модификатор-функция и предполагается функция 1, то в поле С
должна быть такая запись:
ASSIGN 3,5,1РН
но не такая:
ASSIGN 3,5,FNl,PH
(здесь номер функции определяется вычислением значения функции 1; результат будет
одинаковым в том случае, если значение FN1 равно 1).
Пример 5. Построить программу модели процесса прохождения 70 деталей, пос-
тупающих с интервалом времени 12 ± 2 единицы и обрабатываемых одним рабочим по
пяти последовательно идущим друг за другом операциям, времена выполнения которых
распределены в интервале 2 ± 1 единица времени. Распределение всех времеи в указанных
интервалах равномерно. В результате моделирования требуется определить коэффициент
занятости рабочего.
Программа имеет вид:
SIMULATE Начало моделирования
GENERATE 12,2 Поступление деталей
ASSIGN 2.5„PB Счетчик операций
SEIZE 1 Запуск детали
WAIT ADVANCE 2.1 Операция
LOOP PB2,WAIT Переход к следующей операции
RELEASE 1 Выпуск детали
TERMINATE 1
START 70
END
Сноски:
15 ASSIGH - назначить |