2017-01-03 86 views
2

我在读东西,我不明白以下所述的位移的含义,但我认为它基本上是编程问题。我正在阅读一个文件,看到这个 #define PIN_GEN (((uint32_t)1)<<31),但我不太明白(((uint32_t)1)<<31)的含义。有人能告诉我这是什么意思吗?如何解释此位移?

回答

2

((uint32_t)1)<<31 - >使类型为uint32_t的恒定1(32位无符号无填充),然后左移31个位置。相同

((uint32_t) 2147483648u) 

该值可能用作某种位掩码来指示要设置的位。