| Description: | Performs a circular shift of the rightmost bits. | ||
| Class: | Elemental function; Generic | ||
| Arguments: | I | Must be of type integer. | |
| SHIFT | Must be of type integer. The absolute value for SHIFT must be less than or equal to SIZE. | ||
| SIZE (opt) | Must be of type integer. The value of SIZE must be positive and must not exceed BIT_SIZE (I). If SIZE is omitted, it is assumed to have the value of BIT_SIZE (I). | ||
| Results: | The result type is the same as I. The
result value is obtained by circular shifting the SIZE rightmost
bits of I by SHIFT positions. If SHIFT is positive, the shift is to
the left; if SHIFT is negative, the shift is to the right. If SHIFT
is zero, no shift is performed.
No bits are lost. Bits in I beyond the value specified by SIZE are unaffected. For more information on bit functions, see Section 9.2.3. The model for the interpretation of an integer value as a sequence of bits is shown in Section D.3. | ||
| Specific Name | Argument Type | Result Type |
|---|---|---|
| IISHFTC | INTEGER(2) | INTEGER(2) |
| JISHFTC | INTEGER(4) | INTEGER(4) |
| KISHFTC | INTEGER(8) | INTEGER(8) |
Examples
ISHFTC (4, 2, 4) has the value 1.
ISHFTC (3, 1, 3) has the value 6.