C++ XOR operacija

C Xor Operacija



C++ programavimas teikia įvairius bitų operatorius, pvz., AND, OR, NOT, XOR ir tt. Norėdami valdyti duotus duomenis bitų lygiu, naudojame bitų operatorius C++ programavimo kalboje. „XOR“ operatorius (^) C++ vykdo XOR procesą kiekviename dviejų operandų bite. Jei du bitai yra skirtingi, XOR rezultatas yra 1; jei abu yra vienodi, rezultatas yra 0. Čia mes išnagrinėsime C++ programavimo operatorių „XOR“.

1 pavyzdys:

Kodas čia prasideda įtraukiant „iostream“ antraštės failą. Kaip rodo pavadinimas, šis antraštės failas skirtas įvesties ir išvesties funkcijoms, nes šios funkcijos jame deklaruojamos. Tada turime „vardų erdvę std“, kurioje šios funkcijos yra apibrėžtos.

Žemiau mes vadiname „main()“ metodą. Inicijuojame „x“ tipo „int“ kintamąjį ir šiam „x“ priskiriame „10“. Tada turime kitą kintamąjį „y“ duomenų tipo „int“ ir priskirkite „6“. Po to inicijuojame „int“ duomenų tipo „r“. Čia mes taikome operaciją „XOR“ „x“ ir „y“ kintamųjų reikšmėms, tarp šių kintamųjų įdėdami „^“ operatorių. Šis „XOR“ operatorius konvertuoja sveikųjų skaičių reikšmes į dvejetaines, dvejetainėms reikšmėms taiko operaciją „XOR“ ir išsaugo rezultatą kaip sveikąjį skaičių. Šio „XOR“ operatoriaus rezultatas dabar išsaugomas „r“.







Po to atskirai rodome šių kintamųjų reikšmes ir parodome rezultatą, kurį gauname pritaikę operatorių „XOR“ „cout“ pagalba.



1 kodas:

#include

naudojant vardų sritį std ;

tarpt pagrindinis ( ) {

tarpt x = 10 ;

tarpt ir = 6 ;

tarpt r = x ^ ir ;

cout << 'X reikšmė:' << x << endl ;

cout << 'Y reikšmė:' << ir << endl ;

cout << 'XOR x ^ y =' << r << endl ;

grąžinti 0 ;

}

Išvestis:



Kadangi dvejetainė „10“ reikšmė yra „1010“, o dvejetainė „6“ yra „0110“, pritaikius „XOR“ operatorių, ji grąžina „12“, o „1100“ yra dvejetainė „12“. Tai rodo, kad jis grąžina „1“, kai abi įvestys skiriasi, ir grąžina „0“, kai abi įvestys yra vienodos.





2 pavyzdys:

Pridėję „iostream“ antraštės failą ir „std“ vardų sritį, iškviečiame „main()“ metodą. Tada inicijuojame du kintamuosius „X1“ ir „X2“ ir atitinkamai priskiriame šiems kintamiesiems „21“ ir „35“ sveikųjų skaičių reikšmes. Tada atspausdiname abiejų kintamųjų reikšmes. Po to šioms sveikųjų skaičių reikšmėms taikome operatorių „XOR“. Šią „XOR“ operaciją taikome šiems „X1“ ir „X2“ kintamiesiems „cout“ viduje. Taigi, šio „XOR“ rezultatas taip pat rodomas kaip rezultatas.



2 kodas:

#include

naudojant vardų sritį std ;

tarpt pagrindinis ( ) {

tarpt X1 = dvidešimt vienas , X2 = 35 ;

cout << 'X1 vertė = ' << X1 << endl ;

cout << 'X2 reikšmė =' << X2 << endl ;

cout << 'XOR rezultatas yra: << endl ;

cout << 'X1^X2 =' << ( X1 ^ X2 ) << endl ;

grąžinti 0 ;

}

Išvestis:

Pirmoji sveikojo skaičiaus reikšmė yra „21“, o antroji – „35“. Pritaikę operaciją „XOR“, gauname „54“ rezultatą, kuris rodomas čia.

3 pavyzdys:

Mes iškviečiame „main()“ metodą pridėję „iostream“ antraštės failą ir „std“ vardų erdvę. Inicializuojamas „int“ tipo kintamasis „n1“ ir jam priskiriamas „29“. Tada „75“ priskiriame kitam kintamajam „n2“, kuris yra „int“ duomenų tipo. Tada inicijuojame „r1“ ir „int“ duomenų tipo reikšmę.

Toliau taikome operaciją „XOR“ „n1“ ir „n2“ kintamųjų reikšmėms, tarp jų įdėdami operatorių „^“. Sveikųjų skaičių reikšmės konvertuojamos į dvejetaines, naudojant šį „XOR“ operatorių, kuris tada taiko „XOR“ operaciją dvejetainiams duomenims ir išsaugo rezultatą kaip sveikąjį skaičių. Kintamajame „r1“ dabar yra šios „XOR“ operacijos rezultatas. Tada kiekvieno iš šių kintamųjų reikšmės rodomos atskirai. Taip pat parodome „XOR“ operatoriaus naudojimo rezultatus su „cout“ operatoriumi.

3 kodas:

#include

naudojant vardų sritį std ;

tarpt pagrindinis ( )

{

tarpt n1 = 29 ;

tarpt n2 = 75 ;

tarpt r1 = n1 ^ n2 ;

cout << 'Pirmoji vertė:' << n1 << endl ;

cout << 'Antra reikšmė:' << n2 << endl ;

cout << 'XOR operatoriaus rezultatas yra: ' << r1 << endl ;

grąžinti 0 ;

}

Išvestis:

Įvesties sveikieji skaičiai yra „29“ ir „75“, kurie paverčiami dvejetainiais. Tada jiems taikoma operacija „XOR“. Pritaikius „XOR“, rezultatas yra „86“.

4 pavyzdys:

Šiame kode gauname įvestį iš vartotojo ir tada taikome operaciją „XOR“ vartotojo įvesties reikšmėms. Trys kintamieji čia deklaruojami pavadinimais „Xvalue1“, „Xvalue2“ ir „Xvalue3“. Tada dedame „cout“ ir parodome pranešimą „Įveskite dvi reikšmes čia“.

Parodęs šį pranešimą, vartotojas įveda reikšmes, kurias gauname su cin pagalba. Taigi, mes dedame 'cin' žemiau. Abi reikšmės dabar saugomos šiuose kintamuosiuose ir taip pat rodomos čia. Dabar turime taikyti operaciją „XOR“, todėl tarp „Xvalue1“ ir „Xvalue2“ kintamųjų įterpiame „^“ operatorių.

Dabar ši „XOR“ operacija taikoma šių kintamųjų reikšmėms. Tada šio „XOR“ operatoriaus rezultatas išsaugomas „Xvalue3“ kintamajame. Mes taip pat rodome jį naudodami „cout“ metodą.

4 kodas:

#include

naudojant vardų sritį std ;

tarpt pagrindinis ( )

{

tarpt Xvertė1 , Xvertė2 , Xvalue3 ;

cout << 'Čia įveskite dvi reikšmes: ' << endl ;

cout << 'Xvalue1:' ;

valgymas >> Xvertė1 ;

cout << 'Xvalue2:' ;

valgymas >> Xvertė2 ;

Xvalue3 = Xvertė1 ^ Xvertė2 ;

cout << \n Dabar, pritaikius XOR abiem reikšmėms: ' << endl ;

cout << 'Xvalue1 ^ Xvalue2 = ' << Xvalue3 << endl ;

}

Išvestis:

Kai vykdome šį kodą, jis išspausdina pranešimą, kuriame reikia įvesti dvi reikšmes. Taigi įvedame „14“ kaip „Xvalue1“ kintamojo reikšmę ir „45“ kaip „Xvalue2“ kintamojo reikšmę. Tada paspaudžiame „Enter“. Tada šioms reikšmėms taikoma operacija „XOR“, kuri abi reikšmes paverčia dvejetainėmis, o tada čia rodomas rezultatas.

5 pavyzdys:

Šią „XOR“ operaciją taikome simbolių duomenims. Mes inicijuojame du „char“ kintamuosius pavadinimais „ch_a“ ir „ch_b“. Šiems kintamiesiems atitinkamai priskiriame „a“ ir „8“. Tada įdedame operatorių „^“ tarp „ch_a“ ir „ch_b“ ir priskiriame jį „ch_result“ kintamajam, kuris taip pat yra „char“ duomenų tipas. Šie simboliai paverčiami dvejetainiais, o rezultatas išsaugomas kintamajame „ch_result“. Tada išspausdiname abu kintamuosius ir šios „XOR“ operacijos rezultatą.

5 kodas:

#include

naudojant vardų sritį std ;

tarpt pagrindinis ( ) {

char ch_a = 'a' ;

char ch_b = '8' ;

char ch_rezultatas = ch_a ^ ch_b ;

cout << 'Pirmasis simbolis yra: ' << ch_a << endl ;

cout << 'Antrasis simbolis yra: ' << ch_b << endl ;

cout << 'Rezultatas yra:' << ch_rezultatas << endl ;

}

Išvestis:

Įvesties simboliai yra „a“ ir „8“, o „XOR“ rezultatas rodomas kaip „Y“, kurį gauname pritaikę „XOR“ operaciją, kuri „a“ ir „8“ paverčia dvejetainiais ir tada atlieka „ XOR“ operacija.

Išvada

„XOR“ operacija yra išsamiai išnagrinėta čia ir paaiškinome, kad tai yra „bitinė“ operacija, nes ji naudoja dvejetaines reikšmes. Aptarėme, kad visos reikšmės, kurias įvedėme norėdami taikyti „XOR“ operaciją, konvertuojamos į dvejetaines reikšmes, o tada atliekama „XOR“ operacija. Mes parodėme keletą pavyzdžių ir parodėme, kaip „XOR“ operacija veikia programuojant C++.