C ++ XOR

C ++ XOR
XOR er en type bitvis operatør. De bitvise operatørene er sammenligningsoperatørene som sammenligner byte av operandverdiene i den binære notasjonen. XOR -operatøren er den som inneholder de to operandene. Denne operasjonen brukes på heltallverdien. Det er nesten seks bitvise operatører i C++.

Og operatør (&), eller operatør (|), xor operatør (^), komplementoperatør (~), skift venstre operatør (<>).

Syntaks av XOR

# Variabel1 ^ variabel2

Variabel 1 er den første operanden som operasjonen skal utføres. Og variabel 2 er den andre operanden. '^' er symbolet på XOR -operatøren. Dette symbolet brukes mellom de to variablene som XOR -operasjonen skal brukes på.

C ++ XOR Working

XOR -operatøren er den typen bitvis operatør som har to operander, og på hver bit av disse to operandene utføres driften av XOR.

Hvis de to bitene på slike to operander begge er null, er den resulterende verdien som er returnert av XOR null.

Resultatet er også 0 hvis begge verdiene på tallene i operander er 0.

Tilsvarende er resultatet av XOR en hvis og bare hvis de to bitene av to operander er 1.

Mens den returnerte verdien bare er 1 når begge bitene til to operander er forskjellige. Om den første operanden er 1 og den andre er null eller omvendt.

Verdien av to operandverdier konverteres til den binære verdien i form av (0-1) bit. Etter det bruker vi XOR -operasjonen på begge binære verdier. Denne binære notasjonen blir nå konvertert til desimalform. Dette er heltallverdien som ligner på disse verdiene til operandene.

Sannhetsbordet for XOR -operatøren

Operand a Operand b A ^ b
0 0 0
0 1 1
1 0 1
1 1 0

Implementering av C ++ XOR

Eksempel 1

Et enkelt eksempel for å forklare arbeidet med XOR i C ++ er forklart her. Vi må ha to variabler som vil inneholde to verdier som vi vil bruke XOR -funksjonen. Først brukes biblioteket i overskriftsfilen for å mulig.

#inkludere

Nå i hovedprogrammet vil de to variablene bli initialisert med verdiene. For det første vil disse to verdiene bli konvertert til den binære notasjonen av disse tallene.

Så på hver binær vil XOR -operasjonen bli brukt. Som vi vet at 1 returneres hvis noen operand er 1, ellers blir 0 returnert. Ved å følge disse reglene vil resultatet av denne verdien oppnås. Og så blir det binære svaret konvertert til desimal notasjon.

Den binære verdien på 12 er 00001100

Den binære verdien på 25 er 00011001

Bruk XOR -drift på begge verdiene.

00001100
^ 00011001
_________
00010101

Dette er den binære verdien av 21 i desimalnotasjonen.

Lagre filen med utvidelsen av C og deretter utføre den. For å utføre et C ++ -program, må vi ha en kompilator av et C ++ programmeringsspråk. Så for dette formålet brukes en G ++ -kompilator. Denne kompilatoren bruker en inndatafil og viser resultatene. '-o' brukes til å lagre resulteringen i utdatafilen.

$ g ++ -o xor xor.c
$ ./xor

Eksempel 2

I dette eksemplet vil vi finne en ujevn eller en annen verdi blant listen over tall som ikke stemmer overens med de andre elementene på listen. Det er også en applikasjon av XOR at den finner nummeret som er forskjellig fra andre. Et par tall er gitt og et merkelig oppstått antall er identifisert.

Etter å ha brukt iostream -biblioteket, har vi laget en egen funksjon utenfor hoveddelen. Denne funksjonen vil returnere det rare elementet i matrisen. Denne funksjonen vil inneholde matrisen og heltallvariabelen som en parameter fordi variabelen vil inneholde størrelsen på matrisen som er initialisert i hovedprogrammet. En variabel introduseres også her som vil lagre det oddetallet beregnet av XOR. Som vi vet at for å få tilgang til hver indeks av matrisen, må vi bruke en sløyfe som itererer og trinn i hvert trinn.

Løyfen vil iterere til størrelsen på en matrise, og i hver iterasjon vil variabelen beregne det oddetallet og lagre den.

Res ^= arr [i];
Verdien vil bli returnert til hovedprogrammet. I hovedprogrammet initialiseres en matrise med noen tall. Størrelsen på matrisen oppnås, og deretter blir det foretatt en funksjonsanrop i cout -setningen for å vise det oddetallet blant alle de samme tallene.

Findodd (arr, n)
Lagre koden ovenfor og kompiler den i terminalen. Du vil se at tallet 90 er det som er uvanlig i hele matrisen.

Eksempel 3

Dette eksemplet handler om kombinert bruk av noen bitvis operatører. Så etter å ha brukt biblioteket, vil vi ta turen mot hovedprogrammet. Akkurat som XOR, og, og OR -operatøren fungerer på to verdier minimum. For det første vil vi initialisere to variabler med tallene. I hver bitvis operasjon blir hvert tall først konvertert til den binære verdien for å anvende operatørene, og deretter blir resultatene konvertert til desimaltall, som vi gjorde i forrige eksempel. Nå vil vi søke og operatør. I følge denne operatøren må begge operandene ha 1 verdi slik at og operatøren blir sann og returnerer 1, i tilfelle av noen 0, vil den returnere falsk.

A&B;
En binær resulterende verdi vil bli oppnådd, og deretter vil desimalkonverteringen bli fulgt. Den neste er OR -operatøren. For denne bitvis operasjonen er det bare en enkelt operand som må være 1, slik at den kan returnere 1, og hvis begge operandene er 1, vil igjen 1 bli returnert.

A | b;
Igjen, konverter binæren til desimalverdien. Og den siste operatøren er XOR -operatøren, som vi vet at den returnerer 1 hvis og bare om noen av operandene er 1. Ellers er det 0.

A ^ b;
Lagre og utfør filen nå. Du vil se at hver operatør har jobbet effektivt for å beregne de resulterende verdiene.

Viktige fakta om bitvis operatører

De bitvise operatørene må ikke brukes i stedet for de logiske operatørene. Fordi resultatet av den logiske operatøren er 1 eller 0. (logiske operatører er og, eller ikke). Verdien som oppnås er et heltall. Dette er fordi desimalverdien blir konvertert til binær verdi og deretter igjen, blir binæren konvertert til en desimalverdi som er en heltallverdi.

Konklusjon

Nå vil vi oppsummere emnet 'C ++ XOR'. Vi har forklart Bitwise XOR -operatørene ved å definere alle typer. Arbeidet med XOR blir også forklart på programmeringsspråket C ++. Arbeidet inkluderer sannhetstabellen involvering som også er nevnt ovenfor. Noen eksempler er inkludert her for å demonstrere kunnskapen om XOR Bitwise -operatøren.