【发布时间】:2012-01-10 11:22:32
【问题描述】:
由于这些符号,我很难在谷歌上搜索。
num & 8、num >> 8 和 num >> 8 & 64 在 JavaScript 中是什么意思?
【问题讨论】:
-
不要寻找树木。寻找森林。在这种情况下,您正在寻找“javascript 运算符”(其中有许多表,可以从中查找正确的运算符)。
标签: javascript numbers
由于这些符号,我很难在谷歌上搜索。
num & 8、num >> 8 和 num >> 8 & 64 在 JavaScript 中是什么意思?
【问题讨论】:
标签: javascript numbers
【讨论】:
求百位[num]->[/100]->[%10]
要提取位,请使用 [&] 对象屏蔽您感兴趣的位,然后可以选择使用 [>>] 进行位移。
例如,获取第 3 位(从 right 开始计数,从 0 开始)[num]->[& 8]->[>> 3]。
如果你只是想用计算来控制一个逻辑对象(比如 if 或 ggate),你可以跳过位移。
这些真的不是 Max 特定的问题,它们是基本的 DP 技术。
【讨论】:
左移
下面的表达式表示,左移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 个数字会留在结果中。
【讨论】: