LINK list,f ifo

В этом примере транзакт, вошедший в блок, помещается в ко­нец списка c именем LIST.

Стандартные числовые атрибуты, связанные c блоком LINK:

СА<номер списка>, СА$<имя списка> – среднее число транзактов в СП;

CC<номер списка>, СС$<имя списка> – общее число транзактов в СП;

CH<номер списка>, СН$<имя списка> – – текущее число транзата в СП;

CM<номер списка>, СМ$<имя списка> – максимальное число транзактов в СП;

CT<номер списка>, СТ$<имя списка> – среднее время пребывания транзакта в СП.

Блок UNLINK (ВЫВЕСТИ ИЗ СПИСКА). Блок UNLINK уда­ляет транзакты из СП. После этого интерпретатор GPSS возобновляет их движение по модели.

Формат блока:

UNLINK (X| A,B,[C|,[D],[E],[F]

Операторы отношения, которые записываются во вспомога­тельном операнде X, определяют, какое условие (отношение) будет рассматриваться. Если этот оператор не задан, предполагается отно­шение равенства E.

Операторы отношения могут быть такими:

G (больше) – отношение истинно, если значение параметра, за­данного в операнде D, больше значения, заданного в операнде E;

GE (больше или равно) – отношение истинно, если значение параметра, заданного в операнде D, больше значения, заданного в операнде E, или равно ему;

L (меньше) – отношение истинно, если значение параметра, за­данного в операнде D, меньше значения, заданного в операнде E;

LE (меньше или равно) – отношение истинно, если значение параметра, заданного в операнде D, меньше значения, заданного в операнде E, или равно ему;

E (равно) – отношение истинно, если значение параметра, за­данного в операнде D, равно значению, заданному в операнде E;

NE (не равно) – отношение истинно, если значение параметра, заданного в операнде D, не равно значению, заданному в операнде Ё.

Операнд А задает СП, из которого удаляются один или несколь­ко транзактов. Операнд А может быть именем, положительным це­лым, СЧА или CЧA*CЧA.

В операнде В указывается номер блока, к которому переходят удаляемые из списка транзакты. Операнд В может быть именем, по­ложительным целым, СЧА, CЧA*CЧA. Операнд C задает число транзактов, удаляемых из СП (счетчик удалений). Операнд C может быть именем, положительным целым, СЧА, CЧA*CЧA или «ALL» (означает удаление всех транзактов).

Операнд D может быть именем, целым, СЧА, CЧA*CЧA,; «ВАСК». Действия, выполняемые при вхождении транзакта в блок, UNLINK, зависят от того, на что ссылается операнд D. В операнде D могут быть указаны номер параметра, булева переменная или слово «ВАСК».

Номер параметра. Если операнд E пропущен, значение задан­ного параметра вошедшего транзакта сравнивается со значением этого же параметра транзактов СП. Если E не пропущен, значение заданного параметра транзактов СП сравнивается со значением СЧА из операнда E. В обоих случаях транзакты, удовлетворяющие заданному отношению, будут удалены из списка и направлены в блок, указан­ный в операнде В.

Булева переменная BVj вычисляется отдельно для каждого транзакта из СП. Если для транзакта значение BVj =l, то он удаляется из СП (количество удаляемых транзакгов не может превышать значения операнда C). Если BVj =0 для всех транзактов списка, то вошедший транзакт пытается переместиться в блок, заданный в операн­де F. Если операнд F пропущен, транзакт пытается перейти в следующий по номеру блок.

Если в операнде D задана булева переменная, операнд E должен быть пустым. Если булева переменная BVj имеет ссылку на какой-либо параметр, то эта ссылка относится к параметрам транзактов из списка, А не к входящему в блок UNLINK транзакту.

Слово «ВАСК». Из указанного списка, начиная c его конца, бу­дет исключено столько транзактов, сколько задано операндом C. Операнд E в этом случае должен быть пустым.

Операнд E содержит СЧА, значение которого сравнивается со значением параметра транзактов СП (номер параметра указан в опе­ранде D). Операнд E может быть именем, целым, СЧА, CЧA*CЧA.

Операнд F задает номер следующего блока длятого транзакта, который входит в блок UNLINK в случаях, когда соответствующий СП пустой или не выполнено заданное отношение, или же указанная в операнде D булева переменная равна нулю для всех транзактов спи­ска (т.е. в случае, когда из СП нельзя ничего удалить). Операнд F может быть именем, положительным целым, СЧА, CЧA*CЧA.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: