MBShift
Inputs
Input |
Data Type |
Range |
Unit |
Default |
Description |
---|---|---|---|---|---|
Buffer |
SINT / USINT |
|
|
|
Array of bytes. |
Pos |
DINT |
|
|
|
Base position in the array. |
NbByte |
DINT |
|
|
|
Number of bytes to be shifted or rotated. |
NbShift |
DINT |
|
|
|
Number of shifts or rotations. |
ToRight |
BOOL |
FALSE, TRUE |
|
|
|
Rotate |
BOOL |
FALSE, TRUE |
|
|
|
InBit |
BOOL |
FALSE, TRUE |
|
|
Bit to be introduced in a shift. |
Outputs
Output |
Data Type |
Range |
Unit |
Description |
---|---|---|---|---|
Q |
BOOL |
FALSE, TRUE |
|
TRUE if successful. |
Remarks
- Use the ToRight argument to specify a shift to the left (FALSE) or to the right (TRUE).
- Use the Rotate argument to specify either a shift (FALSE) or a rotation (TRUE).
- In case of a shift, the InBit argument specifies the value of the bit that replaces the last shifted bit.
FBD Language Example
FFLD Language Example
- In the FFLD Language, the input rung (EN) enables the operation.
- The rung output is the result (Q).
- The function is called only if EN is TRUE.
IL Language Example
Not available.
ST Language Example
Q := MBShift (Buffer, Pos, NbByte, NbShift, ToRight, Rotate, InBit);