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

ADD VARIABLE P10+25

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

Fl VARIABLE Q9+3#V$F2-V$F3#FN$IO

F2 VARIABLE 9+R13-FN19#Q10

F3 VARIABLE FN$TYPE1+S$PL#R$RC-Q$ENTRY

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

PROFIT VARIABLE V*P*FN*P2

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

СОМР VARIABLE Х*Р4/100

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

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

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

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

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

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

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


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



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