int64ShllMod32 宏 (winnt.h)

对无符号 64 位整数值执行左逻辑移位运算。 函数为左逻辑移位提供改进的移位代码,其中移位计数在 0-31 范围内。

语法

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

参数

[in] a

要移动的无符号 64 位整数。

[in] b

0-31 范围内的移位计数。

返回值

备注

移位计数是值位移动的位位置数。

在对无符号值的左逻辑移位运算中,值的位向左移动,值右侧的空位设置为零。

当移位计数为常数时,编译器可以为左逻辑移位操作生成最佳代码。 但是,如果移位计数是一个变量,其值范围未知,编译器必须假定最坏的情况,导致非最佳代码:调用子例程的代码,或内联但分支的代码。 通过将移位计数限制在 0-31 范围内, Int64ShllMod32 函数允许编译器生成最佳或接近最佳代码。

请注意, Int64ShllMod32 函数的 Value 参数和返回值是 64 位值,而不是 LARGE_INTEGER 结构。

要求

要求
最低受支持的客户端 Windows XP [桌面应用 | UWP 应用]
最低受支持的服务器 Windows Server 2003 [桌面应用 | UWP 应用]
目标平台 Windows
标头 winnt.h (包括 Windows.h)

另请参阅

Int64ShraMod32

Int64ShrlMod32

大整数