按位異或,其操作符為^,形式為
成都創(chuàng)新互聯(lián)公司是一家專(zhuān)注于成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)與策劃設(shè)計(jì),南州晴隆網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專(zhuān)注于網(wǎng)站建設(shè)十余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專(zhuān)業(yè)建站公司;建站業(yè)務(wù)涵蓋:南州晴隆等地區(qū)。南州晴隆做網(wǎng)站價(jià)格咨詢:18982081108
a^b
計(jì)算時(shí),根據(jù)操作數(shù)a和b每位的值,計(jì)算結(jié)果,當(dāng)a,b的對(duì)應(yīng)位上值相同時(shí),結(jié)果的該位上值為0,否則值為1。
如
char a = 0x12, b = 0x34;
a^b
= 0x12 ^ 0x34
= B0001 0010 ^ B0011 0100
= B0010 0110
=0x26
擴(kuò)展資料:
異或,英文為exclusive OR,縮寫(xiě)成xor異或(xor)是一個(gè)數(shù)學(xué)運(yùn)算符。它應(yīng)用于邏輯運(yùn)算。異或的數(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)位,所以異或常被認(rèn)作不進(jìn)位加法。
參考資料:異或百度百科
add:addition,加法指令,實(shí)現(xiàn)兩個(gè)操作數(shù)的加法
ret:return,返回指令,返回主程序
mov:move,數(shù)據(jù)傳送指令,將源操作數(shù)放到目的操作數(shù)
xor:邏輯異或指令,將兩個(gè)操作數(shù)進(jìn)行異或邏輯運(yùn)算,相異而或,當(dāng)操作數(shù)對(duì)應(yīng)位相同時(shí)結(jié)果為1,不同時(shí)為0
lea:裝入有效地址指令,將源操作數(shù)的有效地址傳送至目的操作數(shù)保存
call:子程序調(diào)用指令,程序運(yùn)行到此語(yǔ)句時(shí),調(diào)用call后的子程序執(zhí)行。
XOR是運(yùn)算符 0 XOR 0 =0 0 XOR 1 =1 1 XOR 0 =1 1 XOR 1 =0 {XOR=異或 0 XOR 0 =1 0 XOR 1 =0 1 XOR 0 =0 1 XOR 1 =1} 其實(shí)和 ord(00) =0 ord(01) =1 ord(10) =1 ord(11) =0 的值是相反的 前面再加個(gè)NOT 就是了
xor是異或的意思,左移右移什么的都是位運(yùn)算,都是二進(jìn)制層面計(jì)算的,比如2^1 就是2XOR1, 換為二進(jìn)制是10 ^ 01 異或就是相同為0不同為1,那么結(jié)果就是11,就是3,異或有很巧妙的作用,以后可能會(huì)接觸到,左移右移就是換為二進(jìn)制然后向左移位,或者向右移位,左移:照二進(jìn)制值每位向高位移動(dòng)n位; 最高位(最左邊的)n位舍去;最低位(最右邊)填加n個(gè)0.比如6是00000110,左移就是00001000,就是12 00000110右移就是00000011,就是3