【问题标题】:What is an XOR sum?什么是 XOR 和?
【发布时间】:2013-06-21 11:35:27
【问题描述】:

我不确定这个术语的确切定义。

我知道按位异或运算是逐位进行的,并按位置对相应位进行异或运算。这个结果是否称为“XOR 和”?如果不是,什么是 XOR 和,你如何使用 XOR 来实现这个加法?

【问题讨论】:

  • 了解checksums
  • xorsum = A xor B xor C xor .... xor N
  • 你能给出这个词的参考吗?你在哪里找到的? XOR 用作忽略进位的按位加法器。
  • 该术语来自密码学问题分配:编写一个函数,该函数采用两个等长缓冲区并产生它们的 XOR 和。我不想要这个问题的答案或解释,只是在这个(或任何)上下文中 XOR sum 的定义。
  • 在 mod 2 的有限域算术中,XOR 等于和。见en.wikipedia.org/wiki/Finite_field_arithmetic

标签: c bit-manipulation bit xor


【解决方案1】:

按位异或运算:

a   b   a^b
-----------
0   0    0
0   1    1
1   0    1
1   1    0 

异或和是指对整数的连续异或运算。
假设您有从 1N 的数字,并且您必须找到它们的 XOR 和,那么对于 N = 6,XOR 和将是 1^2^3^4^5^6 = 7

1 = 001,  2 = 010,   3 = 011,   4 = 100,   5 = 101,   6 = 110  

 1^2          = 1^2  = 001^010 = 011 = 3  
(1^2)^3       = 3^3  = 011^011 = 000 = 0
(1^2^3)^4     = 0^4  = 000^100 = 100 = 4
(1^2^3^4)^5   = 4^5  = 100^101 = 001 = 1
(1^2^3^4^5)^6 = 1^6  = 001^110 = 111 = 7 --> XOR sum

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 2011-02-08
    • 2022-11-18
    • 2018-04-27
    • 1970-01-01
    • 2020-02-26
    • 2011-05-09
    • 2016-08-07
    • 2019-06-29
    • 2014-02-03
    相关资源
    最近更新 更多