Macro Int64ShllMod32 (winnt.h)
Effectue une opération de décalage logique gauche sur une valeur entière 64 bits non signée. La fonction fournit un code de déplacement amélioré pour les décalages logiques de gauche où le nombre de décalages est dans la plage 0-31.
Syntaxe
void Int64ShllMod32(
[in] a,
[in] b
);
Paramètres
[in] a
Entier 64 bits non signé à déplacer.
[in] b
Nombre de décalages dans la plage 0-31.
Valeur de retour
None
Remarques
Le nombre de décalages correspond au nombre de positions de bits déplacées par les bits de la valeur.
Dans une opération de décalage logique gauche sur une valeur non signée, les bits de la valeur se déplacent vers la gauche et les bits libérés sur le côté droit de la valeur sont définis sur zéro.
Un compilateur peut générer du code optimal pour une opération de décalage logique gauche lorsque le nombre de décalages est une constante. Toutefois, si le nombre de décalages est une variable dont la plage de valeurs est inconnue, le compilateur doit supposer le pire cas, ce qui conduit à un code non optimal : code qui appelle une sous-routine ou code qui est inline mais branches. En limitant le nombre de décalages à la plage 0-31, la fonction Int64ShllMod32 permet au compilateur de générer un code optimal ou quasi optimal.
Notez que le paramètre Value et la valeur de retour de la fonction Int64ShllMod32 sont des valeurs 64 bits, et non LARGE_INTEGER structures.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP [applications de bureau | applications UWP] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau | applications UWP] |
Plateforme cible | Windows |
En-tête | winnt.h (inclure Windows.h) |