If an overflow occurs as a result of the instruction, the system variable (bit) #L_CalcCarry turns on.
The instruction will not execute if the value in operand S1 or S2 (infinite or non-numeric value) cannot be recognized.
The error code (6706) is written to #L_CalcErrCode.
The result in D1 maintains the value from the previous successfully run instruction.
#L_Error turns on, and the error code (6706) is written to #L_CalcErrCode.
When the execution result is 0, the system variable #L_CalcZero turns ON.
When checking the result using system variables, make sure the check takes place after the instruction has been executed. When checking the state after multiple instructions have been executed, system variables will store the result only of the last processed instruction.
Program Example
ADD
Adds one constant to another and stores the result in the integer variable.
The AND instruction is executed when the positive transition instruction turns ON. When the ADD instruction is executed, the result value of 40, obtained from 25 + 15 = 40, is stored in D1.
When the operation is a normally open instruction, as long as the variable is ON, the ADD instruction is always executed.
ADDP
When the normally open instruction turns ON, the ADDP instruction will be executed. When the ADDP instruction is executed, the result value of 40, obtained from 25 + 15 = 40, is stored in D1.
Even when using a normally open instruction, the ADDP instruction executes only when it detects the upward transition.
Therefore, even when the variable of the normally open instruction is always ON, the ADDP instruction is executed only for one scan.