bitwise-operators相关内容

使用按位运算从int日期中提取月份(yyyyMMdd)

是否可以使用按位运算符从以 int (格式为YYYYMMDD,例如20110401)表示的日期中提取月份? 如果是这样,怎么办? 编辑:我目前正在使用20110401%10000/100.我认为按位操作可能会更快.DateTime.Parse等对于我想做的事情来说太慢了. 解决方案 如果您以二进制格式表示日期,则可以按位操作有效地提取月份,例如,每天5位月份中的4位,月份号中的 ..
发布时间:2021-04-15 20:06:05 C#/.NET

不使用加法运算符将两个数相加

在c〜中为1的补码运算符.这等效于:〜a = -b +1因此,a-〜b -1= a-(-b + 1)+1= a + b – 1 + 1= a + b 有人可以向我解释吗? 解决方案 从我们知道的小学数学开始 a =-(-a); 从二进制补码我们知道 -a =(〜a)+1(取反并加一个) 所以我们知道 a + b= a-(-b)基础数学= a-(〜b + 1)二进制 ..
发布时间:2021-04-15 20:05:59 其他开发

是否可以对字符数组进行位掩码

假设我有以下char数组 char数组[32]; 我只想使用此数组的10个最高有效位作为哈希值. 是否可以在此char数组上使用按位运算? 如果是这样,我应该怎么做? 解决方案 假设您的实现具有8位的 char ,并且您在此数组中的big endian中存储了256位的数字,这里是如何访问256位数字的10 msb. uint16_t a;a =(array [0] ..
发布时间:2021-04-15 20:05:56 其他开发

JavaScript按位运算符混淆

我正在尝试用Javascript做一些按位操作, 0xff000000 |0x00aabbcc 我希望给我 0xffaabbcc//== 4289379276; 但是运行此命令时,我得到的结果是-5588020.我希望这与以下事实有关:JavaScript中的按位运算只能对32位数字进行操作,但是问题中的两个数字 ..
发布时间:2021-04-15 20:05:53 前端开发

按位XOR Python

我正在尝试解决必须解密文件的问题.但是我发现了一个障碍.如下面的代码所示,我需要在键和数字47之间进行按位异或. 从Crypto.Cipher导入AES导入base64l1 = open("./2015_03_13_mohamed.said.benmousa.puerta_trasera.enc","rb");iv = l1.read(16)enc = l1.read()l1.close()#k ..
发布时间:2021-04-15 20:05:50 Python

JavaScript-将布尔(或按位)运算符作为参数传递?

在C#中,有多种方法可以执行此操作 C#将按位运算符作为参数传递专门用于"Bitwise.Operator.OR"对象,但是可以在JavaScript中完成类似的事情吗?例如: 功能检查(num1,num2,op){返回num1 op num2;//只是输出示例}检查(1,2,>);//显然这是一个语法错误,但是我可以在“>"位置插入某种其他对象或某种按位运算符吗?并以某种方式更改源函数? ..
发布时间:2021-04-15 20:05:47 前端开发

我可以对byte []执行按位运算吗?

让我说: byte [] data = new byte [] {1,212,29,144}; 我想出办法进行按位与运算的唯一方法首先将byte []转换为uint: if((BitConverter.ToUInt32(data,0))& 0x7)== 1){//如果最后3位是... 111,则执行某项操作} 这看起来很丑.有没有更好的方法可以对byte []执行按位运算而不必转换 ..
发布时间:2021-04-15 20:05:44 C#/.NET

位运算或与加法

我正在从连接到覆盆子(手臂)的传感器读取uint16.我通过以下方式将数据从小端到大端转换: //结果= 0A 0B//0B 00 |00 0A(结果> 8); 所以0A 0B之后就是0B 0A. 但是我也看到人们在使用它: (结果>>> 8); 使用添加物有什么好处吗?我的猜测是,并没有真正的优势,只是有点慢. 例如,对两个数字 ..
发布时间:2021-04-15 20:05:41 C/C++开发

MySQL:使用命名值和位运算符更新SET字段

对于MySQL,是否可以使用字段的命名值和按位运算符之一来更新类型为SET的字段?示例: 假设 foo 为 SET('a','b',...),那么以下内容将不起作用: UPDATE mytable SET foo = foo |'a'在哪里... 显然,只有 foo ='a'或 foo = foo |1 工作.是否有任何技巧可以使上面的示例正常工作,并使MySQL意识到'a'不是“正 ..
发布时间:2021-04-15 20:05:38 数据库

按位与(&)运算符(JS)会执行什么数学函数?

在某种程度上,当我尝试解决javascript问题以查找所有可能的子集时,我正在看另一篇SO帖子.我不是在问JS挑战,而是为什么要问它,它具有什么数学意义? 这是中的代码的复制粘贴这样的帖子 var arr = [1,2,3];函数generatePowerSet(array){var result = [];result.push([]);for(var i = 1; i ..
发布时间:2021-04-15 20:05:36 前端开发

所谓“两个位"是什么意思?使用按位运算符时

此 W3Schools页面将按位AND描述为: 如果两个位均为1,则将每个位设置为1. 并给出一个示例: 5&1返回1,与0101&0001返回1. 据我所知,0101是4位,而0001是另外4位.那么,“如果两个位都为1"是什么意思?他们在说些什么? 解决方案 按位操作就是按位操作,每个位进入CPU并与另一位组合. 因此,0001 AND 0101,根据该公 ..
发布时间:2021-04-15 20:05:32 前端开发

尾随零的数量

我编写了一个函数 trailing_zeroes(int n),该函数以数字的二进制表示形式返回尾随零的数字. 示例:二进制格式的 4 是 100 ,因此该函数在此情况下返回 2 . unsigned Trailing_zeroes(int n){无符号位;位= 0;而(n> = 0&!(n& 01)){++位;如果(n!= 0)n>> = 1;别的休息;}返回位;} if 语句的原 ..
发布时间:2021-04-15 20:05:30 C/C++开发

C和赋值中的stdbool.h bool类型按位互斥或^

我有一个玩具程序,在其中我使用 库使用 bool 类型.我有几个 bool 数组,以下命令循环工作. 我已经在线阅读了我不应该对布尔使用逐位逻辑的信息.他们似乎在这里工作.这只是我的编译器的运气不好,还是我只是误解了有关按位运算符的警告? #include#include#定义N 5int main(void){bool ..
发布时间:2021-04-15 20:05:26 其他开发

对char进行按位运算可得出32位结果

我一直在用C编写程序,将char的前4位移到末尾,将后4位移到开始.对于大多数值,它可以正常工作,也可以进行反向操作,但是对于某些值,例如8,x,y,z,它给出的结果是32位值.通过打印变量的十六进制值检查的值.谁能解释为什么会这样? #include#includeint main(){字符o,f,a = 15;scanf(“%c",& o);pri ..
发布时间:2021-04-15 20:05:23 其他开发

在C语言(也是C ++)中,如何“&"运算符既可以用作地址运算符,又可以按位运算符?由于C不支持运算符重载

运算符“&"可以通过以下两种方式使用 int a;scanf(“%d",& a); 和 printf(“%d",1& 2).但是行为不同(第一次是作为地址运算符,第二次是按位运算符).我知道C中不存在运算符重载.然后它如何工作?还要突出显示c ++. 解决方案 在"C"中在语言中,当运算符用作表达式的前缀,表达式的后缀或“中缀"时,它们具有不同的含义.(在两个表达式之间). 考虑"* ..

为什么在C#中执行按位运算时必须强制转换为0(零)?

我正在使用以下代码对我解压缩的12位值从1.5字节扩展为16位: word [0] | =((word [0]& 0x800)!= 0?(Int16)(-4096):(Int16)0); 如果我不将最后一个零强制转换为Int16,则会收到编译器的以下投诉: 警告1在符号扩展的操作数上使用按位或运算符;考虑先转换为较小的无符号类型错误2无法将类型'int'隐式转换为'short'.存在显式 ..
发布时间:2021-04-15 20:05:18 C#/.NET

大于C函数

我知道这是一个古老的问题,您可能也遇到过这个问题,但是我的解决方案中有一个错误,我不知道如何解决.我需要编写一个比较两个整数的函数.我只能使用操作(!,〜,&,^,|,+,>>,返回1.y.return((y +(〜x + 1))> 31)& 1;} 我的想法很简单,我们计算 ..
发布时间:2021-04-15 20:05:15 其他开发

逻辑与按位运算符AND

即使我读到其他一些关于它的问题,我也不理解& 和 and 之间的区别. 我的代码是: f = 1x = 1f == 1&x == 1出[60]:是f == 1和x == 1出[61]:是f = 1x = 2f == 1和x == 2出[64]:是的f == 1&x == 2出[65]:错误 为什么是第二个& False ,而第一个是 True ? 解决方案 问题是& 的运算符 ..
发布时间:2021-04-15 20:05:12 Python

什么时候不应该使用Java快捷键运算符&

我的理解是,使用&&作为Java中的数学运算,如果评估的LHS(左手边)失败,则不会检查右手边. false&&getName(); getName()永远不会被调用,因为LHS已经失败了. false&getName(); 如果我知道LHS失败了,我什么时候想检查RHS?当然,对RHS评估的任何依赖都将是不良的编码习惯吗? 谢谢 解决方案 & 和&&的原因不是,那就 ..
发布时间:2021-04-15 20:05:09 Java开发