Function - Shift bits of a register to the right.
IN : ANY
register
NBS : ANY Number of shifts (each shift is 1 bit)
Q : ANY Shifted register
Arguments can be signed or unsigned integers from 8 to 32 bits.
In LD language, the input rung (EN) enables the operation, and the output rung keeps the state of the input rung. In IL language, the first input must be loaded before the function call. The second input is the operand of the function.
Q := SHR (IN, NBS);
(* The shift is executed only if EN is TRUE
*)
(* ENO has the same value as EN *)
Op1: LD IN
SHR NBS
ST Q