Altifigence Academy

5 / 63 · Concepto

XOR y XNOR: igualdad, diferencia y paridad

Distinga la XOR de dos entradas de la paridad de varias entradas y explique los límites de detección de errores.

Una puerta que pregunta si dos bits difieren

XOR vale 1 cuando las entradas son distintas; XNOR vale 1 cuando son iguales.

a⊕b=a‾b+ab‾,a⊕b‾=ab+a‾ b‾a\oplus b=\overline a b+a\overline b,\qquad \overline{a\oplus b}=ab+\overline a\,\overline b

OR y XOR coinciden para 00, 01 y 10, pero difieren para 11. XOR añade una curva delante del símbolo OR. XNOR añade también un círculo de inversiónNegación Operación NOT que cambia 0 por 1 y 1 por 0. Una barra sobre una expresión aplica NOT a toda la expresión cubierta. Más información en la salida.

Compare OR y XOR con 11
XOR · Tabla de verdad
aby
000
011
101
110

Con tres entradas o más no significa «exactamente una»

XOR es asociativa: a⊕b⊕ca\oplus b\oplus c puede calcularse por etapas. Produce 1 cuando hay un número impar de unos. También vale 1 para 111; extender la descripción «exactamente una entrada vale 1» sería incorrecto.

La salida sum de un sumador completo es esta paridadParidad Valor que indica si el número de bits a 1 es par o impar. La comprobación de paridad detecta un número impar de errores de bit, pero puede omitir un número par. de tres entradas; cout indica si hay al menos dos unos. Forme 111: sum=1 y cout=1, y la suma entera es 1+2×1=31+2\times1=3.

Tres entradas: paridad impar y mayoría son funciones distintas

a + b + cin = sum + 2 × cout

La paridad detecta determinados tipos de error

Para los datos d3d2d1d0=1011d_3d_2d_1d_0=1011, el bit de paridad par es p=d3⊕d2⊕d1⊕d0=1p=d_3\oplus d_2\oplus d_1\oplus d_0=1. La XOR de datos y p vale 0. Si se invierte un número impar de bits durante la transmisión, la XOR total pasa a 1 y se detecta el error. Un número par de inversiones puede pasar inadvertido; un único bit de paridad tampoco permite localizar el error.

Compare secuencias completas de bits

Para comprobar si los vectores A y B son iguales, combine con OR las XOR de cada pareja de bits:

equal=⋁i(Ai⊕Bi)‾equal=\overline{\bigvee_i(A_i\oplus B_i)}

Si al menos un bit difiere, la OR vale 1. Al negar todo el resultado, se obtiene 1 solo cuando coinciden todos. Una reducción XOR de todas las diferencias puede cancelar dos discrepancias y producir una igualdad falsa.

Inténtalo tú

Para A=1010 y B=1001, calcule el vector XOR y la igualdad. ¿Qué falla si se reduce el vector XOR mediante otra XOR para determinar «igualdad»?

Leer la explicación

El vector XOR es 0011 y la igualdad vale 0. Reducir por XOR cancela las dos diferencias y produce 0; invertirlo da una igualdad incorrecta de 1. Las diferencias deben reducirse mediante OR.

Tu elección se aplica a este navegador. Puedes cambiarla en el pie de página.