问题标签 [bitwise-or]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
73 浏览

javascript - PHP 按位或与 Javascript 按位或

Javascript:

PHP:

为什么 PHP 中的按位运算结果与 Javascript 中的按位运算结果不同?

0 投票
1 回答
31 浏览

javascript - 想知道使用 0 的 OR 位运算的原因

当我检查一些代码时,我发现了一个关于位操作(|0)的未命中计算。

首先,我想知道在计算两个像 (a*b)|0 这样的数字之后使用 '|0' 有什么特殊原因

其次,在下面的例子中,我期望得到的结果是 220050,但结果是 220049。你们知道我为什么会得到这个结果吗?

导入包(java.io);导入包(java.lang);

0 投票
4 回答
101 浏览

c++ - 使用按位或代替 std::max 进行缓冲区大小调整

我正在查看一些 C++ 网络代码。当我去找出缓冲区有多大时,我发现了这样的东西:

我相信这里的基本思想是缓冲区可以包含这 6 个结构中的任何一个。这是在外部范围声明的,因此它可用于稍后的外部范围uint8_t数组大小。

现在通常在这里我希望看到使用 std::max() 函数或三元运算符来计算这 6 个结构中最大的确切大小的东西。我以前从未见过上述成语,不得不停下来说服自己它会起作用。

因此,由于我是这方面的新手,我一般想知道这是多么有效,以及这样做的好处和缺点是什么。

我能看到的是——

亲:

  • 它应该始终为您提供至少与最大结构大小一样大的大小。如果空间不是很宝贵,这就是您真正需要的。
  • 它似乎在编译时是可计算的。
  • 它甚至可以使用非常旧的 C++(甚至 C)编译器。

缺点:

  • 它可以使尺寸几乎是必要的两倍。
  • 这使得人们更难以离线准确地确定缓冲区的大小。
  • 它奇怪/出乎意料。
0 投票
2 回答
118 浏览

swift - Swift OptionSetType 按位或

说我有以下OptionSetType

我将如何确定 type 的值是否Modifier包含至少一个包含在 中的元素Modifier.Default

0 投票
1 回答
4268 浏览

bit-manipulation - 所有对位或总和

是否有一种算法可以找到按位或求和或线性时间复杂度的数组?

假设如果数组是 {1,2,3},那么所有对的和 id 为 1|2 + 2|3 + 1|3 = 9。

我可以使用以下算法在 O(n) 中找到所有对 AND 总和....如何更改它以获取所有对 OR 总和。

从这里:http ://www.geeksforgeeks.org/calculate-sum-of-bitwise-and-of-all-pairs/

0 投票
2 回答
2020 浏览

bit-manipulation - 按位运算和设置“标志”

所以这是我上一篇文章的更新,但我仍然很难理解它是如何工作的。所以我给出了主要功能:

对于赋值,我们应该编写函数 set_flag 和 check_flag,以便输出等于:

所以据我了解,应该使用“set_flag”函数来确保第 n 位为 1。当第 n 位为 0 时,“check_flag”函数返回一个整数,当它为 1 时返回 1 .我不明白“set_flag”到底在做什么,以及3、16和31如何被保存为“flags”,然后在“check_flag”中返回为1。

0 投票
1 回答
34 浏览

python-2.7 - 在客户端 - 服务器场景中按位计算错误

我的任务是为客户端创建服务器。我有所有客户的代码,所以使用它,我必须创建一个服务器。

readInt(num1)客户端在一个名为;的函数中有一段特定的代码。return num1 << 24 | num1 << 16 | num1 << 8 | num1,每次客户端期望type = int从数据包中接收到的数据时都会调用它,我就是不能讨价还价。

我尝试了首先想到的-只是将其反转,对吗?如果 int 需要为 3,则 do 3 >> 24,但没有 yield。

我的思维在数学上不能很好地工作,而且我不是一个很好的问题解决者,所以如果我想3在服务器上说在客户端上读取3,我将使用服务器端的什么公式来实现这一点?

客户端使用 Adob​​e ActionScript 3,服务器使用 Python 2.7.12。

0 投票
2 回答
174 浏览

javascript - 编码说明:JavaScript 中按位或字符设置的变量

我今天遇到了一些我不理解的 JS,并且谷歌搜索按位运算并没有真正帮助我。有人可以解释以下内容吗?

尽管我读到管道字符是按位或,但我对上面发生的事情感到茫然。如果我应该发布更多上下文功能,请告诉我。

0 投票
1 回答
355 浏览

yii2 - Yii2中如何按位使用

如何在 Yii2 中使用位运算符?

如果我们有这样的查询:

或如何在“andFilterWhere”中按位使用

不工作。

0 投票
2 回答
45 浏览

mysql - 按位运算是解决以下问题的正确方法吗?

我正在为一家大理石制造公司创建一个应用程序,以跟踪给定宽度和高度的大理石生成过程。这会跟踪

这是我将如何组织数据的表模式。第一个是StoneInfo包含有关石头的基本信息,例如“unique_id、stone_id、stone_name、creation_time、last_purchase_time、generation_status”</p>

unique_id - 是一个随机生成的 id - 这是为了与另一个表保持外键关系StoneMetaDetails

石头资讯

为了避免第二次归一化异常,我分成了两个表。此处包含有关指定维度中每种石头的创建状态的详细信息。创建状态类似于

StoneMetaDetails

我想保持每一种石头的创造状态(它们可能有不同的味道和尺寸)。我想要的只是最小化表上的读/写操作以便更快地访问。

我正在维护两个状态值,例如GENERATION_STATUSCREATION_STATUS因为

GENERATION_STATUS- 当它是(“生成”或“由于某些原因暂停”或“生成过程已开始/初始化”) CREATION_STATUS时 - 保持跟踪特定石头类型及其尺寸的确切状态值。

在这里,我试图在GENERATION_STATUS按位或运算的帮助下将这两个列值与列值合并 - 通过分配不同的常量值(在 2^ 关系中)

这样我就可以在不加入另一个表的情况下获得它,以便更快地访问。

为了更清楚,我正在尝试映射,

stone_id及其generation_statusStoneInfo表中。因此,generation_status无论石头类型及其尺寸如何,它都包含状态值。

IE; (STONE_A_10_X_20 | GENERATION_SUCCESS) | (STONE_A_20_X_30 | GENERATION_INPROGRESS) 在单个列中。

这可以在按位或的帮助下实现吗?我走对了吗?或者请建议我以更好的方式处理这个问题。

感谢您耐心阅读这个长长的问题故事 :)