logo

Operatore XOR bit a bit C++

  • L'operatore XOR bit a bit è noto anche come Esclusivo o
  • È indicato utilizzando il '^'
  • Come indica il nome, funziona su livello di bit degli operandi.
  • L'operatore XOR bit a bit rientra nella categoria degli operatori bit a bit.
  • Nell'operatore OR esclusivo bit per bit (XOR), sono richiesti due operandi e questi due operandi sono separati dal simbolo XOR, ovvero '^'.
  • Per determinare l'output o il risultato che risulta dopo aver applicato l'operatore XOR su due operandi, dobbiamo seguire la tabella della verità logica dell'operatore XOR.
  • XOR Truth Table è la tabella matematica costruita utilizzando la logica corretta dell'operatore XOR.
  • La logica utilizzata dietro l'operatore XOR è; ogni volta che l'operazione XOR viene applicata sui due diverso bit di due operandi, il risultato sarà sempre prodotto '1', e se ai due viene applicata l'operazione XOR Stesso bit di due operandi, il risultato produce un output '0'.

Tabella di verità dell'operatore OR esclusivo (XOR).

Lasciamo che ci siano due operandi; il primo è A e il secondo è B, le combinazioni totali di input formate da questi due operandi saranno 4. Utilizzando la seguente tabella di verità XOR, determineremo l'output corrispondente. Il risultato verrà catturato in C, qui C = A^B.

In questa tabella della verità, prendiamo l'input sotto forma di bit, ovvero 0 e 1, e anche l'output verrà generato sotto forma di bit, ovvero 0 e 1.

Operatore XOR bit a bit C++

Qui, nella tabella XOR Truth sopra, osserviamo che quando i valori degli operandi A e B sono diversi, cioè ( 0, 1 ), ( 1, 0 ), il risultato che esce sarà sempre 1. E quando il i valori degli operandi A e B sono gli stessi, cioè ( 0, 0 ), ( 1, 1 ), il risultato che ne uscirà sarà sempre 0.

Allo stesso modo, in questo modo, possiamo tracciare la tavola della verità per Booleano valori -

Lasciamo che ci siano due operandi; il primo lo è UN e il secondo lo è B . Le combinazioni totali di input formate da questi due operandi saranno 4. Utilizzando la seguente tabella di verità XOR, determineremo l'output corrispondente. Il risultato verrà catturato in C, qui C = A ^ B.

In questa tabella di verità, prendiamo input sotto forma di valori di verità, ovvero Vero ( T ) e Falso ( F ). L'output verrà generato anche sotto forma di valori veri, ovvero T e F.

Operatore XOR bit a bit C++

Qui, nella tabella XOR Truth sopra, osserviamo che, quando i valori degli operandi A e B sono diversi, cioè ( F, T ), ( T, F ), il risultato sarà sempre T. E quando il i valori degli operandi A e B sono gli stessi, ovvero ( F, F ), ( T, T ), il risultato sarà sempre F.

Dalle tabelle sopra lo osserviamo T (Vero) è indicato con uno e F (Falso) è indicato con 0.

Passaggi per risolvere qualsiasi problema -

  1. Gli operandi forniti nel problema saranno sempre nel valore decimale.
  2. Innanzitutto, dobbiamo convertire i valori degli operandi in binario
  3. Dopo aver convertito i valori degli operandi in numeri binari, sovrapponi entrambi gli operandi.
  4. Ricorda che prima di applicare su di essi l'operazione OR esclusivo (XOR), controlla gentilmente il file numero di cifre in loro.
  5. Se il conteggio delle cifre non corrisponde, gli 0 aggiuntivi all'estremità sinistra dell'operando piccolo bilanciano il conteggio delle cifre.
  6. Infine, con l'aiuto della tabella di verità sopra, applicare l'operazione XOR sugli operandi uno per uno, prendendo un bit alla volta per applicare l'operazione XOR.
  7. Alla fine, il risultato viene prodotto sotto forma di output.
  8. L'output prodotto sarà in forma binaria, ora converti la forma binaria in forma decimale e annota il valore del risultato.

Esecuzione dell'operazione OR esclusivo bit per bit (XOR) in C++

Cerchiamo di comprendere più in dettaglio l'esecuzione dell'operazione XOR in C++ con l'aiuto di esempi:

Esempio 1: trovare l'OR esclusivo di valori interi; 10 e 14. Inoltre, spiegalo e scrivi il codice di esecuzione in C++.

Soluzione: Consideriamo due variabili,' a ' e ' b ', per memorizzare i due operandi corrispondenti indicati nella domanda precedente, ovvero 10 e 14.

Qui a = 10 e b = 14.

ciclo for in bash

