歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> 關於Unix >> 說說異或運算^和他的一個常用作用

說說異或運算^和他的一個常用作用

日期:2017/3/6 15:21:27   编辑:關於Unix
剛剛學到的.呵呵 說說異或運算^和他的一個常用作用。 異或的運算方法是一個二進制運算: 1^1=0 0^0=0 1^0=1 0^1=1 兩者相等為0,不等為1. 這樣我們發現交換兩個整數的值時可以不用第三個參數。 如a=11,b=9.以下是二進制 a=a^b=1011^1001=0010; b=b^a=1001^0010 剛剛學到的.呵呵

說說異或運算^和他的一個常用作用。
 異或的運算方法是一個二進制運算:
 1^1=0
 0^0=0
 1^0=1
 0^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;
 }

 這樣就可以不通過監時變量來傳遞了。

 最後要聲明:只能用於整數。

Copyright © Linux教程網 All Rights Reserved