Ou exclusivo: diferenças entre revisões
Linha 140: | Linha 140: | ||
* dizer quando dois [[bits]] são diferentes. |
* dizer quando dois [[bits]] são diferentes. |
||
* ele é um [[negação|circuito negador]]. ex: 1 0 0 1 xor 1 1 1 1 equivale a 0 1 1 0 |
* ele é um [[negação|circuito negador]]. ex: 1 0 0 1 xor 1 1 1 1 equivale a 0 1 1 0 |
||
* dizer se |
* dizer se existe um número ímpar de bits 1s (a <math>\oplus</math> B <math>\oplus</math> C <math>\oplus</math> D <math>\oplus</math> E é verdadeiro se um número ímpar de variáveis são verdadeiras.). |
||
Em circuitos lógicos, um somador pode ser implementado usando uma porta XOR para somar os números, e uma série de AND's, OR's e Not's para os carry's ("vai um") de saída. |
Em circuitos lógicos, um somador pode ser implementado usando uma porta XOR para somar os números, e uma série de AND's, OR's e Not's para os carry's ("vai um") de saída. |
Revisão das 01h53min de 2 de julho de 2007
Ou exclusivo chamada também disjunção exclusiva, conhecido geralmente por XOR ou por EOR, é uma operação lógica em dois operandos que resulta em um valor lógico verdadeiro se e somente se exatamente um dos operandos tem um valor verdadeiro.
Definição
A disjunção exclusiva (escrito como , , ou ainda ≠) é uma operação sobre dois valores lógicos, tipicamente os valores de duas proposições, que produz um valor verdadeiro apenas nos casos onde exatamente um de seus operandos é verdadeiro.
Tabela-verdade da função XOR | ||
Entradas | Saída | |
---|---|---|
A | B | S |
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
Símbolo | ||
Outras portas | ||
AND - OR - NOT - NOR - NAND - XOR - XNOR |
p | q | |
---|---|---|
F | F | F |
F | V | V |
V | F | V |
V | V | F |
Equivalências, eliminação, e introdução
As seguintes equivalencias podem ser deduzidas, escritas com operadores lógicos, na notação matemática:
o Valor do XOR é verdadeiro quando o números de 1's é ímpar.
A disjunção exclusiva pode ser expressa em termos da conjunção , da disjunção , e da negação , como segue:
A disjunção exclusiva também pode ser expressa da seguinte maneira:
Esta representação do XOR pode ser útil para a construção de um circuito ou uma rede, porque ela possui um único operador de negação e um pequeno número de operadores OR e AND. Como é mostrado abaixo:
As vezes também é util escrever p XOR q da seguinte maneira:
Esta equivalência pode ser estabelecida aplicando a Lei de De Morgan duas vezes na quarta linha da prova acima.
O XOR também equivale a negação do bicondicional lógico.
'Ou Exclusivo' na linguagem natural
Um ponto interessante no que se refere à linguagem natural é o uso do "OU" naturalmente ser exclusivo. Observando a declaração a seguir:"Meu filho, você quer o sorvete de Cajá ou de morango?" Subentende-se que para o "filho" em questão, só existem duas opções: ou o "sorvete de Cajá" ou o "sorvete de Morango". Percebe-se nesse simples exemplo que a natureza do OU, na linguagem comum é naturalmente exclusiva.
Propriedades
Esta seção usa os seguintes símbolos:
As seguintes equações seguem dos axiomas lógicos:
Associatividade e Comutatividade
A "Ou Exclusivo" (XOR) goza das propriedades da associatividade e comutatividade. Vide o exemplo:
Ou exclusivo na ciência da computação
Operação Bitwise
Bitwise XOR é simplesmente uma operação XOR "bit a bit" sobre dois valores binários que indica exatamente "1", se os bits possuírem valores lógicos iguais, e "0", se possuírem o mesmo valor lógico.
Na ciência da computação, a disjunção exclusiva tem vários usos, tais quais:
- dizer quando dois bits são diferentes.
- ele é um circuito negador. ex: 1 0 0 1 xor 1 1 1 1 equivale a 0 1 1 0
- dizer se existe um número ímpar de bits 1s (a B C D E é verdadeiro se um número ímpar de variáveis são verdadeiras.).
Em circuitos lógicos, um somador pode ser implementado usando uma porta XOR para somar os números, e uma série de AND's, OR's e Not's para os carry's ("vai um") de saída.
Em algumas arquiteturas de computadores, é mais eficiente armazenar um zero em um registrador realizando a operação XOR com ele mesmo, ao invés de carregar e armaenar o valor zero.
O XOR também é usado para misturar funções na criptografia, como por exemplo, One-time_pad.
O XOR também tem sua utilidade na segurança da informação armazenada em discos rígidos, a técnica RAID 3-6 usa o conceito lógico do operador XOR para em caso de falha em um dos discos, os dados sejam reconstituídos aplicando XOR ao dado armazenado no disco de backup.
O algoritmo XOR swap, usa a lógica do conectivo XOR afim de tracar os valores numéricos de 2 variáveis.
Descrição do hardware
As portas XOR são portas lógicas básicas que são reconhecidas na TTL e nos circuitos integrados CMOS.
Existem Circuito Integrado que utilizam a lógica do XOR, sendo que esta mesma lógica pode ser expressa através dos circuitos NAND, NOR e NOT.
Abaixo temos um exemplo de um Circuito Integrado XOR, de duas entradas.
1 Entrada A1 2 Entrada B1 3 Saída Q1 4 Saída Q2 5 Entrada B2 6 Entrada A2 7 VSS 8 Entrada A3 9 Entrada B3 10 Saída Q3 11 Saída Q4 12 Entrada B4 13 Entrada A4 14 VDD |