For the operators +, -, and *:
- If at least one operand has a float format, the result is float format.
- Otherwise, if at least one operand has packed-decimal, zoned-decimal,
or binary format, the result has packed-decimal format.
- Otherwise, if at least one operand has integer format, the
result has integer format.
- Otherwise, the result has unsigned format.
- For numeric literals that are not in float format:
- If the literal is within the range of an unsigned integer, the literal
is assumed to be an unsigned integer.
- Otherwise, if the literal is within the range of an integer, the literal
is assumed to be an integer.
- Otherwise, the literal is assumed to be packed decimal.