【问题标题】:What do "num & 8", "num >> 8" and "num >> 8 & 64" mean in javascript?“num & 8”、“num >> 8”和“num >> 8 & 64”在javascript中是什么意思?
【发布时间】:2012-01-10 11:22:32
【问题描述】:

由于这些符号,我很难在谷歌上搜索。

num & 8num >> 8num >> 8 & 64 在 JavaScript 中是什么意思?

【问题讨论】:

标签: javascript numbers


【解决方案1】:

【讨论】:

    【解决方案2】:

    求百位[num]->[/100]->[%10]

    要提取位,请使用 [&] 对象屏蔽您感兴趣的位,然后可以选择使用 [>>] 进行位移。

    例如,获取第 3 位(从 right 开始计数,从 0 开始)[num]->[& 8]->[>> 3]。

    如果你只是想用计算来控制一个逻辑对象(比如 if 或 ggate),你可以跳过位移。

    这些真的不是 Max 特定的问题,它们是基本的 DP 技术。

    【讨论】:

      【解决方案3】:

      左移

      下面的表达式表示,左移2个二进制数:

      alert( 1 << 2 );
      

      所以这是二进制(我会以 8 位为例),将位向左移动 2 个位置

      00000001 = 1
      00000010 = 2
      00000100 = 4
      

      右移>>

      下面的表达式表示,左移2个二进制数:

      alert( 255 >> 2 );
      

      所以这是二进制(例如,我将取 8 位),将位向右移动 2 个位置

      11111111 = 255
      01111111 = 127
      00111111 = 63
      

      AND 运算符 &

      这就是 and 运算符

      所以你得到了以下规则:

      11110011 = 243
      01001111 = 79
      01000011 = 67 = RESULT
      

      也就是说,如果两个数字在同一位置上都是 1,则只有 1 个数字会留在结果中。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-06-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-07-17
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多