부호 없는 64비트 정수 값에 대해 왼쪽 논리 시프트 작업을 수행합니다. 이 함수는 시프트 수가 0-31 범위인 왼쪽 논리 시프트에 대해 향상된 시프트 코드를 제공합니다.
문법
ULONGLONG Int64ShllMod32(
[in] ULONGLONG a,
[in] DWORD b
);
매개 변수
[in] a
이동할 부호 없는 64비트 정수입니다.
[in] b
0-31 범위의 시프트 수입니다.
반환 값
형식: ULONGLONG
반환 값은 왼쪽 논리 시프트 작업의 부호 없는 64비트 정수 결과입니다.
비고
시프트 수는 값의 비트가 이동하는 비트 위치의 수입니다.
부호 없는 값의 왼쪽 논리 시프트 작업에서 값의 비트는 왼쪽으로 이동하고 값의 오른쪽에 비어 있는 비트는 0으로 설정됩니다.
컴파일러는 시프트 수가 상수인 경우 왼쪽 논리 시프트 작업에 대한 최적의 코드를 생성할 수 있습니다. 그러나 시프트 수가 값 범위를 알 수 없는 변수인 경우 컴파일러는 최악의 경우를 가정해야 하며, 이로 인해 최적이 아닌 코드인 서브루틴을 호출하는 코드 또는 인라인이지만 분기하는 코드가 발생합니다. Int64ShllMod32 함수는 시프트 수를 0-31 범위로 제한하여 컴파일러가 최적 또는 거의 최적 코드를 생성할 수 있도록 합니다.
Int64ShllMod32 함수의 Value 매개 변수 및 반환 값은 LARGE_INTEGER 구조체가 아닌 64비트 값입니다.
요구 사항
요구 사항 | 가치 |
---|---|
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | 윈도우즈 |
헤더 | winnt.h(Windows.h 포함) |