bit-manipulation相关内容

计算给定数量的negabinary重新presentation没有循环

您可以提供一个令人信服的解释,或者一个数学证明,为什么下面的函数计算 negabinary 重新给定数量的presentation? 函数quickNegabinary(数字){ VAR面膜= 0xAAAAAAAA; 返回((数+掩模)^掩模)的ToString(2); } 解决方案 Negabinary符号 Negabinary符号使用-2基数。这意味着,作为在带有负碱 ..

可能有人给我解释一下下面的Java code是干什么的?

的byte [] = getByteArray() 对于(.....) Integer.toHexString((0x000000ff&放大器; S [I])| 0xffffff00).substring(6); 据我所知,你正试图将字节转换为十六进制字符串。我不明白的是如何做到这一点。举例来说,如果S [I]是00000001(十进制1)比你能不能解释一下: 为什么0x000000ff&安 ..
发布时间:2016-08-06 22:38:38 Java开发

K&安培; R C练习帮助

我已经经历的K&放大器; R C语言程序设计的书,我卡在练习2-6其内容为: 写函数setbits(X,P,N,Y)与该开始在位置p设定为y的最右边的n位的n位返回x,而使其他位不变。 我无法理解确切的事情,他们正在寻找我做的。我看着一个可能的答案 rel=\"nofollow\">,但我还是真的不理解。我认为这是的投掷我送行的措辞。任何人都可以或许解释他们在寻找什么我以不同的方式吗? ..
发布时间:2016-08-06 22:37:58 开发方法

存储在MySQL中的二进制字符串

我已经开发了一个小型的二元信号系统,我们的管理中心。它允许我们设置项目分配有多个选项,而不必存储有一个表与几个领域。 一旦选项被转换成与位运算符二元,我们最终会像10000或10010的一个选项是所有好。这样做可以使我们能够不断添加的选项,而无须重新编写其值是10010&安培; (1<&4;),我知道我们的东西打开 问题是但在存储我们的MySQL表该数据。我试过几个字段类型,但他们都不让 ..
发布时间:2016-08-06 22:37:39 数据库

如何输出在C变量的二进制值++

我有一个家庭作业在我的C ++编程类编写输出变量的值的二进制值的函数。 因此​​,举例来说,如果我的“a”的值设置为一个char我应该得到“A”输出的二进制值。 我的C ++的教授是不是在整个世界上最伟大,我无法让我的code。使用,他给了我们神秘的例子来工作。现在,我的code只是输出的11111111二进制值,不管我把它太(除非它的NULL然后我得到00000000)。 下面是我的cod ..
发布时间:2016-08-06 22:36:22 C/C++开发

比特#需要重新present一个数字x

我目前正在写,确定多少位需要重新present一个数字x的算法。我的实施将在C。 有几个渔获不过,我仅限于pretty简单,只是按位运算符{〜,&安培;,^,|,+,LT;&LT ;, >>}。另外,我不能使用任何类型的控制流(如,同时,为)。 我原来的办法是检查二进制数由左到右,并查找那里是第一'1'的发生。我不知道如何处理这个给我的限制。 我与工作数量可以被认为是一个无符号整数。所以00 ..
发布时间:2016-08-06 22:36:08 开发方法

提取跨字节界限值任意位位置和长度在C#

我目前工作的一个网络工具,它需要去code / EN code,它包装成田在任意位置密集位阵列特定的协议。例如,该协议中的一个部分使用3个字节重新present若干不同字段: 位的位置(S)长度(位)类型 0 1 BOOL 5家酒店INT 8月6日至13日INT 9月14日至22日UINT 23 1布尔 正如你所看到的,有几个领域的跨越多个字节。许多(大多数)也比短内置的,可能被用来重新pr ..
发布时间:2016-08-06 22:34:04 C#/.NET

二进制补码在Python?

在Python整数储存在两个补,是否正确? 虽然 >>> X = 5 >>>斌(X) 0b101时 和>>> X = -5 >>>斌(X) -0b101 这是pretty跛。我如何获得蟒蛇给我的号码REAL二进制位,并没有0B盈呢?所以:>>> X = 5 >>>斌(X) 010 ..
发布时间:2016-08-06 22:31:44 Python

更换" =="有位运算符

仅仅使用位运算符(|,&安培;,〜,^,>>,<&LT)!等基础运营商如+, - 和,是有可能取代“==”下的 INT等于(INT X,int y)对{ 返回X ==ÿ; } 解决方案 两个数是相等的,如果他们之间没有什么区别: INT等于(INT X,int y)对{ 返回(X-Y)!; } ..
发布时间:2016-08-06 22:30:37 开发方法

诠释为二进制转换解释

我的问题是基于这篇文章:十进制为二进制以及它选择的解决方案 我可以选择的答案code工作,但它仅适用于5位。我如何修改此code至为更大的工作,说8位? 我尝试了调整字符拳头线5至8抵消,但没有成功。 无效getBin(INT NUM,字符*海峡) { *(STR + 5)='\\ 0'; INT面膜= 0×10<< 1; 而(面膜>> = 1) ..
发布时间:2016-08-06 22:27:39 开发方法

简单的位操作的小端整数,以big-endian机器?

有关特定需要我建立一个4字节整数出四单字节字符,使用没有什么太特别的(​​在我的小端平台): 收益率((V1<< 24)|(V2<< 16)|(V3<< 8)| V4); 据我所知,存储在大端机器整数看起来像 AB BC CD DE 而不是 DE CD BC AB 字节序不大,虽然它会完全影响我的操作,我将转向不正确,或者它只会导致存储在反向,需要逆转?一 ..
发布时间:2016-08-06 22:23:41 开发方法

对位的水平读取字符

我希望能够从键盘输入一个字符,并显示二进制code代表说,例如格式00000001关键。 此外,我也想在某种程度上,让我输出,如果他们是真的还是假的读取位。 例如 01010101 =假,真,假,真,假,真,假,真 我会后如何我试图做我自己的想法,但我完全不知道,我现在还在用C试验,这是我编程的第一口味在如此低的水平刻度。 三江源 解决方案 这code是C89: / *我们需要这个 ..
发布时间:2016-08-06 22:21:38 开发方法

按位运算相当于大于运营商

我的工作,将主要看这两个整数的更大的功能。所传递的参数是2的32位整数。诀窍是唯一的运营商允许的! 〜| &安培; << >> ^(无铸造,除了符号整数其他数据类型,*,/, - ,等..)。 我的想法到目前为止是^两个二进制文件一起看到,他们不共享1值的所有位置。我想要做的就是再取该值和隔离1最远到左侧。然后看看哪些有它该值。然后该值将越大。 (说我们使用的8位整数,而不是32位 ..
发布时间:2016-08-06 22:19:49 开发方法

在C位,乘以3,再除以16

我的一个朋友有这些困惑,这是一个是躲避我。这里的问题是,您将得到一个号码,你想回到那个数字乘以3和除以16对0四舍五入应该是容易的。收获?您只能使用! 〜&安培; ^ | + LT;< >>运营商和他们的仅12的组合 INT MULT(INT X){ //一些code这里... 返回是; } 我的企图已被 INT保持= X + X + X; INT HOLD1 = 8 ..
发布时间:2016-08-06 22:19:31 开发方法

获取最左边的位

我有一个5位整数,我的工作。是否有在Objective-C本机的功能,可以让我知道这一点是最左边的? 即。我有01001,它将返回8的位置。 感谢 解决方案 NSInteger的价值= 9; NSInteger的转变= 1; 对于(NSInteger的位=值;位大于1​​;位=价值>> ++移); NSInteger的leftmostbit = 1<<转移; ..
发布时间:2016-08-06 22:15:40 移动开发

了解在JavaScript位操作

我目前的XML文档内存储数据的二进制,20位长,各重presenting一个布尔值。 <矩阵GT; <资源型=“单一”> <地图和GT; 10001010100011110000< /图> <名称>资源标题< /名称> < URL> HTTP://www.yoursite.com ..
发布时间:2016-08-06 22:11:22 前端开发

如何检查我的字节标志?

我用一个字节来存储一些标志,比如 10101010 ,我想知道如何验证特定位为 1 或 0 。 解决方案 下面是一个可以用来测试任何期望位功能: 布尔is_bit_set(无符号数,无符号位索引) { 返回(值及(1 LT;<位索引))!= 0; } 解释了一下: 左移位运算(小于≤)用于创建一个位掩码。 (1 按位与运算符(&安培;)给出了其中所有的两侧是1位的结果 ..
发布时间:2016-08-06 22:10:24 开发方法

检查是否只有一个位整数中设置(无论其位置)

我店使用的是64位整数位之内的标志。结果 我想知道,如果有一个位设置到任何64位整数中的位置(E.I.我不关心任何特定的位的位置)。 布尔isOneSingleBitSet(长integer64) { 返回....; } 我可以使用数位数量的的位操作黑客的(肖恩·安德森玉龙),但我想知道什么是只检测一个单个位是否设置最有效的方式... 我发现了其他一些相关的问题: (8051) ..
发布时间:2016-08-06 22:09:49 Java开发