zoukankan      html  css  js  c++  java
  • 关于位运算符的计算法方法

    我们都知道位运算符比正常的运算符速度要快,但是为什么会快呢?首先我们正常的运算符也是通过计算机通过位运算调用栈来实现的。位运算符计算时,首先将运算量转化为2进制。

    那么javascript位运算符有哪些呢?

    1.          &      按位与                  

    2.          |        按位或

    3.          ^       按位异或

    4.          ~      取反

    5.    >>     按位左移

    6.         >>     按位右移

    说明:

    (1)位运算符中除 ~ 外,均为二目运算符,即要求两侧各有一个运算量。

    (2)运算只能是整型或字符型的数据,不能为实型数据。

    1.按位与       &

    左值与右值都为true,则为true,否则就为false。

    console.log(5&7);//5

    详解:

    2.按位或      |

    左值与右值都为true,则为true,否则就为false。

    console.log(5|7);//7  

    详解:

    3.按位异     ^

    若参与计算的两个二进位为同号则为0,异号则为1

    console.log(true ^ true);//0

    console.log(true ^ false);//1       

    console.log(false ^ false);//0    

    console.log(false ^ true);//1

    详解:

    4.按位取反     ~

    console.log(~2.5);//-3                取反之后向下取整

    5.按位左移     <<

    详解:例:5<<2    把二进制5向左推移两位,右边补0,也相当于是 5*2^2,向下取整。

    console.log(5<<2);//20              5*x2*2=20  

    6.按位右移     >>

    详解:例:5>>2  把二进制5向右推移两位,左边补0,也相当于是5/2^2,向下取整。

    console.log(5>>2);//1              5*/(2*2)=1.25    

  • 相关阅读:
    Eclipse连接MySQL数据库(傻瓜篇)
    JMeter监控内存及CPU ——plugin插件监控被测系统资源方法
    fiddler抓取手机端的数据流量包
    python 字典(dictionary)一些方法
    python 循环语句
    Charles 抓 HTTPS 包
    python RSA 加密与签名
    从零开始做一个Jmeter性能测试
    [python之路]变量和字符编码
    [python之路]简单介绍
  • 原文地址:https://www.cnblogs.com/Steeland/p/7142158.html
Copyright © 2011-2022 走看看