SАVЕVАLUE Р5,V$АLРНА
При входе транзакта в блок SАVЕVАLUE прежде всего вычисляется величина переменной АLРНА. Полученный результат присваивается сохраняемой величине, номер которой записан в параметре Р5.
SАVЕVАLUE 5+,Х2
При входе транзакта в блок величина Х5 увеличивается на значение величины Х2.
SAVEVALUE РRОFIТ–FN$СOSТS
При входе транзакта в блок величина Х$РRОFIТ уменьшается на значение функции FN$СOSТS.
Оператор описания матрицы МАТRIХ. Каждая матрица должна быть объявлена до ее использования, т.е. должна иметь оператор описания. Формат оператора представлен в таблице.
Таблица 4.41
Поле | Информация в поле |
Метка | Имя матрицы |
Операция | МАТRIX |
Операнд А | Не используется (оставлен для совместимости с более старыми версиями GPSS) |
Операнд В | Число строк матрицы (целое положительное) |
Операнд С | Число столбцов матрицы (целое положительное) |
Матрица в GPSS/РС может содержать не более чем 8191 элемент. Она может быть переопределена или инициализирована повторно другим оператором МАТRIХ с тем же именем. Переопределение, при котором размер матрицы изменяется, повлечет за собой выделение памяти под новую матрицу. Выделенная до этого оперативная память остается занятой.
|
|
Блок MSAVEVALUE. Блок MSAVEVALUE используется для записи значений в матрицы, а также для увеличения или уменьшения значений элементов матриц. Его формат:
MSAVEVALUE А[+,–],В,С,D
Таблица 4.42
Операнд | Значение | Результат по умолчанию |
А | Имя матрицы | Ошибка |
В | Номер строки матрицы | Ошибка |
С | Номер столбца матрицы | Ошибка |
D | Величина, используемая для модификации | Ошибка |
Операнды А, В и С могут быть именем, положительным целым, СЧА или СЧА*СЧА. Операнд D может быть именем, СЧА или СЧА*СЧА.
Подобно блокам АSSIGN и SАVЕVАLUE этот блок может быть использован как в режиме замещения величины, так и в режиме увеличения или уменьшения.
Когда транзакт входит в блок МSАVЕVАLUE, то анализируется операнд А и ищется матрица с указанным именем. Если матрица не найдена, то возникает ошибка. Соответствующий элемент матрицы определяется содержимым операндов В и С. Если такого элемента не существует, то также возникает ошибка.