C ++ xor

C ++ xor
Xor es un tipo de operador bit a bits. Los operadores bit a bit son los operadores de comparación que comparan los bytes de los valores de operando en la notación binaria. El operador XOR es el que contiene los dos operandos. Esta operación se aplica al valor entero. Hay casi seis operadores bit a C en C++.

Y operador (&), o operador (|), operador XOR (^), operador del complemento (~), operador de cambio izquierdo (<>).

Sintaxis de Xor

# Variable1 ^ variable2

La variable 1 es el primer operando en el que se realizará la operación. Y la variable 2 es el segundo operando. '^' es el símbolo del operador XOR. Este símbolo se usa entre las dos variables en las que se aplicará la operación XOR.

C ++ xor funcionando

El operador XOR es el tipo de operador bit a bit que tiene dos operandos y en cada bit de estos dos operandos, se realiza el funcionamiento de XOR.

Si de alguna manera los dos bits de dichos dos operandos son cero, el valor resultante devuelto por el XOR es cero.

El resultado también es 0 si ambos valores de los números en operandos son 0.

Del mismo modo, el resultado de XOR es uno si y solo si los dos bits de dos operandos son 1.

Mientras que el valor devuelto es solo 1 cuando ambos bits de dos operandos son diferentes. Si el primer operando es 1 y el segundo es cero o viceversa.

El valor de dos valores de operando se convierte en el valor binario en forma de (0-1) bit. Después de eso, aplicamos la operación XOR en ambos valores binarios. Esta notación binaria ahora se convierte en forma decimal. Este es el valor entero similar a los valores de los operandos.

La tabla de verdad para el operador XOR

Operando Operando B A ^ b
0 0 0
0 1 1
1 0 1
1 1 0

Implementación de C ++ XOR

Ejemplo 1

Un ejemplo simple para explicar el funcionamiento de Xor en C ++ se explica aquí. Necesitamos tener dos variables que contengan dos valores en los que aplicaremos la función XOR. Primero, la biblioteca se usa en el archivo de encabezado para habilitar el uso de transmisiones CIN y Cout en el programa que se sabe que es el iOStream.

#incluir

Ahora en el programa principal, las dos variables se inicializarán con los valores. Primero, estos dos valores se convertirán en la notación binaria de estos números.

Luego, en cada binario, se aplicará la operación XOR. Como sabemos que se devuelve 1 si alguien es 1, de lo contrario 0 se devuelve 0. Siguiendo estas reglas, se obtendrá el resultado de este valor. Y luego la respuesta binaria se convertirá en notación decimal.

El valor binario de 12 es 00001100

El valor binario de 25 es 00011001

Aplicar la operación XOR en ambos valores.

00001100
^ 00011001
_________
00010101

Este es el valor binario de 21 en la notación decimal.

Guarde el archivo con la extensión de C y luego, ejecútelo. Para ejecutar un programa C ++, necesitamos tener un compilador de un lenguaje de programación C ++. Entonces, para este propósito, se usa un compilador G ++. Este compilador usa un archivo de entrada y muestra los resultados. '-o' se usa para guardar el resultado en el archivo de salida.

$ g ++ -o xor xor.C
ps ./Xor

Ejemplo 2

En este ejemplo, encontraremos un valor desigual o diferente entre la lista de números que no coinciden con los otros elementos en la lista. También es una aplicación de XOR que encuentra el número diferente de los demás. Se proporcionan un par de números y se identifica un número impar.

Después de usar la biblioteca iostream, hemos creado una función separada fuera del cuerpo principal. Esta función devolverá el elemento impar en la matriz. Esta función contendrá la matriz y la variable entera como parámetro porque la variable contendrá el tamaño de la matriz inicializada en el programa principal. Aquí también se introduce una variable que almacenará el número impar calculado por XOR. Como sabemos que para acceder a cada índice de la matriz, necesitamos usar un bucle que itera e incrementos en cada paso.

El bucle iterará hasta el tamaño de una matriz, y en cada iteración, la variable calculará el número impar y lo almacenará.

Res ^= arr [i];
El valor se devolverá al programa principal. En el programa principal, se inicializa una matriz con algunos números. Se obtiene el tamaño de la matriz y luego se realiza una llamada de función en la instrucción Cout para mostrar el número impar entre los mismos números.

Findodd (arr, n)
Guardar el código anterior y compilarlo en la terminal. Verá que el número 90 es el que es poco común en toda la matriz.

Ejemplo 3

Este ejemplo se trata del uso combinado de algunos operadores bitwise. Entonces, después de usar la biblioteca, nos dirigiremos hacia el programa principal. Al igual que Xor, y el Operador OR funciona en dos valores mínimo. En primer lugar, inicializaremos dos variables con los números. En cada operación bit a bit, cada número se convertirá primero en el valor binario para aplicar los operadores, y luego los resultados se convertirán en números decimales, como lo hicimos en el ejemplo anterior. Ahora, solicitaremos y operaremos. Según este operador, ambos operandos deben tener 1 valor para que el y el operador se vuelvan verdaderos y devuelva 1, en el caso de cualquier 0, devolverá falso.

A y B;
Se obtendrá un valor resultante binario y luego se seguirá la conversión decimal. El siguiente es el operador OR. Para esta operación bit a bit, solo un solo operando debe ser 1, para que pueda devolver 1, y si ambos operandos son 1, entonces nuevamente se devolverá 1.

A | b;
Nuevamente, convierta el binario en el valor decimal. Y el último operador es el operador XOR, para el cual sabemos que devuelve 1 si y solo si alguno de sus operandos es 1. De lo contrario, es 0.

A ^ b;
Ahora, guarde y ejecute el archivo. Verá que cada operador ha trabajado de manera efectiva para calcular los valores resultantes.

Datos importantes sobre los operadores bit a bit

Los operadores bit a bit no deben usarse en el lugar de los operadores lógicos. Porque el resultado del operador lógico es 1 o 0. (Los operadores lógicos son y, o no). El valor que se obtiene es un entero. Esto se debe a que el valor decimal se convierte en valor binario y luego, nuevamente, el binario se convierte en un valor decimal que es un valor entero.

Conclusión

Ahora, resumiremos el tema 'C ++ Xor'. Hemos explicado los operadores de XOR bit a bit al definir todos los tipos. El funcionamiento de XOR también se explica en el lenguaje de programación C ++. Su trabajo incluye la participación de la tabla de verdad que también se menciona anteriormente. Algunos ejemplos se incluyen aquí para demostrar el conocimiento del operador Xor bitwise.