HOW - 二进制位运算符优化计算

一、介绍:二进制运算符

在 JavaScript 中,可以利用二进制位运算符来优化计算,这些运算符可以直接操作二进制表示的数据,提高了一些数值操作的效率。

以下是 JavaScript 中二进制位运算符的特性:

1. 按位与(AND):&

对两个数的每一位进行比较,如果两个数的对应位都为1,则结果为1,否则为0。

特性:用于清除特定位上的值,或者提取特定位上的值。

2. 按位或(OR):|

对两个数的每一位进行比较,如果两个数的对应位有一个为1,则结果为1,否则为0。

特性:用于设置特定位上的值,或者将多个标志位合并。

3. 按位异或(XOR):^

对两个数的每一位进行比较,如果两个数的对应位不同,则结果为1,否则为0。

特性:用于交换变量值、去除重复项等。

4. 按位非(NOT):~

对一个数的每一位进行取反操作(0 变为 1,1 变为 0)。

特性:用于取反操作,或者对数的某些位进行取反。

5. 左移(Left Shift):<<

将一个数的二进制表示向左移动指定的位数,低位补0。

特性:相当于将一个数乘以2的指定次幂。

6. 右移(Right Shift):>>

将一个数的二进制表示向右移动指定的位数,高位补符号位(正数补0,负数补1)。

特性:相当于将一个数除以2的指定次幂,但是在处理负数时可能会产生符号位扩展。

7. 无符号右移(Unsigned Right Shift):>>>

将一个数的二进制表示向右移动指定的位数,高位补0。

特性:用于对无符号整数进行逻辑右移操作,忽略了符号位扩展。

这些位运算符在处理位操作、加密算法、图像处理等领域都有广泛的应用,但在使用时需要谨慎,确保理解清楚其操作的含义和特性。

以下是一些使用二进制运算符优化计算的常见例子:

二、与运算符

2.1 清零操作

使用位与运算符 & 可以清除一个数的指定位。

// &
let num = 0b10101010; // 十进制 170
let mask = 0b00001111; // 低四位为1,其余位为0
let result = num 
  • 10
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值