shifta(3I)
SHIFTA - Performs an arithmetic shift
As shipped in IRIX 6.5.15. Last changed in IRIX 6.5.5.
NAME SHIFTA - Performs an arithmetic shift SYNOPSIS SHIFTA ([I=]i, [J=]j) IMPLEMENTATION UNICOS, UNICOS/mk, IRIX systems CF90, MIPSpro 7 Fortran 90 STANDARDS Fortran extension DESCRIPTION The SHIFTA intrinsic function performs a right shift with sign extension fill of the object i by j. Its arguments are as follows: i The value to be shifted. Must 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, SHIFTA 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. SHIFTA is an elemental function. The name of this intrinsic cannot be passed as an argument. NOTES The bit representation of the logical data type is not consistent among UNICOS and UNICOS/mk systems. For further details, see the Fortran Language Reference Manual, Volume 3. RETURN VALUES SHIFTA 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 SHIFTA function used in the case where i is of type integer. The bit pattern of i and the bit pattern of the result are shown. For clarity, a 16-bit value is used rather than a 64-bit value. INTEGER I1, I2, I3 ... I2 = 5 I3 = SHIFTA(I1,I2) --------------------------------------------------------------- | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | --------------------------------------------------------------- I1 (i) --------------------------------------------------------------- | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | --------------------------------------------------------------- I3 (result) SEE ALSO Intrinsic Procedures Reference Manual for the printed version of this man page.