
[英]16 bit artimatic sum in Python
我正在开发一个为 cube-sat 项目创建 IRIG106 第 10 章数据的程序。 目前它正在 python 中实施,我在实施第 10 章 header 的最后部分时遇到困难。 我实现它的方式我目前发现校验和值大于规范定义的大小(2 字节)的 integer 中的校验和值。 该标准在IRIG 1 ...
[英]16 bit artimatic sum in Python
我正在开发一个为 cube-sat 项目创建 IRIG106 第 10 章数据的程序。 目前它正在 python 中实施,我在实施第 10 章 header 的最后部分时遇到困难。 我实现它的方式我目前发现校验和值大于规范定义的大小(2 字节)的 integer 中的校验和值。 该标准在IRIG 1 ...
[英]Bitwise operation on big endian and little endian differences
我正在对 IP 地址空间的前缀“子项”进行排序。 例如,8.8.8.0/24 是 IP 地址空间中 8.8.8.0/23 的子地址。 我很困惑为什么以下两个操作在我的 x86 little endian 系统上提供不同的结果一些背景信息:A /24 表示 32 位 IPv4 地址的前 24 位是“定 ...
[英]Using bit manipulations, return word with all odd-numbered bits set to 1
这个问题是我的编码 class 中一个更大的编码项目的一部分,介绍 C。该项目的目标是习惯位操作和浮点数。 这样做,在限制条件下会出现一些问题。 这是这个问题: 如你所见,对于他的问题,我只能用 | 和<<。 还有一些其他的假设也没有在这个问题中列出。 他们是; 没有大于 0xFF 的常 ...
[英]How to convert bitarray to an integer in python
假设我使用以下代码在 python 中定义了一些位数组: 如何将 d 转换为其 integer 表示形式? 此外,如何使用位数组执行诸如d&(d+1)之类的操作? ...
[英]Mixing colors with bitfields in C with bitwise operators?
我正在阅读关于位域的 Wikipedia 条目,看到如何使用二进制数来表示主要的 colors 并使用按位或 ( | ) 运算符组合它们。 我想检查一种颜色是否包含在另一种颜色中。 我明白为什么会这样,但是是否有按位运算或其组合可以达到我想要的结果? ...
[英]In C/C++ what's the simplest way to reverse the order of bits in a byte?
虽然有多种方法可以反转字节中的位顺序,但我很好奇开发人员实现的“最简单”方法是什么。 反过来我的意思是: 这与 PHP 问题类似,但不是重复的。 这与 C 问题类似,但不是重复的。 这个问题要求开发人员实现最简单的方法。 “最佳算法”与 memory 和 cpu 性能有关。 ...
[英]Return the bit-level equivalent of expression -f for floating point argument f
作为我编码 class 的第一个大型编码项目的一部分,介绍了 C,提出了以下问题,请注意限制: 到目前为止,这是我的代码: 当我通过检查软件运行这段代码时,我得到了这个错误: 此作业的目的是学习浮点和位操作。 因此,如果您能解释我哪里出了问题,以及我该如何解决,我将不胜感激。 另外,是的,我知道,在 ...
[英]How to reset the Nth set bit of a bit mask?
给定一个位掩码(设置了 M 位,即 popcount(bit_mask) == M),我想生成 M 个不同的位掩码,这些位掩码有 1 个设置位(给定的位掩码)切换。 上述问题归结为当前标题“如何重置位掩码的第 N 个设置位” 对于位掩码 0xE7 (popcount(0xE7) == 6),将生成 ...
[英]Make a function that returns 1 if x < y , otherwise return 0
编者注:这是来自 CS:APP Data Lab 的一个测验,其目的是教授 2 的补码 integer 表示(所以请不要评论 C 糟糕的做法)。 对 ISO C 有额外的假设和限制: int是32位,用2的补码表示签名 integer 溢出环绕 ( -fwrapv ) 右移是有符号类型的算术运算 ...
[英]Buffer overflow with integers
我有一个非常基本的问题。 假设我有两个变量(uint16_t a,uint16_t b)并且在 memory 中它们彼此相邻对齐,例如 a=> 0x0 => 0x15 和 b=> 0x16 到 0x31 让我们假设 a = 0, b = 65535, 谢谢 ...
[英]Setting all bits before first '1'
假设一个 32 位无符号 integer(可以概括为任何大小的答案当然更好)。 这个integer可以假设为2的幂,所以只设置了一位。 我想设置 integer 中的所有位,除了那些低于设置位的位。 因此(为简洁起见,使用 8 位整数) 00001000将变为11111000 。 这当然可以通过找到 ...
[英]C# reversing the bits of an integer
我知道这已被多次询问类似的差异,但我在 C#(Unity3D) 中的按位运算 output 遇到了麻烦。 我正在尝试进行位反转置换,即为了在Cooley-Tukey FFT 算法中使用的目的,获取整数(或无符号整数,两者之一)的位反转顺序。 因此,如果我有 0、1、2、3 - 我想以 0、2、1、3 ...
[英]Using only bit manipulations, return a mask that marks the position of the most significant 1 bit. If x == 0, return 0
作为我的编码 class 的一部分,这是对 C 的介绍,我正在从事一个处理受限位操作的编码项目。 特别是在这个问题上,我被卡住了,因为我不知道如何解决我的错误。 除了列出的合法操作外,我不能使用任何语句,如 do、if、while 或 else。 我也不允许转换为其他数据类型。这包括使用无符号。 ...
[英]How to swap first and last nibbles in given integer [32 bits]
认为:No = 77 77 in binary [32 bits] : 0000 0000 0000 0000 0000 0000 0100 1101 我必须交换第一个和最后一个半字节:i.e : 1101 0000 0000 0000 0000 0000 0 ...
[英]How to check if values are greater than 7 by only using bitwise operators in C?
对于这个问题,它要求如果参数大于 7 则返回 1,否则返回 0。 例如,如果 x 为 8,则 function 将返回 1。如果 x 为 7,则 function 将返回 0。 唯一允许的合法运算符是 (, ~ & ^ | + << >>),它禁止使用任何其他内容, ...
[英]Number compliment of base 10 integer in c++
我们给了一个数字,我们必须以二进制形式翻转它的 0 和 1,翻转后我们必须写出翻转二进制数的结果十进制数。 例如 - 输入:n = 5 Output: 2 Reason- 5 在二进制中是“101”,二进制中的补码是“010”,即 base-10 中的 2。 我的尝试- 我的输出 - 235 111 ...
[英]How do I perform an unsigned right shift (>>> in Java) in C/C++?
如何在 C/C++ 中执行无符号右移(>>> 在 Java 中)? ...
[英]GUID in exe binary
我正在从 C++ 代码编译 a.exe。 此代码包含一个 GUID(在 guiddef.h 中定义的结构) 现在,如果我将 my.exe 文件内容转换为十六进制字符串,我希望找到这些十六进制数字。 但我没有。 我确实找到了我的硬编码字符串(编码为 ASCII)。 那么我的 GUID 去哪儿了? 它 ...
[英]Is there any way that i can perform bit manipulation with pointers
写一个 function 交换指针 b 指向的字节的每个半字节中的最高位。 (即0bAxxxBxxx -> 0bBxxxAxxx )。 我有一个预定义的 function 这个原型: void swapBits(uint8_t* b); 我想出的解决方案不起作用 - ...
[英]Subtract 1 from all digits of a hex which are smaller than given value d in C++
我有以下问题:我在 C++ 中有一个十六进制数(数据类型:std::uint64_t),十六进制数包含从 1 到给定 n 的所有数字。 我们还给出了另一个数字 d <= n。 是否可以从大于或等于 n 的十六进制数的所有数字中减去 1? 这是我所期望的示例:hex = 0x43512, d ...