__ull_rshift
Spécifique à Microsoft
sur x64, décalages une valeur 64 bits spécifié par le premier paramètre vers la droite selon un certain nombre de bits spécifié par le deuxième paramètre.
unsigned __int64 __ull_rshift(
unsigned __int64 mask,
int nBit
);
Paramètres
[in] mask
La valeur entière 64 bits pour déplacer la droite.[in] nBit
Le nombre de bits à déplacer, du modulo 32 sur x86, et du modulo 64 sur x64.
Valeur de retour
Le masque déplacé par les bits d' nBit .
Configuration requise
Intrinsèque |
Architecture |
---|---|
__ull_rshift |
x86, x64 |
Fichier d'en-tête <intrin.h>
Notes
Si le deuxième paramètre est supérieur à 31 sur les ordinateurs x86 (63 sur x64), ce nombre est le modulo pris 32 (64 sous x64) pour déterminer le nombre de bits pour déplacer. ull dans l'étiquette indique unsigned long long (unsigned __int64).
Exemple
// 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;
}
Sortie
1