__ull_rshift

Específicos de Microsoft

en x64, cambia un valor de 64 bits especificado por el primer parámetro a la derecha por varios bits especificado por el segundo parámetro.

unsigned __int64 __ull_rshift( 
   unsigned __int64 mask,  
   int nBit 
);

Parámetros

  • [in] mask
    El valor entero de 64 bits para desplazar la derecha.

  • [in] nBit
    El número de bits para desplazarse, el módulo 32 en x86, el módulo y 64 en x64.

Valor devuelto

La máscara se desplaza por los bits de nBit .

Requisitos

Intrínseco

Arquitectura

__ull_rshift

x86, x64

Archivo de encabezado <intrin.h>

Comentarios

Si el segundo parámetro es mayor que 31 en x86 (63 en x64), ese número es el módulo tomado 32 (64 en x64) para determinar el número de bits para desplazarse. ull en el nombre indica unsigned long long (unsigned __int64).

Ejemplo

// ull_rshift.cpp
// compile with: /EHsc
// processor: x86, x64
#include <iostream>
#include <intrin.h>
using namespace std;

#pragma intrinsic(__ull_rshift)

int main()
{
   unsigned __int64 mask = 0x100;
   int nBit = 8;
   mask = __ull_rshift(mask, nBit);
   cout << hex << mask << endl;
}

Output

1

Vea también

Referencia

__ll_lshift

__ll_rshift

Intrínsecos del controlador