我试图找到在C中写一个XNOR门的最有效方法.
if(VAL1 XNOR VAL2)
{
BLOCK;
}
Run Code Online (Sandbox Code Playgroud)
有什么建议?
谢谢.
如果[0 .. 2 64 ] 范围内的任何数字不能由给定集合中的一个或多个数字的任何XOR组合生成,那么是否存在打印至少一个无法到达的数字的有效方法,或者终止信息,没有无法访问的号码?这个问题有名字吗?它是否与另一个问题类似,或者您有任何想法,如何解决?
我觉得愚蠢无法解决这个问题,但我迷失了.我试图XOR两个C字符串.
#include <stdio.h>
#include <memory.h>
#include <stdlib.h>
int main()
{
char plainone[16];
char plaintwo[16];
char xor[17];
strcpy(plainone, "PlainOne");
strcpy(plaintwo, "PlainTwo");
int i=0;
for(i=0; i<strlen(plainone);i++)
xor[i] ^= (char)(plainone[i] ^ plaintwo[i]);
printf("PlainText One: %s\nPlainText Two: %s\n\none^two: %s\n", plainone, plaintwo, xor);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我的输出是:
$ ./a.out
PlainText One: PlainOne
PlainText Two: PlainTwo
one^two:
Run Code Online (Sandbox Code Playgroud)
为什么xor数组不能读作什么?
例如,
if (bool1 ^ bool2 ^ bool3 ^ bool4)
{
// Do whatever
}
Run Code Online (Sandbox Code Playgroud)
只有在满足其中一个条件时才应执行.
我遇到了一篇文章如何在一个混洗的连续整数数组中找到一个重复的元素?但后来意识到这很多输入都失败了.
例如:
arr[] = {601,602,603,604,605,605,606,607}
#include <stdio.h>
int main()
{
int arr[] = {2,3,4,5,5,7};
int i, dupe = 0;
for (i = 0; i < 6; i++) {
dupe = dupe ^ a[i] ^ i;
}
printf ("%d\n", dupe);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
如何修改此代码,以便可以找到所有案例的重复元素?
我意识到差异可以忽略不计,但是在尝试将无符号长度归零时哪个更有效?
unsigned long x;
...
x=0;
--OR--
x^=x;
Run Code Online (Sandbox Code Playgroud)
泰勒
我已经在这里发布了几天类似的问题了,但似乎我没有问正确的事情,所以请原谅我,如果我用XOR问题让你筋疲力尽:D.
要点 - 我有两个十六进制字符串,我想对这些字符串进行异或,以便每个字节分别进行异或(即每对数字分别进行异或).我想在python中这样做,我希望能够拥有不同长度的字符串.我将手动做一个例子来说明我的观点(我使用了代码环境,因为它允许我放入我希望它们的空间):
Input:
s1 = "48656c6c6f"
s2 = "61736b"
Encoding in binary:
48 65 6c 6c 6f = 01001000 01100101 01101100 01101100 01101111
61 73 6b = 01100001 01110011 01101011
XORing the strings:
01001000 01100101 01101100 01101100 01101111
01100001 01110011 01101011
00001101 00011111 00000100
Converting the result to hex:
00001101 00011111 00000100 = 0d 1f 04
Output:
0d1f04
Run Code Online (Sandbox Code Playgroud)
因此,总而言之,我希望能够输入两个不同或相等长度的十六进制字符串(这些字符串通常是以十六进制编码的ASCII字母),并获得它们的XOR,使得每个字节分别进行异或.
我花了最近5个小时寻找答案.即使我找到了许多答案,但他们却没有任何帮助.
我基本上寻找的是任何32位无符号整数的按位XOR运算符的数学,算术表示.
即使这听起来很简单,但没有人(至少看起来如此)设法找到这个问题的答案.
我希望我们能够集思广益,共同寻找解决方案.
谢谢.