Next: ITIME, Previous: ISHFT, Up: Intrinsic Procedures

`ISHFTC`

— Shift bits circularly*Description*:`ISHFTC`

returns a value corresponding to`I`with the rightmost`SIZE`bits shifted circularly`SHIFT`places; that is, bits shifted out one end are shifted into the opposite end. A value of`SHIFT`greater than zero corresponds to a left shift, a value of zero corresponds to no shift, and a value less than zero corresponds to a right shift. The absolute value of`SHIFT`must be less than`SIZE`. If the`SIZE`argument is omitted, it is taken to be equivalent to`BIT_SIZE(I)`

.*Standard*:- F95 and later
*Class*:- Elemental function
*Syntax*:`RESULT = ISHFTC(I, SHIFT [, SIZE])`

*Arguments*:-
`I`The type shall be `INTEGER(*)`

.`SHIFT`The type shall be `INTEGER(*)`

.`SIZE`(Optional) The type shall be `INTEGER(*)`

; the value must be greater than zero and less than or equal to`BIT_SIZE(I)`

. *Return value*:- The return value is of type
`INTEGER(*)`

and of the same kind as`I`. *See also*:- ISHFT