我知道异或两个十进制数字意味着它们的二进制表示被异或。
但是在非数学的意义上,这意味着什么?
它具有什么重要性?
我知道异或两个十进制数字意味着它们的二进制表示被异或。
但是在非数学的意义上,这意味着什么?
它具有什么重要性?
如果你将结果与原来的一个数字进行异或运算,你会得到另一个原始数字。
a ^ b = X
X ^ a = b
X ^ b = a
这在密码学和哈希算法中常被使用。
3^7
的结果?(其中 ^
表示异或运算符)
步骤1:将数字从十进制转换为二进制
3 => 0011
and 7 => 0111
步骤2:对两个二进制数进行按位异或操作。 3 : 0011
7 : 0111
3^7 : 0100
(提示:1^0 = 1,1^1 = 0^0 = 0)
步骤3:将答案转化为十进制
0100 => 4
因此,3的7次方等于4
请点击这里了解更多详情。
7 => 1111
,但是 7 (十进制) 不是等于 0111 (二进制) 吗? - HII例如: 3 = 0011 5 = 0101
3 ^ 5 = 0110在LSB中有(1和1),表示两个1,由于两个是偶数,因此您放置0,在下一个位中,有(1和0)和计数为1的1,这是奇数,因此您放置1,依此类推。
如果您想尝试这个,请尝试此在线计算器
这在通信中用于奇偶校验、纠错算法和正交码序列生成;请参见关于CDMA的此网站获取更多详细信息。
简单的奇偶校验示例,假设我们发送8位,7位数据和第8位是校验位。我们发送: 0110011X:在这种情况下,X是奇偶校验器,因为我们有4个1和4是偶数,所以为0。 如果数据传输中存在错误,例如我们接收到这个 11100110:字节流中1的数量为5,MSB有一个错误。 5应该产生奇数校验位1,但是由于校验位为0,这意味着数据传输中存在错误。 这是串行数据传输中使用的最简单的奇偶校验。 纠错码构建在其上。