前端位运算

1

当一个数字被向左推了n位时,意味着该数字被乘以2的n次方。
25 << 3 = 200 (25 * 2 power 3)

2

我们将一个数字向右移1位时,它就将该数字除以2

位运算|

|------|---|---|---|---|---|---|
| 二进制表 | | | | | | |
| 2 | 0 | 0 | 0 | 0 | 1 | 0 |
| 4 | 0 | 0 | 0 | 1 | 0 | 0 |
| 8 | 0 | 0 | 1 | 0 | 0 | 0 |
| 16 | 0 | 1 | 0 | 0 | 0 | 0 |
| 32 | 1 | 0 | 0 | 0 | 0 | 0 |

他们都是只有一位为1其余位都为0,那么 2|4|8|16|32 =2+4+8+16+32=62

同理2|4=2+4=6

|------|---|---|---|---|---|---|
| 二进制表 | | | | | | |
| 2 | 0 | 0 | 0 | 0 | 1 | 0 |
| 4 | 0 | 0 | 0 | 1 | 0 | 0 |
| 6 | 0 | 0 | 0 | 1 | 1 | 0 |

位运算&

2&62=4=小的

|------|---|---|---|---|---|---|
| 二进制表 | | | | | | |
| 2 | 0 | 0 | 0 | 0 | 1 | 0 |
| 62 | 1 | 1 | 1 | 1 | 1 | 0 |
| 2 | 0 | 0 | 0 | 0 | 1 | 0 |

4&62=4=小的

位运算^ 两个位相同为0,相异为1

2^62=62-2=60 相当于把2从62中排除剩下就是60

|------|---|---|---|---|---|---|
| 二进制表 | | | | | | |
| 2 | 0 | 0 | 0 | 0 | 1 | 0 |
| 62 | 1 | 1 | 1 | 1 | 1 | 0 |
| 2 | 1 | 1 | 1 | 1 | 0 | 0 |

相关推荐
kyriewen119 小时前
你点的“刷新”是假刷新?前端路由的瞒天过海术
开发语言·前端·javascript·ecmascript·html5
skywalk816311 小时前
Kotti Next的tinyfrontend前端模仿Kotti 首页布局还是不太好看,感觉比Kotti差一点
前端
RopenYuan12 小时前
FastAPI -API Router的应用
前端·网络·python
走粥13 小时前
clsx和twMerge解决CSS类名冲突问题
前端·css
Purgatory00113 小时前
layui select重新渲染
前端·layui
weixin1997010801614 小时前
《中国供应商商品详情页前端性能优化实战》
前端·性能优化
赵孝正16 小时前
学习的本质是一个工程闭环:从模仿到内化的四阶段方法论(附风电实战案例)
前端·数据库·学习
Panzer_Jack17 小时前
easy-live2d v0.4.0 — 全面进化的 Live2D Web 开发体验
前端