Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Выполняет операцию логического смены в 64-разрядном целочисленном значении без знака. Функция предоставляет улучшенный код перемещения для правых логических сдвигов, где число сдвигов находится в диапазоне 0–31.
Синтаксис
ULONGLONG Int64ShrlMod32(
[in] ULONGLONG a,
[in] DWORD b
);
Параметры
[in] a
Перемещенное 64-разрядное целое число без знака.
[in] b
Число сдвигов в диапазоне 0–31.
Возвращаемое значение
Тип: ULONGLONG
Возвращаемое значение является результатом целочисленного целого числа без знака операции логического смены вправо.
Замечания
Число сдвигов — это количество битовых позиций, которые перемещаются битами значения.
В операции логического смены в правой части значения без знака биты перемещаются вправо и освобожденные биты в левой части значения равны нулю.
Компилятор может создать оптимальный код для операции правой логической смены, когда число сдвигов является константой. Однако если число сдвигов является переменной, диапазон значений которой неизвестен, компилятор должен предположить худший случай, что приводит к неоптимальным кодам: код, который вызывает подзадачи или код, который является встроенным, но ветвями. Ограничив число сдвигов диапазоном 0–31, функция Int64ShrlMod32 позволяет компилятору создавать оптимальный или почти оптимальный код.
Требования
Требование | Ценность |
---|---|
Минимальный поддерживаемый клиент | Windows XP [классические приложения | Приложения UWP] |
минимальный поддерживаемый сервер | Windows Server 2003 [классические приложения | Приложения UWP] |
целевая платформа | Виндоус |
Заголовок | winnt.h (включая Windows.h) |