Операнд А – вираз, що задається користувачем для обчислення значень змінної, а Name – назва арифметичної змінної.
Наприклад, запис
23 VARIABLE Q3+5
означає, що арифметична змінна під номером 23, яка у подальшому іменується V23, дорівнює сумі числа вимог у черзі під номером 3 і константи 5.
Посиланням на арифметичну змінну є V$назва, або Vj, де j – номер змінної. Символічна назва може бути замінене номером (додатним цілим числом) шляхом використання команди EQU. Наприклад:
Nom EQU 5
Nom VARIABLE X$10/MX$Vtm(3,P2)
Тепер на арифметичну змінну Nom можна посилатися так: V5.
Значення арифметичної змінної може використовуватися в такий спосіб:
· як операнд; у цьому випадку значення арифметичної змінної може представляти: номери об'єкта j та j логічного атрибута (блок GATE); номер параметра транзакту (блоки ASSIGN, INDEX, LOOP, MARK, SPLIT); значення атрибута;
· як аргумент функції;
· як значення залежної змінної атрибутивної функції;
· як аргумент таблиці;
· як операнд іншої арифметичної змінної або булевої змінної.
Наведемо приклади арифметичних виразів:
Has VARIABLE R$Nak+S$Nak
Мmm VARIABLE Q$Park-Q$Rox
Rаk VARIABLE P1+Q$Ful/14
Vtb VARIABLE N$Ewm@10
У першому прикладі величина змінної Has дорівнює сумі ємності, що залишилася, і поточного вмісту пам'яті Nak. У другому прикладі змінна Мmm визначається як поточний вміст черги Park мінус поточний вміст черги Rox. У третьому прикладі змінна Rаk підраховується спочатку діленням поточного вмісту черги Ful на 4, а потім додаванням результату до значення параметра Р1 активного транзакта. У четвертому прикладі Vtb – лічильник числа входів у блок з назвою Ewm за модулем 10.
Обчислювальні вирази складаються з комбінації СЧА, констант, математичних операторів і бібліотечних функцій. Може бути задане будь-яке число довільних комбінацій. Вирази аналізуються зліва направо згідно ієрархії операторів і правил елементарної алгебри.
Значення арифметичного виразу обчислюється, коли активний тран-закт входить у блок, оператор якого серед своїх операндів містить одне або більше посилань на арифметичні змінні. Обчислені значення мають дійсний тип. У GPSSW проміжні значення і СЧА не округлюються. Ця операція здійснюється за вимогою розробника з використанням функції INT (A).
Наведені нижче приклади характеризують розбіжність результатів, отриманих обчисленням змінних із плаваючими й фіксованою крапками:
Dvd1 FVARIABLE 10#(7/3)