5 / 63 · Conceito
XOR e XNOR: igualdade, diferença e paridade
Distinga a XOR de duas entradas da paridade de várias entradas e explique os limites da detecção de erros.
As aulas podem ser lidas gratuitamente. Inscreva-se para salvar o progresso.
Uma porta que pergunta se dois bits diferem
XOR vale 1 quando as entradas são diferentes; XNOR vale 1 quando são iguais.
OR e XOR coincidem para 00, 01 e 10, mas diferem para 11. XOR acrescenta uma curva à frente do símbolo OR. XNOR também acrescenta um círculo de inversãoNegação Operação NOT que troca 0 por 1 e 1 por 0. Uma barra sobre uma expressão aplica NOT a toda a expressão coberta. Saiba mais na saída.
| a | b | y |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
Com três entradas ou mais, não significa «exatamente uma»
XOR é associativa: pode ser calculado em etapas. Produz 1 quando há uma quantidade ímpar de bits em 1. Também vale 1 para 111; estender a descrição «exatamente uma entrada vale 1» seria incorreto.
A saída sum de um somador completo é essa paridadeParidade Valor que indica se a quantidade de bits em 1 é par ou ímpar. A verificação de paridade detecta uma quantidade ímpar de erros de bit, mas pode deixar passar uma quantidade par. de três entradas; cout indica se há pelo menos dois bits em 1. Monte 111: sum=1 e cout=1, e a soma inteira é .
a + b + cin = sum + 2 × cout
A paridade detecta determinados tipos de erro
Para os dados , o bit de paridade par é . A XOR dos dados e de p vale 0. Se uma quantidade ímpar de bits for invertida na transmissão, a XOR total passa a 1 e o erro é detectado. Uma quantidade par de inversões pode passar despercebida; um único bit de paridade também não permite localizar o erro.
Compare sequências completas de bits
Para verificar se os vetores A e B são iguais, combine por OR as XOR de cada par de bits:
Se pelo menos um bit diferir, a OR vale 1. Negando o resultado inteiro, obtém-se 1 somente quando todos coincidem. Uma redução XOR de todas as diferenças pode cancelar duas discrepâncias e produzir uma igualdade falsa.
Experimente
Para A=1010 e B=1001, calcule o vetor XOR e a igualdade. O que falha se o vetor XOR for reduzido por outra XOR para determinar «igualdade»?
Ler a explicação
O vetor XOR é 0011 e a igualdade vale 0. Reduzir por XOR cancela as duas diferenças e produz 0; invertê-lo dá uma igualdade incorreta de 1. As diferenças devem ser reduzidas por OR.