>"和 "&"运算符的变量赋值-6ren"> >"和 "&"运算符的变量赋值-我一直试图理解一个 Python 脚本,但我无法弄清楚这个作业在做什么: data_byte2 = value >> 7 & 127 我见过一种与 or 运算符类似的结构,但从未见过 & 并且我完全不-6ren">
gpt4 book ai didi

python - 使用 ">>"和 "&"运算符的变量赋值

转载 作者:行者123 更新时间:2023-11-28 21:17:53 25 4
gpt4 key购买 nike

我一直试图理解一个 Python 脚本,但我无法弄清楚这个作业在做什么:

data_byte2 = value >> 7 & 127

我见过一种与 or 运算符类似的结构,但从未见过 & 并且我完全不知道 >> 是什么 确实如此(Google 上没有任何相关信息)。

最佳答案

value >> 7 & 127

就像写作:

(value >> 7) & 127  # see Python Operators Precedence

首先将 value 右移 7,然后 & 结果为 127。

二进制中的 127 是 1111111,当您使用此数字 & 时,您将清除该数字左侧的所有位。例如,如果您有 16 位数:

1101011101111101

将它向右移动 7 将导致:

0000000110101110

& 127 将只保留最右边的 8 位:

0000000110101110
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
0000000001111111 & (127)
----------------
0000000000101110

关于python - 使用 ">>"和 "&"运算符的变量赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27401306/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com