1樓:匿名使用者
異或運算:兩個值不相同,則異或結果為真。例如:真異或假的結果是真,假異或真的結果也是真,真異或真的結果是假,假異或假的結果是假。
與或運算:這個不存在,是不是你筆誤了?接近的答案是:
與運算:邏輯乘法。兩個值中,若有一個假則結果為假。
或運算:邏輯加法。兩個值種,若有一個真則結果為真。
[計算機][數字邏輯]數字邏輯運算中,異或運算、與運算、或運算的優先順序如何?
2樓:德運
邏輯運算中異或運算、與運算、或運算的優先順序是:與 > 異或 > 或。
邏輯運算中,先運算優先順序高的表示式,再運算優先順序低的,如果優先順序相同,就順序運算。
特別地,邏輯運算又有位運算和表示式邏輯運算,比如 位運算 a&b 是計算a和b按位運算的值,邏輯 a && b 是計算 a和b 計算結果是否為真(非零),因此,位運算優先順序大於邏輯運算,那麼,就邏輯運算而言,優先順序完全的歸納如下:
1級、非運算 「!」
2級、與位運算 「&」,比如 a && b&c 等於 a && (b&c)
3級、異或運算 「^」
4級、或運算 「|」
5級、邏輯與運算 "&&"
6級、邏輯或運算 「||」
結語:雖然使用運算優先規則能去區分表示式運算順序,在編寫表示式的時候,為了便於清晰的閱讀,還是建議使用()來劃分優先順序。
3樓:qsc南風窗吧
邏輯運算子中,邏輯非運算子( !)和所有的單目運算子同級,高於雙目的算術運算子、關係運算子、邏輯運算子與(&)和邏輯運算子或(‖);與運算高於或運算,它們都低於算數運算子和關係運算子。
邏輯運算中邏輯與,或,異或的關係
4樓:
三者沒有一般性關係。
與即&&——參與運算的元素都為「真」時,整個表示式結果才為「真」。
或即||——參與運算的元素中只要有一個為「真」,整個表示式結果就為「真」。
異或即^——參與運算的兩個元素都為「真」或都為「假」時結果為「假」,而兩個元素一「真」一「假」時結果為「真」。
邏輯異或運算是什麼
5樓:匿名使用者
1、異或(xor)是一個數**算符。它應用於邏輯運算。
2、異或的數學符號為「⊕」,計算機符號為「xor」。其運演算法則為:a⊕b = (¬a ∧ b) ∨ (a ∧¬b)
3、如果a、b兩個值不相同,則異或結果為1。如果a、b兩個值相同,異或結果為0。
4、邏輯異或運算簡稱異或。英文為exclusive or,或縮寫成xor。
5、異或也叫半加運算,其運演算法則相當於不帶進位的二進位制加法:二進位制下用1表示真,0表示假,則異或的運演算法則為:0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0(同為0,異為1),這些法則與加法是相同的,只是不帶進位,所以異或常被認作不進位加法。
一、運演算法則
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
二、邏輯表示式:f=ab』⊕a』b((ab』⊕a』b)』=ab⊙a』b』,⊙為「同或」運算)
6樓:51全心全意
邏輯異或運算簡稱異或。異或,英文為exclusiveor,縮寫成xo。異或(xor)是一個數**算符。
它應用於邏輯運算。異或的數學符號為「⊕」,計算機符號為「xor」。其運演算法則為:
a⊕b=(¬a∧b)∨(a∧¬b)
如果a、b兩個值不相同,則異或結果為1。如果a、b兩個值相同,異或結果為0。
異或也叫半加運算,其運演算法則相當於不帶進位的二進位制加法:二進位制下用1表示真,0表示假,則異或的運演算法則為:0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0(同為0,異為1),這些法則與加法是相同的,只是不帶進位。
邏輯異或運算性質
1、交換律
2、結合律(即(a^b)^c==a^(b^c))
3、對於任何數x,都有x^x=0,x^0=x
4、自反性axorbxorb=axor0=a
異或運算最常見於多項式除法,不過它最重要的性質還是自反性:axorbxorb=a,即對給定的數a,用同樣的運算因子(b)作兩次異或運算後仍得到a本身。這是一個神奇的性質,利用這個性質,可以獲得許多有趣的應用。
例如,所有的程式教科書都會向初學者指出,要交換兩個變數的值,必須要引入一箇中間變數。但如果使用異或,就可以節約一個變數的儲存空間:設有a,b兩個變數,儲存的值分別為a,b,則以下三行表示式將互換他們的值表示式(值):
a=axorb(axorb)
b=bxora(bxoraxorb=a)
a=axorb(axorbxora=b)
類似地,該運算還可以應用在加密,資料傳輸,校驗等等許多領域。
邏輯異或運算怎麼算
邏輯異或運算簡稱異或。英文為exclusiveor,或縮寫成xor。
異或(xor)是一個數**算符。它應用於邏輯運算。異或的數學符號為「⊕」,計算機符號為「xor」。其運演算法則為:
a⊕b=(¬a∧b)∨(a∧¬b)
如果a、b兩個值不相同,則異或結果為1。如果a、b兩個值相同,異或結果為0。
異或邏輯
邏輯表示式:f=ab』⊕a』b((ab』⊕a』b)』=ab⊙a』b』,⊙為「同或」運算)
異或邏輯的真值表如圖1所示
示,其邏輯符號如圖2所示。異或邏輯的關係是:當ab不同時,輸出p=1;當ab相同時,輸出p=0。「⊕」是異或運算子號,異或邏輯也是與或非邏輯的組合,其邏輯表示式為:
p=a⊕b
由圖1可知,異或運算的規則是
0⊕0=0,0⊕1=1
1⊕0=1,1⊕1=0
口訣:相同取0,相異取1
事實上,xor在英文裡面的定義為eitherone(isone),butnotboth,也即只有一個為真(1)時,取真(1)。
邏輯異或運算應用
1-1000放在含有1001個元素的陣列中,只有唯一的一個元素值重複,其它均只出現一次。每個陣列元素只能訪問一次,設計一個演算法,將它找出來;不用輔助儲存空間,能否設計一個演算法實現?
解法一、顯然已經有人提出了一個比較精彩的解法,將所有數加起來,減去1+2+.。.+1000的和。
這個演算法已經足夠完美了,相信出題者的標準答案也就是這個演算法,唯一的問題是,如果數列過大,則可能會導致溢位。
解法二、異或就沒有這個問題,並且效能更好。
將所有的數全部異或,得到的結果與1^2^3^.。.^1000的結果進行異或,得到的結果就是重複數。
但是這個演算法雖然很簡單,但證明起來並不是一件容易的事情。這與異或運算的幾個特性有關係。
首先是異或運算滿足交換律、結合律。
所以,1^2^.。.^n^.。.^n^.。.^1000,無論這兩個n出現在什麼位置,都可以轉換成為1^2^.。.^1000^(n^n)的形式。
其次,對於任何數x,都有x^x=0,x^0=x。
所以1^2^.。.^n^.。.^n^.。.
^1000 = 1^2^.。.^1000^(n^n)= 1^2^.。.^1000^0 = 1^2^.。.
^1000(即序列中除了n的所有數的異或)。
令,1^2^.。.^1000(序列中不包含n)的結果為t
則1^2^.。.^1000(序列中包含n)的結果就是t^n。
t^(t^n)=n。
所以,將所有的數全部異或,得到的結果與1^2^3^.。.^1000的結果進行異或,得到的結果就是重複數。
當然有人會說,1+2+.。.+1000的結果有高斯定律可以快速計算,但實際上1^2^.。.^1000的結果也是有規律的,演算法比高斯定律還該簡單的多。
google面試題的變形:一個陣列存放若干整數,一個數出現奇數次,其餘數均出現偶數次,找出這個出現奇數次的數?
解法有很多,但是最好的和上面一樣,就是把所有數異或,最後結構就是要找的,原理同上
7樓:啦啦啦啦崔小淨
異或就是相同時為0,不同時為1。比如:1011和0110異或之後就是1101.
8樓:白又又
在c++中用 ^ 運算子實現按位異或運算。
expression1^expression2參與運算的兩個值,如果兩個相應bit位相同,則結果為0,否則為1。 即:
0^0 = 0,
1^0 = 1,
0^1 = 1,
1^1 = 0
簡單說,異或就是相同的出1,不同的出0
9樓:月似當時
邏輯異或運算簡稱異或。英文為exclusive or,或縮寫成xor。
異或(xor)是一個數**算符。它應用於邏輯運算。異或的數學符號為「⊕」,計算機符號為「xor」。其運演算法則為:
a⊕b = (¬a ∧ b) ∨ (a ∧¬b)如果a、b兩個值不相同,則異或結果為1。如果a、b兩個值相同,異或結果為0。
10樓:匿名使用者
區別在於異或是接位進行的,不等是按整體進行的
異或屬於位運算,把一個數以二進位制的形式對每一位進行異或運算
11樓:匿名使用者
異或邏輯運算(半加運算, xor)
異或運算通常用符號"⊕"表示,其運算規則為:
0⊕0=0 0同0異或,結果為0
0⊕1=1 0同1異或,結果為1
1⊕0=1 1同0異或,結果為1
1⊕1=0 1同1異或,結果為0
即兩個邏輯變數相異,輸出才為1
12樓:hの崽子
相同的為0,不同的為1。
~a*b + ~b*a=1。
邏輯或與邏輯異或的區別?
13樓:
邏輯或「||」是0||0=0,0||1=1,1||0=1,1||1=1
邏輯異或「^」是0^0=0,0^1=1,1^0=1,1^1=0怎麼會一樣呢
參考
計算機中與,或,非,異或是怎麼運算的???
14樓:
1、異或(xor)是一個數**算符。它應用於邏輯運算。
2、異或的數學符號為「⊕」,計算機符號為「xor」。其運演算法則為:a⊕b = (¬a ∧ b) ∨ (a ∧¬b)
3、如果a、b兩個值不相同,則異或結果為1。如果a、b兩個值相同,異或結果為0。
4、邏輯異或運算簡稱異或。英文為exclusive or,或縮寫成xor。
5、異或也叫半加運算,其運演算法則相當於不帶進位的二進位制加法:二進位制下用1表示真,0表示假,則異或的運演算法則為:0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0(同為0,異為1),這些法則與加法是相同的,只是不帶進位,所以異或常被認作不進位加法。
什麼是邏輯運算子,請問,VB中的邏輯運算子都是什麼意思?
邏輯運算子用來表示日常交流中的 並且 或者 除非 等思想。邏輯運算子 在形式邏輯中,邏輯運算子或邏輯連線詞將語句連線成更復雜的語句。例如,假設有兩個邏輯命題,即 下雨了 和 我在屋裡 可以把它們變成複雜的命題 下雨了,我在屋裡 或 沒下雨 或 如果下雨了,我在屋裡 由兩個語句組成的新語句或命題稱為複...
C語言中,邏輯運算子且與那麼或這個運
和 在一個鍵上 按住shift 可以得到。和 7 在一個鍵上 按住shift 7 可以得到。採納哦 c語言邏輯運算子 我不明白 和 到底是怎麼運算的 1 形式 的形式為a b。的形式為a b。2 計算規則 只有當a和b的值均非0時,結果為1,否則結果為0。只有當a和b的值均為0時,結果為0,否則結果...
c語言邏輯運算子與自增自減運算子的雜糅運算
走 這涉及一個執行流程的問題,當執行到if的時候,一個合理的做法是先選擇走 回的哪條路,然後才是答計算涉及的表示式,這是提高效率的方法,隨之也會帶來所謂的 如果把式子改為b c a 結果如你所願,3,0,1。但以書中的例子,a b c 把a 計算完成後,發現為真,直接跳轉到後面 了,導致b和c都沒有...