SHIFT(3I) Last changed: 1-6-98
NAMESHIFT - Performs a left circular shift
SYNOPSISSHIFT ([I=]i,[J=]j)
IMPLEMENTATION
UNICOS, UNICOS/mk, and IRIX systems
STANDARDS
CF90 and MIPSpro 7 Fortran 90 compiler extension to Fortran 90
DESCRIPTIONSHIFT performs a left circular shift of i by j bits. It accepts the
following arguments:
i The value to be shifted. i can be of type Boolean, integer,
real, or Cray pointer.
j The number of bits to shift the value. Must be of type integer
or Boolean. j must be within the range 0 <= j <=size, where size
is the size, in bits, of i. That is, if i is a 64-bit object, j
must be within the range 0 <= j <= 64.
For values of j outside these ranges, SHIFT returns an undefined
result.
On UNICOS systems, an object is 64 bits. On UNICOS/mk systems, an
object is 32 bits or 64 bits. On IRIX systems, an object is 8 bits,
16 bits, 32 bits, or 64 bits.
SHIFT is an elemental function. The name of this intrinsic cannot be
passed as an argument.
NOTES
This is an outmoded routine. Refer to the Fortran Language Reference
Manual, Volume 2, publication SR-3903, for information about outmoded
features and their preferred standard alternatives.
The bit representation of the logical data type is not consistent
among Cray Research systems. For further details, see the your
compiler's reference manuals.
RETURN VALUESSHIFT returns a value of type Boolean on UNICOS and UNICOS/mk systems.
It returns an integer result on IRIX systems.
EXAMPLES
The following section of Fortran code shows the SHIFT function used in
the case where i is of type integer. For simplicity, a 16-bit object
is used. The bit pattern of i and the bit pattern of the result are
also given.
INTEGER I1, I2, I3
...
I2 = 5
I3 = SHIFT(I1,I2)
---------------------------------------------------------------
| 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
---------------------------------------------------------------
I1 (i)
---------------------------------------------------------------
| 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 |
---------------------------------------------------------------
I3 (result)
SEE ALSOSHIFTL(3I)
Intrinsic Procedures Reference Manual, publication SR-2138, for the
printed version of this man page.