bit相关内容

如何对字符进行2位编码?在Java中

DNA分子由以下四个值之一表示:A、C、G或T。我需要将A、C、G和T中的字符串转换为对每个字符进行编码的字节数组 有两个比特。A比特00,C比特01,G比特10,T比特11。我不知道如何将字符转换为2比特。我试着改变和掩饰,但得到了错误的结果。 在开始时,我检查该行中是否有字符。然后,我将每个字符转换为位值并将其插入到数组中。当我插入ACGT时,我在输出中得到0 1 3 2。在这里我遇到了一个问 ..
发布时间:2022-08-20 10:13:59 Java开发

Python:生成一串位

我正在尝试使用以下代码生成随机位字符串。 bitString = [] for i in range(0, 8): x = str(random.randint(0, 1)) bitString.append(x) ''.join(bitString) 然而,与其给我这样的东西: 10011110 我得到的内容如下所示: ['1','0','0' ..
发布时间:2022-08-20 09:41:52 Python

如何在C#中检查是否设置了特定的位

在C#中,我有一个32位的值,我将其存储在一个int中。我需要查看是否设置了特定的位。我需要的位是0x00010000。 我想出了这个解决方案: 这是我要找的: Hex: 0 0 0 1 0 0 0 0 0 Binary 0000|0000|0000|0001|0000|0000|0000|0000|0000 ..
发布时间:2022-08-20 09:33:59 C#/.NET

Right Shift>;>;将值转换为零

尝试在Java脚本中进行一些位操作。 考虑以下事项: 数据-lang=“js”数据-隐藏=“假”数据-控制台=“真”数据-巴贝尔=“假”> const n = 4393751543811; console.log(n.toString(2)) // '111111111100000000000000000000000000000011' console.log(n & 0b11) / ..
发布时间:2022-08-20 09:26:07 前端开发

表示数字的最小位数

找出表示某个随机整型数需要多少位,最有效的方法是什么? 例如,数字30,000用 表示为二进制 111010100110000 所以它需要15位 推荐答案 int v = 30000; // 32-bit word to find the log base 2 of int r = 0; // r will be lg(v) while ( (v >>= 1) != 0) // ..
发布时间:2022-08-20 09:15:58 C#/.NET

如何有效地知道字符中第一个(左-右)位的位置

正如标题所说,我有一个字符(例如00101011),我如何知道其中第一个‘1’位的位置?(在本例中,它是6,如果我们认为最右边的位置是0,则为5)。 我知道循环移位会很有帮助,但有没有更有效的方法呢? 推荐答案 有一些小笼子(正如Codor提到的)可以做得比只做Shift更好,但O(1)中没有。我想到了二进制搜索。 恐怕唯一更有效的方法是专门的处理器指令,就像x86上的bsr指令。 ..
发布时间:2022-08-20 09:00:56 其他开发

正整数在Python中所需的最小位长

1 = 0b1 -> 1 5 = 0b101 -> 3 10 = 0b1010 -> 4 100 = 0b1100100 -> 7 1000 = 0b1111101000 -> 10 … 如何获取整数的位长,即在Python中表示正整数所需的位数? 推荐答案 在python2.7+中有一个int.bit_length()方法: >>> a = 100 >>> a.bit_le ..
发布时间:2022-08-19 23:58:40 Python

交换给定整数中的两个位

我看到了一些解决方案,但它看起来很复杂。 在n,m位置的两个位之间交换的最有效方法是什么? int swapBits(int num, int nPostion, int mPosition); 推荐答案 给定整数n,我们要在其中交换位置p1和p2的位: 算法:如果两位相同,则返回相同的值,否则使用异或切换两位。 unsigned int swapBits(unsign ..
发布时间:2022-06-10 15:49:20 其他开发

如何检查位值是否等于1?

我有一个正在运行的OpenCL内核。如何检查变量中选定位置的位是否等于1? 例如,我发现在C#中可以使用代码like this将uint转换为包含位的字符串: // Here we will store our bit string bit; // Unsigned integer that will be converted uint hex = 0xfffffffe; // ..
发布时间:2022-03-27 18:21:15 C#/.NET

关闭数字最左边的非零位

如何关闭O(1)中最左边的non-zero位? 例如 n = 366 (base 10) = 101101110 (in base 2) 关闭最左边的non-zero位后,数字看起来像001101110 n将始终>0 推荐答案 如果您在任何情况下都坚持O(1),immintrin.h中定义的英特尔本征函数_bit_scan_reverse()是否有硬件在整数中找到 ..
发布时间:2022-03-01 17:56:46 C/C++开发

打开枚举(带有标志属性)而不声明所有可能的组合?

我如何打开一个设置了 flags 属性的枚举(或者更准确地说是用于位操作)? 我希望能够在与声明的值匹配的开关中命中所有情况. 问题是,如果我有以下枚举 [Flags()]公共枚举 CheckType{形式 = 1,查询字符串 = 2,临时数据 = 4,} 我想使用这样的开关 switch(theCheckType){案例 CheckType.Form:DoSomething(/ ..
发布时间:2022-01-19 11:15:41 C#/.NET

如何最快地计算 php 中设置的位数?

我只是想在php中找到一些最快的设置位计数功能. 例如,0010101 => 3、00011110 => 4 我看到有很好的算法可以用 c++ 实现.如何计算数量在 32 位整数中设置位? 有没有php内置函数或者最快的用户自定义函数? 解决方案 您可以尝试使用二进制 AND 应用掩码,并使用 shift 逐位测试,使用将迭代 32 次的循环. 函数 getBitCou ..
发布时间:2022-01-17 18:20:42 PHP

Python 数量限制

我知道在大多数情况下,如果不是所有编程语言、整数、浮点数等都有它们可以容纳的最大数量,无论是无符号的还是有符号的.比如pascal的int类型最多只能容纳32768~. 我想知道的是,python 的 int 和浮点变量的限制是什么.我尝试了一个小程序来产生非常大的数字,但我没有遇到任何错误.它甚至对这些变量的大小有限制吗? 我查看了文档,但找不到我要查找的内容:/ 非常感谢您的 ..
发布时间:2022-01-17 09:57:02 Python

C中任何整数的旋转位

将一个整数 2 传递给该函数,然后返回一个整数 4 x = 2;x = rotateInt('L', x, 1); (左移1位) 示例:00000010 -> 向左旋转 1 -> 00000100 但如果我通过了: x = rotateInt('R', x, 3); 它将返回 64, 01000000 这是代码,谁能纠正错误...谢谢 int rotateInt(cha ..
发布时间:2022-01-16 14:50:47 其他开发

“real*8"是什么意思?意思是?

用 Fortran 90 编写的程序手册说:“所有实变量和参数都以 64 位精度指定(即 real*8)." 根据Wikipedia,单精度对应32位精度,而双精度对应64 位精度,所以显然程序使用双精度. 但是 real*8 是什么意思呢? 我认为 8 的意思是小数点后有 8 位数字.但是,Wikipedia 似乎说单精度通常提供 6-9 位,而 双精度 通常提供 15-17 ..
发布时间:2022-01-14 09:27:31 其他开发

修复了各种系统上的 CHAR_BIT?

我对limits.h 中的CHAR_BIT 感到困惑.我读过一些文章说宏 CHAR_BIT 是为了可移植性.在代码中使用宏而不是像 8 这样的幻数,这是合理的.但是limits.h来自glibc-headers,它的值固定为8.如果glibc-headers安装在一个字节超过8位(比如16位)的系统上,编译时会出错吗?'char' 分配 8 位或 16 位? 而当我在limits.h中将CH ..
发布时间:2022-01-12 21:01:34 其他开发

字符大小混乱

据我所知,1 char = 1 byte = 8 bits(32 位系统). char c=0xffff0000;//错误的 那么为什么 char 只允许 8 位 以及文件中的每个字符也是 8 位 长度. 谢谢. 解决方案 没有.char的sizeof定义为1.但这并不意味着它总是占用32位/8位. $3.9.1/1-“声明为字符(char)的对象应该很大足以存储任何成员实 ..
发布时间:2022-01-12 20:23:26 C/C++开发