Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ю.М. Елизарова, Н.А. Тихонова. Создание имитаци...doc
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
3 Мб
Скачать
☆

Параметры транзактов

Параметры транзакта – это свойства транзакта, определяемые пользователем. Множество параметров транзакта – набор СЧА, которые принадлежат транзакту. В процессе перемещения транзакта по модели его параметры могут задаваться и модифицироваться в соответствии c логикой работы модели.

Доступ к параметрам транзактов осуществляется в следующем формате: P<номер> или Р$<имя>, где P – СЧА транзакта, определяющий его групповое имя, т. е. имя всех параметров транзакта. Номера (имена) конкретных членов множества параметров задают целыми числами или символьными именами. Например, P22 – это 22-й параметр транзакта, P$COLOR – параметр c именем COLOR.

Каждый транзакт может иметь любое количество параметров. Значения СЧА для транзактов и логика их изменения задаются разработчиком модели. При этом интерпретация смысла параметров имеет произвольный характер. При генерации транзакта начальное значение всех его параметров автоматически устанавливается в ноль (только тех, которые используются в модели). Значениями параметров транзактов могут быть любые числа. Параметры могут приобретать отрицательные значения. Транзакт может обращаться только к своим параметрам. Если необходимо получить доступ к параметрам других транзактов, то это можно сделать через ячейки сохраняемых величин (см. п. 1.11) или используя группы транзактов. Параметры можно использовать в качестве операндов блоков и в качестве аргументов функций. Параметры позволяют организовать косвенную адресацию блоков.

Пример. Определить время задержки транзакта как значение функции ААА.

AAA FUNCNION P3,D3

-3,4/3,7/10,8

…

ADVANCE FN$AAA,3

…

Выполнение блока ADVANCE предусматривает расчет функции AAA. Это, в свою очередь, требует определения значения аргумента функции, т. е. параметра P3 обрабатываемого в данный момент транзакта. Пусть значение третьего параметра транзакта, вошедшего в блок ADVANCE, равно 4. Соответствующее значение функции AAA равно 8. Таким образом, время задержки будет равномерно распределено на интервале 8 ± 3.

Пример. Задать номер устройства и время задержки с помощью параметров транзакта PRIB и TSERV:

SEIZE P$PRIB

ADVANCE P$TSERV

RELEAZE P$PRIB

Транзакт занимает устройство, номер которого задан параметром транзакта PRIB. Время обслуживания задается параметром с именем TSERV.

Задание и изменение значений параметров транзактов

При входе транзакта в блок ASSIGN (НАЗНАЧИТЬ) значения параметров могут задаваться или изменяться.

Формат записи блока:

ASSIGN А[+,-],В[,С],

где А – номер или имя модифицируемого или задаваемого параметра;

В – величина, используемая для модификации (число или СЧА);

С – имя функции.

Блок ASSIGN может быть использован в режиме замещения значения параметра (начальное значение всех параметров транзактов равно 0) или в режиме увеличения и уменьшения. В режиме увеличения (уменьшения) предшествующее значение параметра увеличивается (уменьшается) на значение операнда В. При использовании операнда C значение операнда В умножается на значение функции, указанной в операнде C. Параметр, заданный в операнде А, изменяется на величину полученного произведения (в режиме увеличения и уменьшения) или приобретает значение результата (в режиме замещения).

Примеры.

Блок ASSIGN в режиме присваивания (замещения):

ASSIG MEST,36 – параметру транзакта c именем MEST присваивается значение 36;

ASSIGN 3,25 – параметру P3 присваивается значение 25;

ASSIGN P4,FR$BB – параметру транзакта c номером, записанным в параметре P4, присваивается значение коэффициента использования устройства BB (оба операнда заданы косвенным образом).

Блок ASSIGN в режимах накопления и уменьшения:

ASSIGN 4+,Q5 – параметр 4 увеличивается на значение, равное текущей длине очереди с номером 5;

ASSIGN P2-,7 – из значения параметра, номер которого задан значением параметра P2, вычитается 7;

ASSIGN 3-,5.85,7 – из значения параметра 3 вычитается произведение 5.85 на вычисленное значение функции номер 7.