異或^的意義及其應用

1、異或htm

一、異或是一個數學運算符。他應用於邏輯運算。get

二、例如:真異或假的結果是真,假異或真的結果也是真,真異或真的結果是假,假異或假的結果是假。就是說兩個值不相同,則異或結果爲真。反之,爲假。數學

三、在計算機應用中,廣泛運用,異或的邏輯符號 ^  (Shift + 6).形象表示爲:io

真^假=真function

假^真=真變量

假^假=假二進制

真^真=假方法

或者爲:計算機

True ^ False = True語言

False ^ True = True

False ^ False = False

True ^ True = False

部分計算機語言用1表示真,用0表示假,因此兩個字節按位異或以下

00000000

異或

00000000

=

00000000

============我是分界線============

11111111

異或

00000000

=

11111111

=============我仍是分界線=============

00000000

異或

11111111

=

11111111

===========又是我。。。================

11111111

異或

11111111

=

00000000

=============分界線=====================

00001111

異或

11111111

=

11110000

========================================

因此 按位異或 也經常使用於字節取反操做。

---------------------------------------------------------------

異或還能夠用來交換兩個整形變量的值,而不須要第三個量的傳遞.

例如:

a=9;

b=10;

a=a^b;

b=b^a;

a=a^b;

結果是a爲10,b爲9.

四、說說異或運算^和他的一個經常使用做用。異或的運算方法是一個二進制運算:1^1=00^0=01^0=10^1=1二者相等爲0,不等爲1.這樣咱們發現交換兩個整數的值時能夠不用第三個參數。如a=11,b=9.如下是二進制a=a^b=1011^1001=0010;b=b^a=1001^0010=1011;a=a^b=0010^1011=1001;這樣一來a=9,b=13了。舉一個運用, 按一個按鈕交換兩個mc的位置能夠這樣。mybt.onPress=function(){mc1._x=mc1._x^mc2._x;mc2._x=mc2._x^mc1._x;mc1._x=mc1._x^mc2._x;//mc1._y=mc1._y^mc2._y; mc2._y=mc2._y^mc1._y;mc1._y=mc1._y^mc2._y;}這樣就能夠不經過監時變量來傳遞了。最後要聲明:只能用於整數。

相關文章
相關標籤/搜索