共用方式為


__ull_rshift

Microsoft 專有的

在 x64,將右邊的第一個參數所指定的 64 位元值的第二個參數所指定的位元數。

unsigned __int64 __ull_rshift( 
   unsigned __int64 mask,  
   int nBit 
);

參數

  • [in] mask
    若要向右移位 64 位元整數值。

  • [in] nBit
    輪班,模數 x86 上的 32 和模數 x64 上的 64 位元數。

傳回值

遮罩前移nBit位元。

需求

內建

架構

__ull_rshift

x86,x64

標頭檔 <intrin.h>

備註

如果第二個參數大於 31 在 x86 (63 x64 上),該數字會採取模數 32 (64 x 64 上),來判斷要移位的位元數。 ull在名稱中會指示unsigned long long (unsigned __int64)。

範例

// ull_rshift.cpp
// compile with: /EHsc
// processor: x86, x64
#include <iostream>
#include <intrin.h>
using namespace std;

#pragma intrinsic(__ull_rshift)

int main()
{
   unsigned __int64 mask = 0x100;
   int nBit = 8;
   mask = __ull_rshift(mask, nBit);
   cout << hex << mask << endl;
}

Output

1

請參閱

參考

__ll_lshift

__ll_rshift

編譯器內建