非算术语句中的算术表达式
算术表达式可以出现在除算术语句以外的上下文中。 例如,可以将算术表达式与 IF 或 EVALUATE 语句配合使用。
在此类语句中,将应用具有定点数据的中间结果和具有浮点数据的中间结果的规则,并进行以下更改:
- 处理简写的
IF语句时,就好像这些语句不是简写的一样。 - 在其中至少有一个比较是算术表达式的显式关系条件中, dmax 是任何一个比较操作数的最大小数位数,不包括 divisors 和 exponents。 如果满足以下任何条件,那么将应用浮点算术规则:
- 可比较的任何操作数都是
COMP-1,COMP-2,外部浮点或浮点文字。 - 指数包含小数位。
- 指数是包含指数或除法运算符的表达式, dmax 大于零。
例如:
IF operand-1 = expression-1 THEN . . .如果 operand-1 是定义为
COMP-2的数据名称,那么浮点运算的规则将应用于 expression-1 ,即使它仅包含定点操作数也是如此,因为它将与浮点操作数进行比较。 - 可比较的任何操作数都是
- 当算术表达式与另一数据项或算术表达式之间的比较不使用关系运算符 (即,不存在显式关系条件) 时,将对算术表达式进行求值而不考虑其可比性的属性。 例如:
EVALUATE expression-1 WHEN expression-2 THRU expression-3 WHEN expression-4 . . . END-EVALUATE在上面的语句中,每个算术表达式都根据其自身的特征在定点或浮点算术中进行求值。