Macro Int64ShllMod32 (winnt.h)
Esegue un'operazione di spostamento logico a sinistra su un valore intero senza segno a 64 bit. La funzione fornisce un codice di spostamento migliorato per i turni logici a sinistra in cui il conteggio dei turni è compreso nell'intervallo 0-31.
Sintassi
void Int64ShllMod32(
[in] a,
[in] b
);
Parametri
[in] a
Intero senza segno a 64 bit da spostare.
[in] b
Conteggio dei turni nell'intervallo 0-31.
Valore restituito
nessuno
Osservazioni
Il conteggio dei turni è il numero di posizioni di bit spostate dai bit del valore.
In un'operazione di spostamento logico a sinistra su un valore senza segno, i bit del valore vengono spostati a sinistra e i bit liberati sul lato destro del valore vengono impostati su zero.
Un compilatore può generare codice ottimale per un'operazione di spostamento logico a sinistra quando il conteggio dei turni è una costante. Tuttavia, se il conteggio dei turni è una variabile il cui intervallo di valori è sconosciuto, il compilatore deve presupporre il peggiore dei casi, causando codice non ottimale: codice che chiama una subroutine o codice inline ma rami. Limitando il numero di turni all'intervallo 0-31, la funzione Int64ShllMod32 consente al compilatore di generare codice ottimale o quasi ottimale.
Si noti che il parametro Value della funzione Int64ShllMod32 e il valore restituito sono valori a 64 bit, non LARGE_INTEGER strutture.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP [app desktop | App UWP] |
Server minimo supportato | Windows Server 2003 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | winnt.h (include Windows.h) |