ISHFTC (The GNU Fortran Compiler) (original) (raw)
8.160 ISHFTC
— Shift bits circularly ¶
Synopsis:
RESULT = ISHFTC(I, SHIFT [, SIZE])
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 thanSIZE. If the SIZE argument is omitted, it is taken to be equivalent to BIT_SIZE(I)
.
Class:
Elemental function
Arguments:
I | The type shall be INTEGER or UNSIGNED. |
---|---|
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 toBIT_SIZE(I). |
Return value:
The return value is of the same type as I.
Specific names:
Name | Argument | Return type | Standard |
---|---|---|---|
ISHFTC(A) | INTEGER A | INTEGER | Fortran 90 and later |
BSHFTC(A) | INTEGER(1) A | INTEGER(1) | GNU extension |
IISHFTC(A) | INTEGER(2) A | INTEGER(2) | GNU extension |
JISHFTC(A) | INTEGER(4) A | INTEGER(4) | GNU extension |
KISHFTC(A) | INTEGER(8) A | INTEGER(8) | GNU extension |
Standard:
Fortran 90 and later, has overloads that are GNU extensions. Extension forUNSIGNED
(see Unsigned integers)
See also: