Python中左移运算符和右移运算符

2023-03-15 00:00:00 python 运算符 中左移

左移运算符和右移运算符都是一种二进制运算符,用符号<<和>>表示,在计算机中通常用于对二进制数进行位运算。

左移运算符的规则如下:

将一个数的二进制表示向左移动指定的位数,空出的位用0补齐。
示例:

假设有一个二进制数0101,对它进行左移运算,移动2位后的运算结果如下:

 0101 << 2
----------
 10100

因为左移两位后,最低位和次低位上的数字被移动到了更高的位置,所以结果为10100。

在Python中,可以使用<<符号进行左移运算。例如:

num = 0b0101
result = num << 2
print(bin(result))  # '0b10100'

输出结果为0b10100,即左移运算的结果。

右移运算符的规则如下:

将一个数的二进制表示向右移动指定的位数,空出的位用符号位填充(即对于正数用0填充,负数用1填充)。
示例:

假设有一个二进制数10100,对它进行右移运算,移动2位后的运算结果如下:

 10100 >> 2
----------
 00101
 ```
因为右移两位后,最高位和次高位上的数字被移动到了更低的位置,空出的位用符号位填充,所以结果为00101。

在Python中,可以使用>>符号进行右移运算。例如:

```python
num = 0b10100
result = num >> 2
print(bin(result))  # '0b101'

输出结果为0b101,即右移运算的结果。

相关文章