__ull_rshift
Section spécifique à Microsoft
sur x64, déplace une valeur 64 bits spécifiée par le premier paramètre à droite par un certain nombre de bits spécifiés par le deuxième paramètre.
Syntaxe
unsigned __int64 __ull_rshift(
unsigned __int64 mask,
int nBit
);
Paramètres
mask
[in] Valeur entière 64 bits à déplacer vers la droite.
nBit
[in] Nombre de bits à déplacer, modulo 32 sur x86 et modulo 64 sur x64.
Valeur retournée
Masque décalé par nBit
bits.
Spécifications
Intrinsic | Architecture |
---|---|
__ull_rshift |
x86, x64 |
Fichier<d’en-tête intrin.h>
Notes
Si le deuxième paramètre est supérieur à 31 sur x86 (63 sur x64), ce nombre est pris modulo 32 (64 sur x64) pour déterminer le nombre de bits à déplacer. Le ull
nom 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;
}
1
FIN de la section spécifique à Microsoft