FORTRAN 77 Language Reference

VMS Bit-Manipulation

Table 6-11 VMS Bit-Manipulation Functions

Generic Name 

Specific Names 

Function 

Argument Type 

Result Type 

IBITS IIBITS JIBITS

From a1, initial bit a2, extract a3 bits

 

- INTEGER*2 INTEGER*4- INTEGER*2 INTEGER*4
ISHFT IISHFT JISHFT

Shift a1 logically by a2 bits; if a2 positive shift left, if a2 negative shift right

Shift a1 logically left by a2 bits

Shift a1 logically left by a2 bits

- INTEGER*2 INTEGER*4- INTEGER*2 INTEGER*4
ISHFTC IISHFTC JISHFTC

In a1, circular shift by a2 places, of right a3 bits

 

- INTEGER*2 INTEGER*4- INTEGER*2 INTEGER*4
IAND IIAND JIAND

Bitwise AND of a1, a2

 

- INTEGER*2 INTEGER*4- INTEGER*2 INTEGER*4
IOR IIOR JIOR

Bitwise OR of a1, a2

 

- INTEGER*2 INTEGER*4- INTEGER*2 INTEGER*4
IEOR IIEOR JIEOR

Bitwise exclusive OR of a1, a2

 

- INTEGER*2 INTEGER*4- INTEGER*2 INTEGER*4
NOT INOT JNOT

Bitwise complement 

 

- INTEGER*2 INTEGER*4- INTEGER*2 INTEGER*4
IBSET IIBSET JIBSET

In a1, set bit a2 to 1

In a1, set bit a2 to 1; return new a1

In a1, set bit a2 to 1; return new a1

- INTEGER*2 INTEGER*4- INTEGER*2 INTEGER*4
BTEST BITEST BJTEST

If bit a2 of a1 is 1, return .TRUE.

 

- INTEGER*2 INTEGER*4- INTEGER*2 INTEGER*4
IBCLR IIBCLR JIBCLR

In a1, set bit a2 to 0; return new a1

 

- INTEGER*2 INTEGER*4- INTEGER*2 INTEGER*4