Seguiremo i passaggi seguenti per scoprire l'OR esclusivo dei due operandi indicati.

  1. Sappiamo che 10 e 14 sono in forma decimale e per applicare l'operazione XOR bit a bit è necessario convertirla in forma binaria.
  2. Forma binaria ' a ', cioè 10 is '1010' e Forma binaria di 'b', cioè 14 è '1110'.
  3. Qui osserviamo che il conteggio delle cifre binarie presenti in a è quattro e anche il conteggio delle cifre binarie presenti in b è 4; quindi il numero di cifre binarie presenti in entrambe le variabili è lo stesso e già bilanciato, non è necessario aggiungere più numeri di 0 per bilanciarlo.
  4. Ora, mettiamo le cifre binarie presenti in 'b' nelle cifre binarie presenti in 'a'.
  5. Infine, applicando l'operazione XOR uno per uno sui bit corrispondenti corrisponde e annota l'output.
  6. L'output generato alla fine sarà in forma binaria, come la domanda precedente fornita in forma decimale, quindi dobbiamo convertire il risultato in forma decimale.

Spiegazione:

a = 10 (in forma decimale)

b = 14 (in forma decimale)

Ora, per uno XOR b, dobbiamo convertire a e b in forma binaria:

a = 1010 (in forma binaria)

b = 1110 (in forma binaria)

Ora, applicando l'operazione XOR su aeb -

a = 1010

b = 1110

---------------

a^b = 0100 (In forma binaria)

Il risultato di a ^ b è 0100, che è in forma binaria.

Ora convertiamo il risultato in forma decimale, che è 4.

10^14 = 4

NOTA: utilizzando la tabella di verità XOR sopra, viene generato l'output dei bit corrispondenti.

Applicheremo ora l'operazione XOR bit a bit su 10 e 14 in linguaggio C++ e otterremo il risultato, ovvero 4.

Codice C++ per l'esempio precedente:

 //************************ C++ Code ****************************** #include using namespace std; int main () { int a, b, c ; // Initializing integer variables to store data values cout <' << endl ; cout <> a ; // taking a as input from user cout &lt;&gt; b ; // taking b as input from user c = a ^ b ; // storing XOR result of a and b in c cout &lt;&lt; &apos;Applying XOR operation on a and b: &apos;&lt;&lt; endl ; cout &lt;&lt; &apos;a ^ b = &apos; &lt;&lt; c &lt;&lt; endl ; // Printing the output } </'>

Produzione

Operatore XOR bit a bit C++

Esempio 2: trovare l'OR esclusivo di valori interi; 3 e 15. Inoltre, spiegalo e scrivi il codice di esecuzione in C++.

Soluzione: Consideriamo due variabili,' a ' e ' b ', per memorizzare i due operandi corrispondenti indicati nella domanda precedente, ovvero 3 e 15.

Qui a = 3 e b = 15.

Seguiremo i passaggi seguenti per scoprire l'OR esclusivo dei due operandi indicati.

  1. Sappiamo che 3 e 15 sono in forma decimale e per applicare l'operazione XOR bit a bit è necessario convertirla in forma binaria.
  2. Forma binaria ' a ', cioè 3 is 'undici' e Forma binaria di 'b', cioè 15 è '1111'.
  3. Qui osserveremo che il conteggio delle cifre binarie presenti in a è due e il conteggio delle cifre binarie presenti in b è quattro; quindi il numero di cifre binarie presenti in entrambe le variabili non è lo stesso. Pertanto, in modo sbilanciato, dobbiamo aggiungere più numeri di 0 sul lato sinistro del numero binario inferiore, ovvero a, che è ' undici' , per bilanciarlo.
  4. Dopo il bilanciamento, il valore di a è '0011' , e b è '1111'.
  5. Ora, trasformiamo le cifre binarie presenti in 'b' nelle cifre binarie presenti in 'a'.
  6. Infine, applicando l'operazione XOR uno per uno sui bit corrispondenti corrisponde e annota l'output.
  7. L'output generato alla fine sarà in forma binaria, come la domanda precedente fornita in forma decimale, quindi dobbiamo convertire il risultato in forma decimale.

Spiegazione:

a = 3 (in forma decimale)

b = 15 (in forma decimale)

Ora, per uno XOR b, dobbiamo convertire a e b in forma binaria:

a = 0011 (in forma binaria)

b = 1111 (in forma binaria)

Ora, applicando l'operazione XOR su aeb -

a = 0011

b = 1111

---------------

a^b = 1100 (In forma binaria)

Il risultato di a ^ b è 1100, che è in forma binaria.

Ora convertiamo il risultato in forma decimale, che è 12.

3^15 = 12

NOTA: utilizzando la tabella di verità XOR sopra, viene generato l'output dei bit corrispondenti.

Applicheremo ora l'operazione XOR bit a bit su 3 e 15 in linguaggio C++ e otterremo il risultato, ovvero 12.

Codice C++ per l'esempio precedente:

 //************************ C++ Code ****************************** #include using namespace std; int main () { int a, b, c ; // Initializing integer variables to store data values cout <' << endl ; cout <> a ; // taking a as input from user cout &lt;&gt; b ; // taking b as input from user c = a ^ b ; // storing XOR result of a and b in c cout &lt;&lt; &apos;Applying XOR operation on a and b: &apos;&lt;&lt; endl ; cout &lt;&lt; &apos;a ^ b = &apos; &lt;&lt; c &lt;&lt; endl ; // Printing the output } </'>

Produzione

Operatore XOR bit a bit C++