零基础学习WCDMA(2):异或

原创 2013年 5月 24日
标签: WCDMA
本文发布至今已有11年零213天,可能不再适用,请谨慎对待。

每篇开头会提出一个问题,希望能引起你的思考,并且请你试着回答。相信在读完整篇后,你会有明确的答案。

问题:异或运算能用代数方法表示吗?

  • A. 不能
  • B. 只能用加法
  • C. 只能用乘法
  • D. 加法和乘法都可以

为什么要研究异或?异或跟WCDMA有什么关系?异或是非常简单而又实用的二进制运算,所以它成为CDMA系统(包括过时的IS-95和我们现在说的Wideband-CDMA, WCDMA)核心中的核心。所以说掌握了异或算法,也就掌握了WCDMA的钥匙。

算法和性质

异或运算通常用符号"⊕“表示,A⊕B的结果用真值表表示是这样的

ABA⊕B

直观的解释异或运算,其实是个异值比较器,当两个输入端的值不同时,输出为真。用数学语言说:

当且仅当有一个输入为真时,结果是真。

仔细观察异或的真值表,可以得到出结论:任何值和本身异或,结果都是假。

A ⊕ A = 假

任何值和假异或,得到它本身。

A ⊕ 假 = A

异或满足结合律,所以结合以上两条关系,得到:任何值连续两次和同一个值异或,都能恢复原值。

(A ⊕ B) ⊕ B = A ⊕ (B ⊕ B) = A ⊕ 假 = A

代数表示法

为了方便表示和计算,我们可以用数字和代数运算表示异或算法。只要能得到相同的结果,它们之间没有任何区别。因为在实际电路里,只有电平的高与低、灯泡的亮和暗、电子的正与负,跟我们用什么表示数学符号去表示它们没有关系,数学符号仅仅用来记录状态。以下用两种代数表示法表示异或运算。

(0,1) 模2加法

模2加的意思是:将相加得到的和除以2的余数,作为最终的结果。

0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 0

(1,–1)乘法

1 x 1 = 1
1 x -1 = -1
-1 x 1 = -1
-1 x -1 = 1

对比可以发现,这两种代数算法的结果和异或运算是完全一致的,我们可以用这两种代数运算表示信号的异或计算。所以从现在可以使用(1,-1)表示信号电平,乘法表示异或。比如:下面两组4比特序列进行异或运算,可以表示为:

( 1 -1 1 -1 ) x ( -1 1 -1 1 ) = ( -1 -1 -1 -1 )

如果您对本文有疑问或者寻求合作,欢迎 联系邮箱邮箱已到剪贴板

标签: WCDMA
给个免费的赞吧~

精彩评论

本站 是个人网站,采用 署名协议 CC-BY-NC 授权。
欢迎转载,请保留原文链接 https://www.lfhacks.com/tech/wcdma2/ ,且不得用于商业用途。