js按位运算,js 按位与

  js按位运算,js 按位与

  本教程运行环境:windows7系统,javascript1.8.5版本1.8.5,戴尔G3电脑。

  在javascript中,使用“~”运算符可以实现按位求反。如~1=-2,~-3=2,~真=-2,~假=-1

  “~”运算符可以查看指定值的二进制表示形式,并逐位对二进制操作数求反。

  步骤1:将操作数转换为32位二进制整数。

  第二步:一点一点反转。

  第三步:将二进制反码转换成十进制浮点数。

  如果对12执行按位求反,则返回值为-13。

  console . log(~ 12);//返回值-13下图以方程的形式分析了12按位求反的过程。

  如何按位取反计算

  比特倒置的操作规则步骤:

  

1、十进制转成原码

  转换成二进制源代码,最高位是符号位,0为正,1为负。

  十进制原始代码

  1 - 00000001

  -1-1000001:

2、原码转成反码

  正数的倒数是原码,负数的倒数是符号位不变,其余位反转。

  十进制-原码-反码

  1 - 00000001 - 00000001

  -1-1000001-1111110:

3、反码转成补码

  正数的补码仍是原码,负数的补码在反码的基础上加1。

  十进制-原码-反码-补码

  1 - 00000001 - 00000001 - 00000001

  -1-1000001-1111110-111111

4、补码取反得原码

  正整数的补码求反后,符号位置为1,为负整数。因此,根据计算负整数的补码的方法,通过逆运算获得原码。

  通过逆运算得到原码。先将逆补码转换成逆代码,公式为:逆代码=补码-1,再将逆代码转换成原码,符号位不变,其他位反转。

  十进制原始码-补码-补码-补码-补码-补码-补码-补码-补码-补码-补码-补码-补码-补码-补码-补码-补码-补码-补码-补码-补码-补码

  1-00000001-000001-0000001-1111110-111101-10000010负整数补码求反后符号位置为0,为正整数。因为正整数的

  十进制-原码-反码-补码-补码求逆得到原码。

  -1-1000001-1111110-111111-000000

5、将原码转成二进制

  十进制-原码-补码-补码

  1-00000001-000001-0000001-1111110-111101-10000010-2十进制系统

  -1-1000001-1111110-111111-000000-0所以,~1=-2,~-1=0

  取反再取反~~的作用

  运算符~,意思是逐位求逆,表面上看没有意义~ ~(求逆求逆)。其实浮点数在JS中是可以变成整数的。

  console . log(~ ~ 1.11);//1

  console . log(~ ~-25.11);//-25【相关推荐:javascript学习教程以上是javascript中如何一点一点反转的详细内容。更多信息请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: