数字的位旋转 I
Coddy 位运算 课程的第 12 课,共 17 课。
旋转比特是什么意思?
我们通过一个示例来理解。

在上面的示例中,我们取了 (20)10 ,它的二进制表示是 (10100)2 ,然后将它向右旋转一次,得到 (01010)2,也就是 (10)10。如果我们向左旋转呢?就会得到 (40)10。
怎么会是 40 呢?
在计算机系统中,数字存储在 32 位、16 位或 8 位的空间中,这一点与上面示例中的旋转类似。但在 16 位计算机中,数字 (20)10 会以 (000000000010100)2 的形式存储在内存中,总共使用 16 位来保存数字 20。因此,旋转这个二进制数时,你必须考虑全部 16 位,而不只是 5 位。所以,尝试旋转一个数字时,你可能会得到不同的结果,因为结果取决于你使用的是 32 位、16 位还是 8 位计算机。
在下一课中,我们来了解位操作如何帮助我们旋转比特。
亲手试试
这节课没有代码挑战。
位运算中的所有课
自己练习: C++ 在线编译器
检查进制转换: 进制转换器