btest(x, pos): Prueba de bits en la posición

Prueba de bits.

Declaración

Sintaxis

retval = btest(x, pos);
elemental logical function btest(x, pos)

Argumentos

x y pos son valores de entrada enteros. Ambos valores de entrada son del mismo tipo. pos representa la posición en x.

Valores devueltos

El valor de retorno es de tipo lógico.

Descripción

btest(x, pos) calcula si el bit pos en el valor entero de entrada x está establecido. El conteo de bits comienza en 0, al menos el bit significativo (LSB), es decir, el bit más a la derecha en x.

Si pos es menor que 0 o mayor que bit_size(), btest(x, pos) tiene un mensaje de error no permitido.

Tipos

Los tipos de entrada admitidos son números enteros de 32 bits y 64 bits.

interface btest
    module procedure btest32, btest64
end interface

contains

interface
    elemental logical function btest32(x, pos)
	integer(int32), intent(in) :: x
	integer, intent(in) :: pos
	end function

    elemental logical function btest64(x, pos)
	integer(int64), intent(in) :: x
	integer, intent(in) :: pos
	end function
end interface

Ejemplos

program intrinsics_btest
    implicit none
    print *, btest(2, 0)
end program

Result:

false

Ver también