发新帖我要提问
123
返回列表
打印
[应用方案]

位运算的使用

[复制链接]
楼主: febgxu
手机看帖
扫描二维码
随时随地手机跟帖
41
updownq| | 2025-4-13 21:36 | 只看该作者 回帖奖励 |倒序浏览
左移时,最高位可能会被移出并丢失,需要注意溢出问题。
右移时,对于有符号整数,算术右移会保持符号位,逻辑右移则在高位补0。

使用特权

评论回复
42
macpherson| | 2025-4-13 21:49 | 只看该作者
某些操作可能导致未定义行为,例如修改同一变量的多个位域在同一个表达式中,或者移位负数。

使用特权

评论回复
43
jtracy3| | 2025-4-13 22:03 | 只看该作者
合理使用位运算可显著提升性能并节省内存

使用特权

评论回复
44
sesefadou| | 2025-4-13 22:16 | 只看该作者
某些架构对位运算优化较好,但复杂操作(如位反转)可能需多条指令。

使用特权

评论回复
45
kkzz| | 2025-4-13 22:29 | 只看该作者
右移操作在有符号数中的行为是依赖编译器的,可能进行算术右移(填充符号位)或逻辑右移(填充0)。这可能导致意料之外的结果,尤其是处理负数时。

使用特权

评论回复
46
modesty3jonah| | 2025-4-13 22:43 | 只看该作者
在多线程/中断环境中,需确保位操作的原子性。

使用特权

评论回复
47
yorkbarney| | 2025-4-14 11:36 | 只看该作者
&& 和 & 的区别,逻辑运算返回布尔值,而位运算是按位操作,容易混淆导致错误。

使用特权

评论回复
48
primojones| | 2025-4-14 11:51 | 只看该作者
有符号整数在计算机中通常采用补码表示。在进行位运算时,需要注意符号位的处理。例如,对于负数,其补码表示的最高位为1,进行按位取反操作时,会得到正数的补码表示。

使用特权

评论回复
49
plsbackup| | 2025-4-14 13:21 | 只看该作者
为了避免混淆和错误,建议在进行复合位运算时使用括号来明确计算顺序。

使用特权

评论回复
50
mickit| | 2025-4-14 14:22 | 只看该作者
位运算符:
&(按位与):两个位都为1时,结果为1。
|(按位或):两个位中有一个为1时,结果为1。
^(按位异或):两个位不同时,结果为1。
~(按位取反):0变1,1变0。
<<(左移):将位向左移动指定的位数,右边补0。
>>(右移):将位向右移动指定的位数,左边补符号位(算术右移)或0(逻辑右移)。

使用特权

评论回复
51
1988020566| | 2025-4-14 16:58 | 只看该作者
位运算符的优先级可能低于其他运算符,比如加减乘除,容易导致逻辑错误。例如,a & b == c 会被解释为 a & (b == c),但用户可能想要的是 (a & b) == c。

使用特权

评论回复
52
明日视界| | 2025-5-1 17:49 | 只看该作者
位运算得小心用,搞错了容易有隐藏bug

使用特权

评论回复
53
单芯多芯| | 2025-5-10 18:24 | 只看该作者
右移时符号位保持不变,比如负数右移,高位补符号位。

使用特权

评论回复
54
物联万物互联| | 2025-5-11 19:52 | 只看该作者
超出数据类型范围,可能导致数据丢失或错误。

使用特权

评论回复
55
流星flash| | 2025-5-17 08:22 | 只看该作者
位运算优先级低,不加括号容易出错。

使用特权

评论回复
56
Moon月| | 2025-5-18 18:17 | 只看该作者
对有符号和无符号数相加,结果可能会超出无符号数的范围,造成数据溢出。得小心点。

使用特权

评论回复
57
dreamCar| | 2025-5-20 12:08 | 只看该作者
运算符优先级:先算乘除,后算加减;符号位看最高位;溢出看是否超出范围;可移植性写平台无关;代码读得懂。

使用特权

评论回复
58
不想打补丁| | 2025-5-21 15:41 | 只看该作者
操作数大小和符号很重要,移位时更要小心,不然数据可能变反了。

使用特权

评论回复
59
hmcu666| | 2025-5-24 12:22 | 只看该作者
位运算就像对电脑里的电子开关玩儿,按规则打开或关闭它们,可以用来做各种巧妙的操作。

使用特权

评论回复
60
理想阳| | 2025-5-25 22:27 | 只看该作者
位运算复杂,容易看不懂,加注释和好名字能帮大忙。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则