在二进制运算中,左移操作符(`<<`)将一个数的二进制表示向左移动指定的位数,并在右侧补零。左移n位的操作相当于将该数乘以2的n次方(即2ⁿ)。
具体说明:
左移n位的数学意义 左移n位相当于将原数乘以2ⁿ。例如:
- 二进制数 `1010`(十进制5)左移2位后变为 `101000`(十进制40),即 $5 times 2^2 = 20$。
操作规则
- 高位补零: 移动过程中,左侧移出的位用零填充。 - 符号位处理
示例
- `9 << 2`:二进制 `1001` 左移2位变为 `100100`(十进制36)。
- `a << 3`:若 `a = 5`(二进制 `101`),则结果为 `101000`(十进制40)。
注意事项:
左移操作可能引发数据溢出,特别是当移位位数较多时。
在无符号数运算中,左移不会保留符号位,结果始终为正数。
通过以上规则,可以快速理解二进制左移的倍数关系。