When the execution result is 0, #L_CalcZero turns on.
If an overflow occurs as a result of the shift operation, the last overflowed bit is stored in #L_CalcCarry.
When the execution results in an error, the error information is stored in #L_Status.
When the execution results in an error, the error code is stored in #L_CalcErrCode.
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
SHR
Determines whether the least significant bit is ON or OFF.
When the variable of the positive transition instruction turns ON, the SHR instruction is run. When the SHR instruction is executed, the 1 bit to the right is stored in D1.
When 1 bit is shifted to the right, you can check the previous value of the least significant bit in Data_1 by using the #L_CalcCarry system variable.
When using a normally open instruction, the SHR instruction is always executed as long as the normally open bit is ON.
SHRP
When to run the instruction is different between SHRP and SHR instructions. In the SHRP instruction, even when using a normally open instruction, only the upward transition of the bit is detected, and the SHRP instruction is executed. Even if the bit of the normally open instruction remains ON, the SHRP instruction is executed only for one scan.