14得票16回答
我能否在C语言中分配特定数量的位?

我正在尝试存储在运行时确定的大量布尔信息。 我想知道最佳方法是什么。 我目前一直在尝试使用以下方法分配内存: pStatus = malloc((<数据点数>/8) + 1); 认为这将给我足够多的位来处理。 然后,我可以使用数组符号中的指针引用每个布尔值: pStatus...

14得票5回答
在Python中将64位整数转换为8个单独的1字节整数

在Python中,我获得了一个64位整数。这个整数是通过将多个不同的8位整数混合在一起创建的,形成一个巨大的64位整数。我的任务是再次将它们分离。 例如:Source number: 2592701575664680400 Binary (64 bits): 0010001111111011...

13得票5回答
Java处理二进制位的方法

首先我要说的是,我以前从未在编程中使用过位。我有一个对象,它可以处于3种状态,我想使用3位数组表示这些状态。 例如: 我有一辆赛车,它可以向前、向左和向右行驶,如果静止不动,则位为000。 如果汽车向前行驶,则位为010,如果向前和向左转,则位为110等等... 我该如何设置位,以及如何读取它...

13得票2回答
在O(n)或O(n*log(n))的时间复杂度下计算数组中按位“AND”为2的幂的无序对数。

如何计算数组中按位AND为2的幂的无序对数。例如,如果数组是[10,7,2,8,3],则答案为6。说明(基于0的索引): a[0]&a[1] = 2 a[0]&a[2] = 2 a[0]&a[3] = 8 a[0]&a[4] = 2 a[1]&a[2...

12得票2回答
Bash中的位掩码

在shell脚本中,以下类似的代码是否可行?var1=0xA (0b1010) if ( (var1 & 0x3) == 0x2 ){ ...perform action... } 为了让我的意图完全清晰,我期望的行动是检查var1的0x3位(0b0011),并确保它等于0x2...

12得票2回答
按位减法

给定枚举: [Flags] enum foo { a = 1, b = 2, c = 4 } 那么 foo example = a | b; 如果我不知道foo是否包含c,以前我一直写以下代码: if (example & foo.c == foo.c) exam...

12得票4回答
SQL Server:使用varbinary还是int来存储位掩码?

在性能或灵活性方面,使用int与varbinary来存储位掩码是否有优势呢? 对于我的目的,我将始终对这些位掩码进行读取(不进行写入或更新)。

12得票2回答
简化(A & B) && !(A & C)

A、B和C是某种无符号整型变量。从概念上讲,A是一个测试向量,B是“必需”位的掩码(至少一个对应的位在A中必须设置),而C是“禁止”位的掩码(A中不能设置任何对应的位)。由于我们同时使用位运算和逻辑运算符,因此通常看来合理的解决方案为A & B & ~C 是不正确的。相反,标题...

11得票3回答
游戏引擎碰撞位掩码...为什么是0x01等?

在Sprite Kit(iOS开发)和Cocos2d-x中都遇到了这种情况(我知道Cocos2d-x基本上是Sprite Kit的灵感来源,因此它们使用了很多相同的工具),最终我决定找出为什么会发生这种情况:使用物理引擎时,我创建一个精灵,并向其添加physicsBody。 在大多数情况下,我...

11得票2回答
JavaScript中将整数转换为任意排序的字节数组的最快方法是什么?

我想要将 JavaScript 数字的 MIN_SAFE_INTEGER 到 MAX_SAFE_INTEGER 范围(53位不包括符号)转换为一串跨越7个字节的比特流字符串,向左偏移两位以允许符号和空标识。 到目前为止,我能想到的最好方案是:function toUint8Array(dat...