BTEST

Elemental Intrinsic Function (Generic): Tests a bit of an integer argument.

Syntax

result = BTEST (i, pos)

i
(Input) Must be of type integer.

pos
(Input) Must be of type integer. It must not be negative and it must be less than BIT_SIZE(i).
The rightmost (least significant) bit of i is in position 0.

Results:

The result is of type default logical.

The result is true if bit pos of i has the value 1. The result is false if pos has the value zero. For more information, see Bit Functions.

For information on the model for the interpretation of an integer value as a sequence of bits, see Model for Bit Data.

The setting of compiler option /integer_size can affect this function.

Specific Name  Argument Type  Result Type 
 INTEGER(1) LOGICAL(1)
BITEST INTEGER(2) LOGICAL(2)
BTEST 1 INTEGER(4) LOGICAL(4)
BKTEST INTEGER(8) LOGICAL(8)
1 Or BJTEST

Compatibility

CONSOLE STANDARD GRAPHICS QUICKWIN GRAPHICS WINDOWS DLL LIB

See Also: IBCLR, IBSET, IBCHNG, IOR, IEOR, IAND

Examples

BTEST (9, 3) has the value true.

If A has the value

  [ 1  2 ]
  [ 3  4 ],
the value of BTEST (A, 2) is
  [ false  false ]
  [ false   true ]
and the value of BTEST (2, A) is
  [ true   false ]
  [ false  false ].

The following shows more examples:

Function reference i Result
BTEST (i,2) 00011100 01111000 .FALSE.
BTEST (i,3) 00011100 01111000 .TRUE.

The following shows another example:

INTEGER(1) i(2)
LOGICAL result(2)
i(1) = 2#10101010
i(2) = 2#01010101
result = BTEST(i, (/3,2/))   ! returns (.TRUE.,.TRUE.)
write(*,*) result