亦或
異或,英文爲exclusive OR,縮寫成xor。異或(xor) 是一個數學運算符。它應用於邏輯運算。異或的數學符號爲“⊕”,計算機符號爲"xor” 。
其運算法則爲:
a⊕b= (¬a^b)v (a ^¬b),如果a、b兩個值不相同,則異或結果爲1。如果a、b兩個值相同,異或結果爲0。
運算方法如下:
真⊕假=真
假⊕真=真
假⊕假=假
真⊕真=假
或者爲:
True⊕False = True
False⊕True = True
False⊕False = False
True⊕True = False
海明碼
海明碼(也叫漢明碼)具有一位糾錯能力。
編碼:
確定校驗碼的位數x
設數據有n位,校驗碼有x位。則校驗碼一共有種取值方式。其中需要一種取值方式表示數據正確,剩下-1種取值方式表示有一位數據出錯。因爲編碼後的二進制串有n+x位,因此x應該滿足
-1 ≥ n+x
使不等式成立的x的最小值就是校驗碼的位數。在本例中,n=7,解得x=4。