bit-manipulation 相关问题

个别位的操纵。使用的运算符可以包括按位AND,OR,XOR,NOT,左移和右移。

如何使用按位AND和按位NOT运算符检查冗余值? [已关闭]

我有下面的代码片段,可以使用按位运算符检查 RAM 冗余值 uint16 初始值 = (uint16)(myvalue_32bit & 0xFFFFu); uint16toggle_value = ~((uint16)(myvalue_32...

回答 1 投票 0

使用按位运算符实现除法

如何使用按位运算符实现除法(不仅仅是除以 2 的幂)? 详细描述一下。

回答 13 投票 0

另一种实施方式< in C

我无法编写正确的代码来返回 1 + x if x < 5, return 1 otherwise. Problem specifications: Return 1 + x if x < 5, return 1 otherwise (this ensures that 1<=x<=5)

回答 1 投票 0

如何在C中将二进制形式的1改为0

我不知道如何将x的二进制形式中的任何连续的1更改为0(连续的1意味着一组1包含多个1)。 问题规格: 允许的运算符: ! 〜&a...

回答 1 投票 0

如何在 C 中进行按位 XNOR

我在编写最多 7 个 ~ 和 | 的按位 XNOR 函数时遇到困难运营商。示例:bitXor(6, -5) = 2。如果没有 &,我该如何做到这一点? 到目前为止我有这个: int bitXnor(int x, int y) { 重新...

回答 1 投票 0

如何创建单字节5位的滑动窗口?

这是我想要发生的 5 位滑动窗口的视觉效果 换句话说,我想要一个 5 位的滑动窗口。我需要在一个字节中存储 5 个事件的历史记录。我用得最多的是 5 个

回答 1 投票 0

如何从 UUID 和盐字符串生成有符号的 32 位整数?

我不太了解我的小技巧,需要一些帮助。 我希望生成一个数字,用作 2 个不同脚本代理之间的一次性“通信通道”以进行同步...

回答 1 投票 0

Java:按位 OR 和 AND 比等效的逻辑运算符更快吗?

切干......虽然我从来没有足够的逻辑运算使它成为性能瓶颈 - 我想知道,使用按位与(&)和按位或(|)而不是相同的会更好-

回答 8 投票 0

公式 x & (x - 1) 是如何计算的?

来自《黑客之乐:第二版》: 这里的公式看起来有点尴尬。当 x 小于 1 时,如何从 1 个向量(大概是 0x1111 1111)中减去某个 x 向量? (如:(如...

回答 3 投票 0

生成所有n位数字,其中i位为0

我需要生成所有 2^(n-1) n 位数字,其中位 i 始终为 0,j 是可能数字列表中数字的索引。这是一个简单的表格,说明当 i 从 0 到 2 变化且 n 为 ...

回答 3 投票 0

生成 int 的排列,其中给定索引处的位为 0

我需要生成 n 位数字的所有 2^(n-1) 排列,其中索引 i 处的位始终为 0,j 是排列数字。这是一个简单的表格,说明当 i 从 0 变化到 2 且 n 为 3 时,...

回答 1 投票 0

用异或和补码解析位[关闭]

当向量中的所有其他数字恰好出现三次时,我无法找到仅出现一次的数字。 类解决方案{ 民众: int singleNumber(向量& nums) { ...

回答 1 投票 0

如何根据int的符号进行左移或右移?

我需要将 x 位移动 b,其中 b 可以是正数(左移)、零(nop)或负数(右移)。 C 位移位不处理负移位。 我可以定义内联函数或宏来执行此操作吗?

回答 2 投票 0

按位移位输出错误结果

我正在完成我的信息学作业,我为我的问题写了这些: 创建一个值为 154 的变量 s 和一个值为 6 的变量 p。以十进制和二进制形式显示其值...

回答 1 投票 0

Perl 设置/重置字符串上的第 8 位

给定一个字符串,我想要 将 A 中的所有字符设置为 I 的第 8 位(0x41 ~ 0x49 到 0xC1 ~ 0xC9)。 将所有第 8 位打开的字符重置为关闭。 喜欢, $s='@ABCDEFGHIJKLMNOPQRS'; $s1= 加入“&qu...

回答 1 投票 0

如何在 C 中执行无分支条件算术运算?

我有一个值 int x,我想有条件地向其中添加(例如)一个值 int y,具体取决于 bool c。我可以写这样的代码: 如果(三) x+=y; 没有分支我怎么能写这个?

回答 1 投票 0

如何反转按位或运算?

这就是我所做的: 93 | 93 199 返回 223 我明白这是因为 0b1011101 | 0b11000111 是 0b11011111 但是,假设我想做相反的操作。我如何获得 0b101...

回答 3 投票 0

num = 1 之间的功能差异 << 4 and num |= 1 << 4

所以如果我正确理解按位运算,num = 1 << 4 shifts the 1 to the left 4 places by adding 0's to the lsb side of the number and if there's 1 in the way it changes to 0. But if...

回答 1 投票 0

如何加速旋转一个位块?

我正在编写一个程序,在 Rust 和 Haskell 中做同样的事情。这是一个完整消息密码;它读取整个文件,对其进行加密,然后将其写出。给定 1 MiB,Rust 代码需要 2.4 秒,...

回答 1 投票 0

不使用 BMI2 的 PDEP 的便携式高效替代品?

英特尔位操作指令集 2 (BMI2) 中的并行存款指令 (PDEP) 的文档描述了该指令的以下串行实现(类 C 伪代码...

回答 3 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.