http://gharee.com/wiki/index.php?action=history&feed=atom&title=%E4%BD%8D%E5%BC%82%E6%88%96 123,123,123 2025-06-29T02:20:32Z 本wiki的該頁面的版本歷史 MediaWiki 1.21.2 http://gharee.com/wiki/index.php?title=%E4%BD%8D%E5%BC%82%E6%88%96&diff=50&oldid=prev Admin:以“按位異或(^)<br> 在C++中有一個有點不尋常的操作,它被稱為按位異或,或者XOR(在英語中,通常讀作“eks-or”)。按位異...”為內(nèi)容創(chuàng)建頁面 2014-09-12T05:31:44Z <p>以“按位異或(^)&lt;br&gt; 在C++中有一個有點不尋常的操作,它被稱為按位異或,或者XOR(在英語中,通常讀作“eks-or”)。按位異...”為內(nèi)容創(chuàng)建頁面</p> <p><b>新頁面</b></p><div>按位異或(^)&lt;br&gt;<br /> <br /> <br /> 在C++中有一個有點不尋常的操作,它被稱為按位異或,或者XOR(在英語中,通常讀作“eks-or”)。按位異或運算符使用符號^。該運算符與按位或運算符“|”非常相似 ,唯一的不同是當輸入位都為1時它返回0。&lt;br&gt;<br /> &lt;pre style=&quot;color:red&quot;&gt;<br /> 0 0 1 1 operand1<br /> 0 1 0 1 operand2<br /> ----------<br /> 0 1 1 0 (operand1 ^ operand2) - returned result<br /> &lt;/pre&gt;<br /> <br /> <br /> 看待XOR的另一個視角是,當輸入不同時結果為1,當輸入相同時結果為0。&lt;br&gt;<br /> <br /> <br /> <br /> 這里是一個簡單的示例代碼:&lt;br&gt;<br /> &lt;pre style=&quot;color:green&quot;&gt; <br /> int x = 12; // binary: 1100<br /> int y = 10; // binary: 1010<br /> int z = x ^ y; // binary: 0110, or decimal 6<br /> &lt;/pre&gt;<br /> <br /> “^”運算符常用于翻轉(zhuǎn)整數(shù)表達式的某些位(例如從0變?yōu)?,或從1變?yōu)?)。在一個按位異或操作中,如果相應的掩碼位為1, 該位將翻轉(zhuǎn),如果為0,該位不變。以下是一個閃爍引腳5的程序.&lt;br&gt;<br /> &lt;pre style=&quot;color:green&quot;&gt;<br /> // Blink_Pin_5<br /> // demo for Exclusive OR<br /> void setup(){<br /> DDRD = DDRD | B00100000; // set digital pin five as OUTPUT <br /> Serial.begin(9600);<br /> }<br /> <br /> void loop(){<br /> PORTD = PORTD ^ B00100000; // invert bit 5 (digital pin 5), leave others untouched<br /> delay(100);<br /> }<br /> <br /> &lt;/pre&gt;</div> Admin