9.159 ISHFT — Shift bits

Description:

ISHFT returns a value corresponding to I with all of the bits shifted SHIFT places. 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. If the absolute value of SHIFT is greater than BIT_SIZE(I), the value is undefined. Bits shifted out from the left end or right end are lost; zeros are shifted in from the opposite end.

Standard:

Fortran 90 and later, has overloads that are GNU extensions

Class:

Elemental function

Syntax:

RESULT = ISHFT(I, SHIFT)

Arguments:
IThe type shall be INTEGER.
SHIFTThe type shall be INTEGER.
Return value:

The return value is of type INTEGER and of the same kind as I.

Specific names:
NameArgumentReturn typeStandard
ISHFT(A)INTEGER AINTEGERFortran 90 and later
BSHFT(A)INTEGER(1) AINTEGER(1)GNU extension
IISHFT(A)INTEGER(2) AINTEGER(2)GNU extension
JISHFT(A)INTEGER(4) AINTEGER(4)GNU extension
KISHFT(A)INTEGER(8) AINTEGER(8)GNU extension
See also:

ISHFTC — Shift bits circularly