bit-manipulation 相关问题

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

如何检查给定位中的单个位是1还是0?

如何检查位数中的数字是1还是0? 例如: 给出的数字:0b00001101 位索引 0 的位置 = true 位索引 1 的位置 = false 我一直在确定...

回答 2 投票 0

如何对 ARM 中存储在两个 32 位寄存器中的 64 位数字执行算术右移?

我正在尝试用ARM汇编语言实现booth的乘法算法。 算法 2:将两个 32 位数字相乘以产生 64 位结果的 Booth 算法 数据:乘数...

回答 1 投票 0

获取前2个连续1位的索引的有效方法

我有这个二进制表示: 0b0110010 对于 gcc,有一个内置函数 __builtin_ffs,它将返回 1 加最低有效 1 位的索引,在我的示例中返回 2...

回答 1 投票 0

折叠 __mask64 又名 64 位整数值,计算已设置所有位的半字节?

由于一些 AVX512 操作,我有一个 __mask64: __mmask64 mboth = _kand_mask64(lres, hres); 我想计算其中所有位均已设置(0xF)的半字节数。 这么简单...

回答 1 投票 0

如何获取给定十进制数的第n位?

我试图获取给定数字的第n位(从数字的二进制表示形式的末尾开始(从0开始))。 举例来说,假设我们有十进制数 7 并且想要得到 t...

回答 1 投票 0

将 uint64_t {0,1} 映射到 float 64 {1.0,-1.0} 的最快方法是什么?

我有一个名为 uintflag 的 64 位无符号整数 uint64_t 标志变量,它只能保存值 0 或 1。 我需要将 0 转换为 1.0,将 1 转换为 -1.0。此转换来自 uint64_t(64 位)...

回答 1 投票 0

将 uint64_teger {0,1} 映射到 float 64 {1.0,-1.0} 的最快方法是什么?

我有一个名为 uintflag 的 64 位 uint64_t 标志变量,它只能保存值 0 或 1。 我需要将 0 转换为 1.0,将 1 转换为 -1.0。此转换是从 uint64_teger(64 位)到 double (...

回答 1 投票 0

用位移操作代替分支语句

我正在编写一个图像二值化算法,它只需将每个像素的亮度值(灰度图像)转换为黑色或白色。目前对每个像素进行二值化的算法大致是...

回答 5 投票 0

使用移位和加/减除以常数

大家好,我正在尝试仅使用移位和加/减来除以无符号常量 - 如果它是乘法,我对此没有问题,但我对除法有点困惑。 为了考试...

回答 4 投票 0

查找区间内有效位数最少的数字

给定下限和上限,这些边界内有效位数最少的数字是多少? 有效位数是most和l的位置之差...

回答 1 投票 0

位屏蔽和垃圾位

在 Herbert Schildt 的《Java:完整参考》中的“使用按位逻辑运算符”主题中,Schildt 进行了连词 ~a & 0x0f 以便“减少其值 [~a]...

回答 1 投票 0

如何在没有 XOR 指令的 CPU 上进行 XOR

这只是一个有趣的问题。我正在开发 SC61860 CPU,它是 1987 年生产的 Sharp PC-1360 掌上电脑(也用于 PC-1401 和 1403)的 8 位 CPU。它的指令集...

回答 3 投票 0

C# 中位操作的按位运算符与 .NET 抽象

我正在尝试获得使用 C#.NET 处理位的基本技能。我昨天发布了一个示例,其中包含一个需要位操作的简单问题,这使我发现有两个主要的

回答 4 投票 0

位运算计算奇偶校验的最快方法是什么?

我的解决方案(对于输入块的每一位,都有这样一行): *奇偶校验 ^= (((x[0] >> 30) & 0x00000001) * 0xc3e0d69f); 所有类型均为 uint32。这条线取 i 的第二位...

回答 6 投票 0

如何有效地生成具有 M 个设置位的所有 N 位值以及相应的位反转值?

我使用以下Python代码生成所有具有popcount设置位的值(位总数位): def Trailing_zeros(v): 返回 (v & -v).bit_length() - 1 def bit_permutations(popcou...

回答 1 投票 0

将二进制左移推广为八进制表示,无需转换

目前我有几行代码用于处理十进制表示形式的二进制字符串,即我有函数将二进制字符串向左旋转、翻转特定位、翻转所有...

回答 2 投票 0

如何通过有效节省内存使用来在两个 2D numpy 数组的每个元素之间执行 XOR?

我不熟悉 XOR 运算,我想知道是否有一种有效的方法通过节省内存使用来对两个 2D NumPy 数组之间的每个元素执行 XOR 运算。 这是我的...

回答 1 投票 0

使用按位运算符求数字的平方[关闭]

计算数字的平方,而不使用乘法、除法或幂函数。 int 计算平方(int num) { if(num == 0) 返回 0; 如果(数字 < 0) num = -num; int x =...

回答 1 投票 0

如何从 packbits 结果中解压位?

我不熟悉np.packbits,我想使用它来执行巨大的异或运算。 这是我的玩具示例: 将 numpy 导入为 np # 数组示例 u_values = np.array([[真,真,真,真,...

回答 1 投票 0

如何将两个 uint32_t 值交错为一个 uint64_t?

如果我有两个 32 位值 X 和 Y,我如何有效地将它们的位按照 xyxyxyxy 的顺序交织成一个 64 位值 Z...(Z 是 Z 顺序曲线上的位置。 ) 我可以迭代每个...

回答 2 投票 0

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