3.1.3.3 Priority of the operations
Each operator is assigned a priority. When an expression is evaluated, the operators with the
highest priority are always applied first. Where operators have the same priority, the evaluation
is from left to right.
In arithmetic expressions, the execution order of all the operators can be specified by
parentheses, in order to override the normal priority rules.
Order of operators
From the highest to lowest priority
1. NOT, B_NOT Negation, bit-by-bit negation
2. *, /, DIV, MOD Multiplication, division
3. +, – Addition, subtraction
4. B_AND Bit-by-bit AND
5. B_XOR Bit-by-bit exclusive OR
6. B_OR Bit-by-bit OR
7. AND AND
8. XOR Exclusive OR
9. OR OR
10. << Concatenation of strings, result type STRING
11. ==, <>, >, <, >=, <= Comparison operators
Note
The concatenation operator ":" for Frames must not be used in the same expression as other
operators. A priority level is therefore not required for this operator.
Example: IF statement
If (otto==10) and (anna==20) gotof end
3.1.3.4 Precision correction on comparison errors (TRUNC)
The TRUNC command truncates the operand multiplied by a precision factor.
Settable precision for comparison commands
Program data of type REAL is displayed internally with 64 bits in IEEE format. This display
format can cause decimal numbers to be displayed imprecisely and lead to unexpected results
when compared with the ideally calculated values.
Relative equality
To prevent the imprecision caused by the display format from interfering with program flow, the
comparison commands do not check for absolute equality, but rather for relative equality.
Work preparation
3.1 Flexible NC programming
NC programming
444 Programming Manual, 12/2019, 6FC5398-2EP40-0BA0