Пример 4.17 Арифметические переменные c плавающей точкой

ADD VARIABLE P10+25

При обращении к арифметической переменной ADD ее значе­ние вычисляется как сумма значений десятого параметра транзакта, обрабатываемого в данный момент, и константы 25.

Выражение для F1 содержит как операнды переменные F2 и F3.

PROFIT VARIABLE V*P*FN*P2

Переменная PROFIT будет вычислена следующим образом. Вначале определяется значение второго параметра текущего транзак­та. Пусть в параметре P2 хранится значение 3. Затем вычисляется значение функции 3. Пусть оно равно 10. После этого определяется значение параметра c номером 10. Пусть содержимым этого парамет­ра будет число 5. Тогда переменной PROFIT присваивается значение переменной 5.

COMP VARIABLE X*P4/100

При обращении к арифметической переменной COMP ее значе­ние вычисляется как частное от деления значения сохраняемой вели­чины (СЧА X), номер которой определяется четвертым параметром транзакта, обрабатываемого в данный момент, на константу 100. Со­храняемые величины позволяют хранить значения глобальных пере­менных, доступных из любой части модели. Такой прием использует­ся для выделения старших разрядов чисел. Например, пусть в четвер­том параметре текущего транзакта записано число 6. И пусть в сохраняемой величине 6 хранится число 12345. При обращении к перемен­ной COMP происходит следующее:

1) определение значения параметра 4 (получаем число 6);

2)определение значения 12345, которое хранится в ячейке X*P4, т.е. в ячейке 6;

З)значение 12345 делится на 100 (c отбрасыванием остатка), в результате получается 123.

Арифметические переменные c плавающей точкой анало­гичны рассмотренным арифметическим переменным, за исключением того, что все операции над операндами выражений переменных c плавающей точкой выполняются без преобразования операндов и промежуточных результатов в целые значения. Лишь окончательный результат вычисления преобразуется в целое число.

Формат операторов описания арифметических переменных c плавающей точкой идентичен рассмотренному выше формату опе­рандов описания арифметических переменных за исключением того, что в поле операции записывается слово FVARIABLE. Правила на­писания операторов те же, что и для арифметических переменных. Арифметическая переменная и переменная c плавающей точкой не могут иметь одинаковые номера. Если они имеют одинаковые номе­ра, то при вычислении используется более позднее из двух описаний.

Различие результатов, полученных при вычислении c плаваю­щей точкой и фиксированной, можно увидеть из такого примера:


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



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