Share via


Macro Int64ShraMod32 (winnt.h)

Executa uma operação de deslocamento aritmético à direita em um valor inteiro de 64 bits com sinal. A função fornece um código de deslocamento aprimorado para deslocamentos aritméticos à direita em que a contagem de deslocamentos está no intervalo de 0 a 31.

Sintaxe

void Int64ShraMod32(
  [in]  a,
  [in]  b
);

Parâmetros

[in] a

O inteiro com sinal de 64 bits a ser deslocado.

[in] b

A contagem de deslocamentos no intervalo de 0 a 31.

Retornar valor

Nenhum

Comentários

A contagem de deslocamentos é o número de posições de bit que os bits do valor movem.

Em uma operação de deslocamento aritmética à direita em um valor assinado, os bits do valor se movem para a direita e os bits desocupados no lado esquerdo do valor são definidos como o valor do bit de sinal.

Um compilador pode gerar um código ideal para uma operação de deslocamento aritmética à direita quando a contagem de deslocamentos é uma constante. No entanto, se a contagem de deslocamentos for uma variável cujo intervalo de valores é desconhecido, o compilador deverá assumir o pior caso, levando a um código não ideal: código que chama uma sub-rotina ou código embutido, mas ramifica. Ao restringir a contagem de deslocamentos ao intervalo de 0 a 31, a função Int64ShraMod32 permite que o compilador gere um código ideal ou quase ideal.

Observe que o parâmetro Value e o valor retornado da função Int64ShraMod32 são valores de 64 bits, não LARGE_INTEGER estruturas.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [aplicativos da área de trabalho | aplicativos UWP]
Servidor mínimo com suporte Windows Server 2003 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho winnt.h (inclua Windows.h)

Confira também

Int64ShllMod32

Int64ShrlMod32

Inteiros Grandes