六月丁香五月婷婷,丁香五月婷婷网,欧美激情网站,日本护士xxxx,禁止18岁天天操夜夜操,18岁禁止1000免费,国产福利无码一区色费

學(xué)習(xí)啦 > 知識(shí)大全 > 知識(shí)百科 > 百科知識(shí) > 什么是異或運(yùn)算有哪些作用

什么是異或運(yùn)算有哪些作用

時(shí)間: 謝君787 分享

什么是異或運(yùn)算有哪些作用

  異或是一個(gè)數(shù)學(xué)運(yùn)算符,它應(yīng)用于邏輯運(yùn)算。那么你對(duì)異或運(yùn)算了解多少呢?以下是由學(xué)習(xí)啦小編整理關(guān)于什么是異或運(yùn)算的內(nèi)容,希望大家喜歡!

  異或運(yùn)算的概念

  異或,英文為exclusive OR,或縮寫成xor

  異或的數(shù)學(xué)符號(hào)為“⊕”,計(jì)算機(jī)符號(hào)為“xor”。其運(yùn)算法則為:

  a⊕b = (¬a ∧ b) ∨ (a ∧¬b)

  如果a、b兩個(gè)值不相同,則異或結(jié)果為1。如果a、b兩個(gè)值相同,異或結(jié)果為0。

  異或也叫半加運(yùn)算,其運(yùn)算法則相當(dāng)于不帶進(jìn)位的二進(jìn)制加法:二進(jìn)制下用1表示真,0表示假,則異或的運(yùn)算法則為:0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0(同為0,異為1),這些法則與加法是相同的,只是不帶進(jìn)位。

  異或略稱為XOR、EOR、EX-OR

  程序中有三種演算子:XOR、xor、⊕。

  使用方法如下

  z = x ⊕ y

  z = x xor y

  異或運(yùn)算的運(yùn)算法則

  1. a ⊕ a = 0

  2. a ⊕ b = b ⊕ a

  3. a ⊕b ⊕ c = a ⊕ (b ⊕ c) = (a ⊕ b) ⊕ c;

  4. d = a ⊕ b ⊕ c 可以推出 a = d ⊕ b ⊕ c.

  5. a ⊕ b ⊕ a = b.

  6.若x是二進(jìn)制數(shù)0101,y是二進(jìn)制數(shù)1011

  則x⊕y=1110

  只有在兩個(gè)比較的位不同時(shí)其結(jié)果是1,否則結(jié)果為0

  即“兩個(gè)輸入相同時(shí)為0,不同則為1”!

  異或運(yùn)算的作用

  在計(jì)算機(jī)中普遍運(yùn)用,異或(xor)的邏輯符號(hào)一般用xor,也有用⊕的:

  真⊕假=真

  假⊕真=真

  假⊕假=假

  真⊕真=假

  或者為:

  True ⊕ False = True

  False ⊕ True = True

  False ⊕ False = False

  True ⊕ True = False

  異或運(yùn)算的巧用

  與其它語言不同,C語言和C++語言的異或不用xor,而是用“^”,鍵入方式為Shift+6。(而其它語言的“^”一般表示乘方)

  若需要交換兩個(gè)變量的值,除了通常使用的借用中間變量進(jìn)行交換外,還可以利用異或,僅使用兩個(gè)變量進(jìn)行交換,如:

  a=a^b;

  b=b^a;

  a=a^b;

  詳解:

  a1=a^b

  b=b^a1=b^a^b=a

  //此時(shí)a1=a^b

  a=a1^b=a^b^a=b

  注意:

  a=a^b^(b=a);//此類形式是不正確的UB行為,在不同編譯器中會(huì)有不同的結(jié)果,切勿使用

  這樣就完成了a與b的交換。

  綜上:同一變量與另一變量和其異或值異或等于自身。

  用例:可使用于加密算法某一環(huán)節(jié)或更多環(huán)節(jié),使算法更復(fù)雜,不易被破解,安全性更高。
看過“異或運(yùn)算的作用”的人還看了:

1.c語言位運(yùn)算符的用法

2.c語言公共基礎(chǔ)知識(shí)考點(diǎn)

3.2014年計(jì)算機(jī)三級(jí)PC技術(shù)要點(diǎn):80x86宏匯編語言的數(shù)據(jù)和表達(dá)式

4.linux操作系統(tǒng)漏洞

5.2015年9月計(jì)算機(jī)二級(jí)C語言高分突破模擬卷匯總

6.怎么安裝家用無線路由器

1530025