É um elemento básico dos circuitos lógicos, um dispositivo simples que implementa uma função booleana, pega um número de valores de entrada binários, 1 ou 0, e os transforma em um valor binário de saída. As portas lógicas são uma espécie de caixas pequenas que comem 1s e 0s e cospem outros 1s e 0s. Estritamente falando, uma porta lógica deve implementar uma função matemática, então flip-flops não se enquadram em portas lógicas porque têm um estado ou memória interna.
Portas lógicas são para os circuitos lógicos o que resistores, transistores são para circuitos eletrônicos. Elas implementam funções básicas que no reino da lógica booleana são equivalentes de adição, multiplicação. O comportamento das portas lógicas é, assim como nos circuitos lógicos, comumente expresso com as chamadas tabelas verdade, tabelas que mostram a saída da porta para qualquer combinação possível de entradas. Mas também pode ser escrito como algum tipo de equação. Existem 2 portas lógicas possíveis com uma entrada e uma saída:
Existem 16 portas lógicas possíveis com duas entradas e uma saída, a tabela lógica de 4 linhas pode ter 2^4 valores de saída possíveis, mas apenas algumas delas são comumente usadas e têm seus próprios nomes:
Símbolos usados para portas lógicas:
___ ___ _____ _____ ---\ ''-. ---\ ''-. ---| '. ---| '. ) )--- ) )O-- | )--- | )O-- ---/__..-' ---/__..-' ---|_____.' ---|_____.' OR NOR AND NAND ___ ___ . . --\\ ''-. --\\ ''-. |'. |'. )) )--- )) )O-- ---| >--- ---| >O-- --//__..-' --//__..-' |.' |.' XOR XNOR ' BUFFER ' NOT ____ ____ ____ ____ ---|=> 1| ---| & | ---|= 1 | | 1 | | |--- | |--- | |--- ---| |o-- ---|____| ---|____| ---|____| |____| OR AND XOR NOT ___ ___ ___ ___ --|OR |-- --|AND|-- --|XOR|-- --|NOT|-- --|___| --|___| --|___| |___|
Funções NAND e NOR são chamadas funcionalmente completas, o que significa que podemos implementar qualquer outra porta com apenas uma dessas portas: NOT(x) = NAND(x,x), AND(x,y) = NAND(NAND(x,y),NAND(x,y)), OR(x,y) = NAND(NAND(x,x),NAND(y,y)). Da mesma forma, NOT(x) = NOR(x,x), OR(x,y) = NOR(NOR(x,y),NOR(x,y)).
Impulsionado por nada. Todo conteúdo é disponível sob CC0 1.0 domínio público. Envie comentários e correções para Mr. Unix em victor_hermian@disroot.org.