Descrição
Conceitos e princípios básicos de Eletrônica Digital: sistemas de numeração, álgebra Booleana, portas lógicas e simplificação de circuitos.
PROPÓSITO
Compreender a representação dos números em diferentes bases, sobretudo na base binária e hexadecimal. Identificar as portas lógicas e a sua utilização para obtenção de circuitos complexos. Representar circuitos lógicos por funções booleanas e simplificá-las empregando o mapa de Karnaugh.
OBJETIVOS
Módulo 1
Calcular a representação de números em diferentes bases e as operações com base binária e hexadecimal
Módulo 2
Identificar as portas lógicas e a notação de funções booleanas
Módulo 3
Aplicar a álgebra de Boole para a simplificação de funções booleanas
Módulo 4
Aplicar o mapa de Karnaugh para a simplificação de funções booleanas
Introdução
Os primeiros dispositivos eletrônicos eram integralmente analógicos, mas com o passar dos anos surgiram os digitais. Atualmente, a Eletrônica Digital está presente em praticamente todos os dispositivos que utilizamos: celulares, carros, TVs, computadores, aviões etc. Entre as vantagens dos circuitos digitais em relação aos eletrônicos que explicam essa substituição, destacam-se:
- Confiabilidade, possibilidade de utilização de protocolos de verificação de erros.
- Capacidade de armazenamento. Por exemplo, CDs, DVDs e Blu-rays, armazenam muito mais informação do que discos de vinil ou fitas cassete.
- Maior resistência a ruídos. Este fenômeno pode ser observado comparando a transmissão de sinal de TV digital e o analógico.
- Possibilidade de fazer dispositivos que podem ser programados para diversas tarefas. Por exemplo, seu computador pode desempenhar diversas funções apenas alterando os programas instalados, sem modificações no hardware (parte física do dispositivo).
MÓDULO 1
Calcular a representação de números em diferentes bases e as operações com base binária e hexadecimal
Bases Numéricas
O sistema numérico, que utilizamos rotineiramente, utiliza 10 símbolos (também chamados de algarismos) para representar os números: 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9. Combinando esses símbolos, podemos representar qualquer valor.
Você sabia
A utilização da base 10, ou decimal, é uma herança de nossos antepassados, que costumavam usar os dedos das mãos para contar objetos.
Não há nada de especial em relação ao número 10, podemos representar os números em diferentes bases. Por exemplo, na base 8 teremos os dígitos: 0, 1, 2, 3, .... e 7, assim a representação dos números de 0 a 12 na base 8 é:
| Base 10 | Base 8 |
|---|---|
| 0 | 08 |
| 1 | 18 |
| 2 | 28 |
| 3 | 38 |
| 4 | 48 |
| 5 | 58 |
| 6 | 68 |
| 7 | 78 |
| 8 | 108 |
| 9 | 118 |
| 10 | 128 |
| 11 | 138 |
| 12 | 148 |
Note que a identificação da base é realizada com o número da base subscrito à direita do número, por exemplo, 108.
Atenção
Perceba que essa notação não é utilizada para base 10, isso porque é convencionado que todo número esteja na base 10, a menos que seja explícito o contrário.
Também podemos utilizar bases de ordem superior a dez. Nesse caso, usamos as letras do alfabeto para representar os algarismos com valor superior a 9.
Atenção
Na base 16 (ou hexadecimal) são utilizados os algarismos: 0, 1, 2, 3, ..., 9, A, B, C, D, E e F.
A base 2, ou binária, e a base hexadecimal são muito utilizadas em eletrônica digital e, por isso, recebem uma identificação simplificada.
Dica
Os números binários são identificados utilizando a letra “b” em seu final e os hexadecimais a letra “h”.
Na tabela, a seguir, podemos ver como são representados os números de 0 a 20 em diferentes bases.
| Base 10 | Base 2 | Base 4 | Base 7 | Base 8 | Base 16 |
|---|---|---|---|---|---|
| 0 | 0b | 04 | 07 | 08 | 0h |
| 1 | 1b | 14 | 17 | 18 | 1h |
| 2 | 10b | 24 | 27 | 28 | 2h |
| 3 | 11b | 34 | 37 | 38 | 3h |
| 4 | 100b | 104 | 47 | 48 | 4h |
| 5 | 101b | 114 | 57 | 58 | 5h |
| 6 | 110b | 124 | 67 | 68 | 6h |
| 7 | 111b | 134 | 107 | 78 | 7h |
| 8 | 1000b | 204 | 117 | 108 | 8h |
| 9 | 1001b | 214 | 127 | 118 | 9h |
| 10 | 1010b | 224 | 137 | 128 | Ah |
| 11 | 1011b | 234 | 147 | 138 | Bh |
| 12 | 1100b | 304 | 157 | 148 | Ch |
| 13 | 1101b | 314 | 167 | 158 | Dh |
| 14 | 1110b | 324 | 207 | 168 | Eh |
| 15 | 1111b | 334 | 217 | 178 | Fh |
| 16 | 1 0000b | 1004 | 227 | 208 | 10h |
| 17 | 1 0001b | 1014 | 237 | 218 | 11h |
| 18 | 1 0010b | 1024 | 247 | 228 | 12h |
| 19 | 1 0011b | 1034 | 257 | 238 | 13h |
| 20 | 1 0100b | 1104 | 267 | 248 | 14h |
Repare que quando os números são representados na base 2, normalmente, haverá muitos algarismos, aumentando a probabilidade de cometermos erros ao transcrever ou operar com esses valores.
Dica
Para facilitar o manuseio, a leitura e a escrita costumamos separar os números binários em sequências de 4 dígitos, da direita para a esquerda. Assim ao invés de escrever 2020 = 11111100100b, escreve-se 2020 = 111 1110 0100b.
Conversão de qualquer base para a decimal
Note que a formação dos números decimais segue uma regra de acordo com a posição dos algarismos. Iniciando pelo algarismo menos significativo, cada digito é multiplicado por 10 elevado à sua posição, considerando a primeira posição valendo zero.
Exemplo
1528 = 8 x 100 + 2 x 101 + 5 x 102 + 1 x 103
Dizemos que o algarismo mais à esquerda é o mais significativo (MSB – Most Significant Bit), pois está na posição de maior valor. Igualmente, dizemos que o dígito mais à direita é o menos significativo (LSB – xLeast Significant Bit), pois ocupa a posição de menor valor. No caso do 1528 “1” é o algarismo mais significativo e “8” é o algarismo menos significativo.
A formação dos números na base decimal é apenas um caso particular. O caso geral, que vale para qualquer base, pode ser usado para converter os números de suas bases de origem para a decimal.
Para converter um número de qualquer base para a decimal, devemos calcular o somatório de cada algarismo multiplicado pelo valor da base elevado ao valor correspondente à posição do algarismo, iniciando pelo menos significativo, cuja posição corresponde ao expoente 0.
Apesar de a descrição parecer complicada, o processo é bem simples, veja nos exemplos abaixo:
1) Converta 1A4h para o sistema decimal:
1A4h = 4 x 160 + 10 x 161 + 1 x 162 = 4 + 160 + 256 = 420
2) Converta 1101b para o sistema decimal:
1101b = 1 x 20 + 0 x 21 + 1 x 22 + 1 x 23 = 1 + 0 + 4 + 8 = 13
Conversão da base decimal para qualquer base
Para converter um número da base 10 para qualquer base, utilizaremos o método das divisões sucessivas. Nesse método, dividimos o número sucessivamente pelo valor da base de destino. O processo é repetido até que o quociente seja menor que o valor da base, então, o número é formado pelo último quociente e os restos, sendo o último quociente o dígito mais significativo e os restos colocados na ordem inversa de que apareceram na divisão.
Pode parecer um processo complicado, mas no passo a passo, a seguir, veremos que é bem simples.
Passo 1
Converta 420 para a base hexadecimal:
Passo 2
Passo 3
Como o quociente do passo anterior é menor que o valor da base, paramos a divisão e formamos o número na base hexadecimal:
| Último quociente | Segundo resto | Primeiro resto |
|---|---|---|
| 1 | A | 4 |
Destacando que 10 na base decimal corresponde ao algarismo A da base hexadecimal.
Assim, 420 = 1A4h.
Para agilizar o processo manual, podemos compactar a notação, como realizado nos exemplos abaixo:
1) Converta 21582 para a base hexadecimal:

21852 = 544Eh
2) Converta 102 para a base binária:

102 = 110 0110b
A base binária
O sistema binário é extremamente importante para eletrônica digital, pois é o utilizado nas máquinas digitais até hoje.
Você sabia
Seu computador funciona assim, processando enormes quantidades de 0s e 1s!
Dessa forma, o dígito binário, também chamado de bit, é a menor quantidade de informação capaz de ser representada nos sistemas digitais. É comum na área de computação trabalhar com agrupamentos de bits, o conjunto de 4 bits é chamado de nibble e o de 8 bits é chamado de byte.
Convertendo entre a base binária e a hexadecimal
Como realizar a conversão entre as bases binária e hexadecimal de maneira inteligente
Veja como deve ser feita a conversão entre as bases binária e hexadecimal no vídeo a seguir:
Operações com a base binária
Soma Aritmética
A operação de soma com binários e hexadecimais pode ser realizada da mesma forma com decimais. Sempre que a soma de dois algarismos excede a capacidade de representação da base com apenas um algarismo, aparece o carry, como pode ser visto abaixo.
Exemplo:
A soma 47 + 26 em decimal é realizada da seguinte forma:

Em binário, a mesma soma pode ser realizada como:

Já em hexadecimal:

Note que o sistema hexadecimal pode representar, com apenas 1 algarismo, até o número 15, que corresponde ao dígito hexadecimal “F”. No exemplo acima, F + A corresponde à seguinte soma no sistema decimal, 15 + 10 = 25. Convertendo 25 para hexadecimal obtém-se 19h, o “1” aparece na operação de soma como carry.
Subtração
A subtração com binários e hexadecimais, assim como a adição, é realizada de forma semelhante ao que é feito com os decimais. Ou seja, a operação é realizada dígito a dígito. Deve se tomar cuidado especial quando for preciso “pedir um”.
Relembrando
É preciso lembrar que uma unidade do algarismo, à esquerda, equivale ao valor da base para o algarismo que está à direta.
Veja o exemplo a seguir:
Exemplo:
A subtração 41 - 28 em decimal é realizada da seguinte forma:
Em binário, a mesma operação pode ser realizada como:
- Começamos normalmente pelos algarismos menos significativos
- Para poder realizar a operação no 3° algarismo menos significativo precisamos “pedir um” emprestado ao 4°:
- Nesse ponto da subtração, o 4° algarismo precisa “pedir um” emprestado, mas o 5° vale zero. Então, primeiro o 5° dígito deverá “pedir um” para o sexto algarismo:
- Finalmente o 3° algarismo pode pegar o valor que necessita para a substração e podemos finalizar a operação:
- Realizando a mesma operação utilizando a notação em hexadecimal:
Repare que quando o digito 9h “pede um” ele se transforma em 19h, ou seja, é somado 16 ao seu valor inicial.
Atenção
É fortemente recomendado fazer a subtração dos dígitos hexadecimais utilizando o sistema decimal, conforme mostrado no exemplo, para evitar erros.
Verificando o aprendizado
ATENÇÃO!
Para desbloquear o próximo módulo, é necessário que você responda corretamente a uma das seguintes questões:
O conteúdo ainda não acabou.
Clique aqui e retorne para saber como desbloquear.
MÓDULO 2
Identificar as portas lógicas e a notação de funções booleanas
Portas lógicas
As portas lógicas são circuitos digitais capazes de implementar funções simples de variáveis binárias, também conhecidas por variáveis booleanas. As portas lógicas são os elementos básicos de construção dos circuitos lógicos mais complexos.
A variável booleana pode assumir apenas dois níveis lógicos:
Nível lógico 0 (zero)
Representa a ideia de não, falso.
Nível lógico 1 (um)
Representa ideia de sim, verdade.
Atenção
O importante é que cada variável booleana pode assumir somente um valor por vez, e que o nível lógico 0 e o 1 devem sempre ser opostos.
Logo, se em um sistema o 0 representa chave aberta, o 1 representará a chave fechada, se o 0 representa aparelho desligado, então o 1 representará o aparelho ligado etc.
A nomenclatura das portas lógicas é bastante indicativa da função que executam, facilitando a memorização.
Saber identificar uma porta lógica pela sua nomenclatura, em português ou inglês, ou por quaisquer de seus símbolos e reconhecer suas funções lógicas é fundamental para avançar nos estudos de Eletrônica Digital.
Porta NÃO (NOT) ou Inversora
A porta NÃO é uma porta com apenas uma entrada, cuja saída é o estado oposto ao da entrada.
Dica
Para mostrar o funcionamento das portas lógicas, utilizamos a tabela verdade, a qual é um mapa que possui todas as possíveis combinações das entradas com os seus respectivos resultados.
A tabela verdade da Porta NÃO e seu símbolo são apresentados abaixo:
| A | S |
| 0 | 1 |
| 1 | 0 |
Figura 1 - Porta lógica NÃO | Fonte: Capuano, Francisco Gabriel - adaptada.
A função NÃO é representada como , e se lê como “A barra” ou “não A”.
Porta E (AND)
A porta E necessita que todas as entradas sejam verdade (estado lógico 1) para que a saída seja verdade. Caso contrário, a saída é falsa (estado lógico 0). Essa porta realiza o que chamamos de produto lógico das variáveis booleanas.
A tabela verdade e o símbolo de uma porta E de duas entradas são:
| A | B | S |
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
Figura 2 - Porta lógica E | Fonte: Capuano, Francisco Gabriel - adaptada.
A função E é representada como ou , e se lê como “A e B” ou “A multiplica B”.
Atenção
Note que a porta lógica E pode ter tantas entradas quanto se queira.
Por exemplo, para uma porta E de três entradas.
| A | B | C | S |
| 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 0 |
| 0 | 1 | 0 | 0 |
| 0 | 1 | 1 | 0 |
| 1 | 0 | 0 | 0 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 0 |
| 1 | 1 | 1 | 1 |
Figura 3 - Porta Lógica E de 3 entradas| Fonte: Capuano, Francisco Gabriel - adaptada.
, e se lê como “A e B e C”.
Porta OU (OR)
A porta OU realiza a soma lógica das variáveis booleanas. Sua saída é verdade (1) desde que pelo menos umas das entradas seja verdade (1). Assim como a porta E, a OU pode ter tantas entradas quanto se queira. A simbologia e a tabela verdade de uma porta OU de duas entradas são apresentadas a seguir:
| A | B | S |
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
Figura 4 - Porta Lógica OU | Fonte: Capuano, Francisco Gabriel - adaptada.
S = A+B, e se lê como “A ou B” ou “A mais B”.
Atenção
É importante diferenciar a operação lógica OU que realiza a soma lógica, da soma aritmética vista no Módulo 1. Perceba que, por exemplo, na função lógica não existe o carry.
A simbologia e a tabela verdade para uma função OU de quatro variáveis de entrada são:
| A | B | C | D | S |
| 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 1 | 1 |
| 0 | 0 | 1 | 0 | 1 |
| 0 | 0 | 1 | 1 | 1 |
| 1 | 0 | 0 | 0 | 1 |
| 1 | 0 | 0 | 1 | 1 |
| 1 | 0 | 1 | 0 | 1 |
| 1 | 0 | 1 | 1 | 1 |
| 1 | 1 | 0 | 0 | 1 |
| 1 | 1 | 0 | 1 | 1 |
| 1 | 1 | 1 | 0 | 1 |
| 1 | 1 | 1 | 1 | 1 |
Figura 5 - Porta Lógica OU de 4 entradas | Fonte: Capuano, Francisco Gabriel - adaptada.
Note que a função lógica OU, com mais do que duas entradas, é totalmente diferente do que seria a soma aritmética dos mesmos bits.
Perceba também que como cada entrada pode assumir 2 valores (0 ou 1), a quantidade de combinações possíveis para as entradas é 2^N, com N sendo a quantidade de entradas. Então, no caso da porta OU com 4 entradas, há 2^4=16 combinações possíveis de entrada, como pode ser visto na sua tabela verdade.
Porta NÃO E (NAND)
Como sugerido pelo nome, essa porta é a negação da porta E. Ou seja, ela pode ser composta por uma porta E seguida pela porta NÃO.
Simbologia da Porta NÃO E:
Figura 6 - Porta Lógica NÃO E | Fonte: Capuano, Francisco Gabriel - adaptada.
A porta NÃO E opera como uma porta E seguida pela porta NÃO:
Figura 7 - Esquema da porta lógica NÃO E | Fonte: Capuano, Francisco Gabriel - adaptada.
Assim, a sua tabela verdade é dada por:
| A | B | S |
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
E a expressão lógica da porta NAND é
Assim, como as portas E e OU, a porta NAND pode possuir múltiplas entradas.
Porta NÃO OU (NOR)
Análoga a porta NÃO E, a NÃO OU é a composição da OU com a NÃO. Assim como as demais, ela pode ter duas entradas ou mais. A simbologia, tabela verdade e expressão da porta NÃO OU são dadas a seguir:
| A | B | S |
| 0 | 0 | 1 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 0 |
Figura 8 - Porta lógica NÃO OU | Fonte: Capuano, Francisco Gabriel - adaptada.
Porta OU EXCLUSIVO (EXCLUSIVE OR), XOR
A porta OU EXCLUSIVO, assim como as outras portas, pode ter mais do que duas entradas, porém esse caso é incomum e seu funcionamento é ligeiramente diferente. Estudaremos apenas a porta OU EXCLUSIVO de duas entradas.
Como o seu nome sugere, a saída da porta OU EXCLUSIVO é verdade (1), se, e somente se, uma entrada for verdade (1) e a outra for falsa (0). Ou seja, se as entradas forem diferentes.
A representação da porta XOR e sua tabela verdade são:
| A | B | S |
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
Figura 9 - Porta lógica OU Exclusivo | Fonte: Capuano, Francisco Gabriel - adaptada.
A expressão da porta lógica XOR é lê-se “A ou exclusivo B”, ou “A XOR B”.
A expressão da XOR pode ser escrita em função das portas E, OU e NÃO:
A seguir, mostramos a implementação da expressão obtida para a porta XOR:
Figura 10 - Implementação da porta XOR utilizando portas E, OU e NÃO | Fonte: Dachi, Édison Pereira - adaptada.
Porta NÃO OU EXCLUSIVO (NOT EXCLUSIVE OR), XNOR
É a negação da porta OU EXCLUSIVO. Dessa forma, a porta XNOR possui saída verdade (1) se, e somente se, as entradas forem iguais.
lê-se A não ou exclusivo B, ou A XNOR B.
| A | B | S |
| 0 | 0 | 1 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
Figura 11 - Porta lógica NXOR | Fonte: Capuano, Francisco Gabriel - adaptada.
Obtenção da função booleana a partir dos circuitos lógicos
Obtenção da função booleana a partir dos circuitos lógicos
Veja como obter a função booleana a partir dos circuitos lógicos no vídeo a seguir:
Obtenção dos circuitos lógicos a partir da função booleana
Para obter o circuito lógico a partir da expressão booleana, basta identificar as funções lógicas e as desenhar de acordo com a precedência das operações.
Exemplo:
Desenhe o circuito lógico que implementa a seguinte expressão:
Resposta
Identificamos que as primeiras operações são o OU (A + B) e o E (C .D)
Em seguida, fazemos o E entre
Finalmente, fazemos a operação de OU entre
Obtenção da tabela verdade a partir da função booleana
Conforme a complexidade da expressão booleana aumenta, obter a tabela verdade por simples inspeção se torna cada vez mais difícil. Nesses casos, pode-se utilizar os seguintes passos para obtê-la a partir da expressão booleana:
Montar a tabela com todas entradas possíveis.
Criar colunas para os produtos intermediários e as preencher de acordo (repetir este passo tantas vezes quanto o necessário).
Criar a coluna da saída e a preencher de acordo.
Exemplo:
Montar a tabela verdade da expressão:
1° passo
| A | B | C |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 0 | 1 |
| 0 | 1 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 0 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
| 1 | 1 | 1 |
2° passo
| A | B | C | B+C | |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 1 |
| 0 | 0 | 1 | 1 | 0 |
| 0 | 1 | 0 | 1 | 1 |
| 0 | 1 | 1 | 1 | 0 |
| 1 | 0 | 0 | 0 | 1 |
| 1 | 0 | 1 | 1 | 0 |
| 1 | 1 | 0 | 1 | 1 |
| 1 | 1 | 1 | 1 | 0 |
3° passo
| A | B | C | B+C | A.(B+C) | |
|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 1 | 0 |
| 0 | 0 | 1 | 1 | 0 | 0 |
| 0 | 1 | 0 | 1 | 1 | 0 |
| 0 | 1 | 1 | 1 | 0 | 0 |
| 1 | 0 | 0 | 0 | 1 | 0 |
| 1 | 0 | 1 | 1 | 0 | 1 |
| 1 | 1 | 0 | 1 | 1 | 1 |
| 1 | 1 | 1 | 1 | 0 | 1 |
4° passo
| A | B | C | B+C | A.(B+C) | S | |
|---|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 1 | 0 | 1 |
| 0 | 0 | 1 | 1 | 0 | 0 | 0 |
| 0 | 1 | 0 | 1 | 1 | 0 | 1 |
| 0 | 1 | 1 | 1 | 0 | 0 | 0 |
| 1 | 0 | 0 | 0 | 1 | 0 | 1 |
| 1 | 0 | 1 | 1 | 0 | 1 | 1 |
| 1 | 1 | 0 | 1 | 1 | 1 | 1 |
| 1 | 1 | 1 | 1 | 0 | 1 | 1 |
Obtenção da função booleana a partir da tabela verdade
Obter uma função booleana a partir da tabela verdade é simples, basta seguir dois passos:
Identificar as combinações de entrada que geram saída “1” e as reproduzir usando as funções lógicas E e NÃO.
Utilizar a função lógica OU para combinar as expressões obtidas no passo anterior.
No exemplo, a seguir, está ilustrado o método junto à explicação de como ele funciona.
Exemplo:
Obter uma função booleana que gere a tabela verdade abaixo:
| A | B | C | S |
|---|---|---|---|
| 0 | 0 | 0 | 1 |
| 0 | 0 | 1 | 0 |
| 0 | 1 | 0 | 0 |
| 0 | 1 | 1 | 1 |
| 1 | 0 | 0 | 0 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 0 |
| 1 | 1 | 1 | 1 |
Primeiro, suponha uma porta OU com entradas X e Y. Note que pela tabela verdade da porta OU se X = 1 então S = 1, como pode ser visto nas linhas em destaque da tabela verdade abaixo:
| X | Y | S = X + Y |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
Ou seja, 1 + Y = 1, independente do estado lógico de Y!
Retomando a tabela verdade do exemplo, para que a primeira linha (A = 0, B = 0 e C = 0) possua saída S = 1, deve-se incluir o termo , note que esse termo produz saída 1 se, e somente se, A = B = C = 0. Ou seja:
| A | B | C | |
|---|---|---|---|
| 0 | 0 | 0 | 1 |
| 0 | 0 | 1 | 0 |
| 0 | 1 | 0 | 0 |
| 0 | 1 | 1 | 0 |
| 1 | 0 | 0 | 0 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 0 |
| 1 | 1 | 1 | 0 |
Para que a linha A = 0 e B = C = 1 possua saída 1, utiliza-se o termo
Da mesma maneira, temos que para a linha A = B = C = 1 tenha S = 1, utiliza-se o termo A .B .C
Assim, temos a seguinte tabela verdade:
| A | B | C | |||
|---|---|---|---|---|---|
| 0 | 0 | 0 | 1 | 0 | 0 |
| 0 | 0 | 1 | 0 | 0 | 0 |
| 0 | 1 | 0 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 | 1 | 0 |
| 1 | 0 | 0 | 0 | 0 | 0 |
| 1 | 0 | 1 | 0 | 0 | 0 |
| 1 | 1 | 0 | 0 | 0 | 0 |
| 1 | 1 | 1 | 0 | 0 | 1 |
Fazendo :
| A | B | C | S | |||
|---|---|---|---|---|---|---|
| 0 | 0 | 0 | 1 | 0 | 0 | 1 |
| 0 | 0 | 1 | 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 0 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 | 1 | 0 | 1 |
| 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| 1 | 0 | 1 | 0 | 0 | 0 | 0 |
| 1 | 1 | 0 | 0 | 0 | 0 | 0 |
| 1 | 1 | 1 | 0 | 0 | 1 | 1 |
Esse é o resultado desejado! Logo
Dica
Analisando o exemplo anterior, fica claro que qualquer tabela verdade pode ser expressa como uma soma de produtos.
Verificando o aprendizado
ATENÇÃO!
Para desbloquear o próximo módulo, é necessário que você responda corretamente a uma das seguintes questões:
O conteúdo ainda não acabou.
Clique aqui e retorne para saber como desbloquear.
MÓDULO 3
Aplicar a álgebra de Boole para a simplificação de funções booleanas
Neste módulo, estudaremos os teoremas e propriedades da Álgebra Booleana e veremos como eles podem ser utilizados para simplificar as funções booleanas.
Teoremas elementares
Os primeiros 9 teoremas são bastante simples de se verificar.
1)
2)
3)
Para verificar os teoremas 2) e 3) basta analisar a tabela verdade da porta OU:
4)
5)
Para verificar os teoremas 4) e 5) basta analisar a tabela verdade da porta E:
6)
7)
Para verificar os teoremas 6) e 7), será analisado a tabela verdade da porta OU, com uma mudança conveniente na ordem em que as combinações das entradas aparecem:
8)
9)
Para verificar os teoremas 8) e 9), será analisado a tabela verdade da porta E, com uma mudança conveniente na ordem em que as combinações das entradas aparecem:
Propriedades
As propriedades da álgebra booleana são muito fáceis de se lembrar, pois seguem as mesmas regras da álgebra matemática usual.
comutativa
A propriedade comutativa é válida para a adição e para a multiplicação:
- A + B = B + A
- A . B = B . A
associativa
Assim como a propriedade comutativa, a propriedade associativa é válida para a adição e para a multiplicação:
- (A + B) + C = A + (B + C)
- (A. B) . C = A . (B . C)
distributiva
A propriedade distributiva é mais abrangente na álgebra booleana do que na álgebra usual, pois além de ser aplicada ao produto:
A . (B + C) = A . B + A . C
Também podem ser aplicadas a soma:
A + (B . C) = (A + B) . (A + C)
Para verificar os dois casos da propriedade distributiva, analisaremos a tabela verdade:
| A | B | C | A.(B+C) | A.B+A.C |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 0 | 0 |
| 0 | 1 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 | 0 |
| 1 | 0 | 0 | 0 | 0 |
| 1 | 0 | 1 | 1 | 1 |
| 1 | 1 | 0 | 1 | 1 |
| 1 | 1 | 1 | 1 | 1 |
| A | B | C | A.(B+C) | (A+B).(A+C) |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 0 | 0 |
| 0 | 1 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 | 0 |
| 1 | 0 | 0 | 0 | 0 |
| 1 | 0 | 1 | 1 | 1 |
| 1 | 1 | 0 | 1 | 1 |
| 1 | 1 | 1 | 1 | 1 |
Para demonstrar como as propriedades e teoremas vistos até agora podem ser utilizados na simplificação das expressões booleanas, faremos uma série de exemplos com expressões simples.
Exemplos
Prove as simplificações:
1)
2)
3)
4)
5)
6)
7)
Teoremas de De Morgan
Os teoremas de De Morgan são de grande importância para a simplificação de expressões booleanas. São eles:
1) O complemento do produto de variáveis booleanas é igual à soma dos complementos das variáveis individuais.
2) O complemento da soma de variáveis booleanas é igual ao produto dos complementos das variáveis individuais.
Dica
Note que os teoremas de De Morgan se aplicam para uma quantidade arbitrária de variáveis. E foram utilizadas 4 variáveis apenas para garantir a clareza da notação utilizada.
Exemplo:
Simplifique a expressão
Resposta
Aplicando De Morgan nos termos :
Colocando em evidência:
Renomeando , podemos escrever:
Aplicando a propriedade distributiva:
Fazendo a substituição :
Aplicando De Morgan no termo :
Note que , pois se , temos que , assim:
Finalmente:
Simplificação de funções booleanas utilizando a álgebra booleana
Para melhor compreender o processo visto, assista ao vídeo a seguir:
Verificando o aprendizado
ATENÇÃO!
Para desbloquear o próximo módulo, é necessário que você responda corretamente a uma das seguintes questões:
O conteúdo ainda não acabou.
Clique aqui e retorne para saber como desbloquear.
MÓDULO 4
Aplicar o mapa de Karnaugh para a simplificação de funções booleanas
No módulo anterior, vimos como simplificar expressões booleanas utilizando a álgebra boolena. Apesar desse método ser muito prático para expressões simples, pudemos perceber que esse processo pode ser bastante trabalhoso e complicado dependendo da complexidade da função booleana.
Além disso, ao realizar a simplificação pela álgebra de boole, nem sempre temos certeza de que obtivemos a expressão mais simples possível.
Exemplo
Por exemplo, ao simplificar a expressão
,
seria razoável parar ao obter a expressão
,
acreditando ter obtido a expressão mais simples de S, porém a expressão mais simples de S nesse caso é
A utilização do Mapa de Karnaugh permite, a partir da tabela verdade, a obtenção da função booleana mais simples que representa um circuito de maneira sistemática, rápida e prática. Estudaremos os mapas de Karnaugh para circuitos com 2, 3 ou 4 entradas.
Formato do Mapa de Karnaugh
Primeiro, definimos que cada combinação possível de entradas de uma função Boolena é um mintermo. Então, para uma função de três variáveis, por exemplo, temos que o mintermo 3 é
| mintermo | A | B | C |
| 0 | 0 | 0 | 0 |
| 1 | 0 | 0 | 1 |
| 2 | 0 | 1 | 0 |
| 3 | 0 | 1 | 1 |
| 4 | 1 | 0 | 0 |
| 5 | 1 | 0 | 1 |
| 6 | 1 | 1 | 0 |
| 7 | 1 | 1 | 1 |
No mapa de Karnaugh, cada quadrado ou célula, corresponderá a um mintermo, ou seja, a uma possível combinação possível das variáveis de entrada. A seguir, podemos observar o formato dos mapas de Karnaugh para 2, 3 ou 4 variáveis.
Figura 12 - Mapa de Karnaugh para 2, 3 e 4 variáveis. | Fonte: O autor
Um conceito muito importante no Mapa de Karnaugh é o de vizinhança entre células. Duas células são vizinhas quando a variação entre seus mintermos é de apenas 1 bit.
Exemplo
No mapa de 4 variáveis, as células 7 e 15 são vizinhas, pois apenas o bit A varia entre elas. As células 4 e 6 também são vizinhas, com apenas o bit C variando entre elas.
A vizinhança pode ser identificada graficamente. Duas células são vizinhas se fazem fronteira entre si, ou seja, compartilham uma aresta, sendo que as arestas externas opostas do mapa de Karnaugh são consideradas a mesma aresta. Na Figura 13, as arestas externas de mesma cor são consideradas uma só para fins de verificação de vizinhança.
Figura 13 – Mapas de Karnaugh com indicação das arestas externas. | Fonte: O autor
Assim, se uma célula está em uma borda do mapa, ela é vizinha da célula na borda oposta. Por exemplo, no mapa de 4 variáveis, as vizinhas da célula 0 são as células 1, 2, 4 e 8.
Preenchimento do Mapa de Karnaugh
O preenchimento do Mapa de Karnaugh é feito copiando o valor da função para cada célula correspondente do mapa.
Exemplo:
Dada a tabela verdade da função S, abaixo, preencha o mapa de Karnaugh correspondente:
| mintermo | A | B | C | D | S |
| 0 | 0 | 0 | 0 | 0 | 1 |
| 1 | 0 | 0 | 0 | 1 | 0 |
| 2 | 0 | 0 | 1 | 0 | 0 |
| 3 | 0 | 0 | 1 | 1 | 1 |
| 4 | 0 | 1 | 0 | 0 | 1 |
| 5 | 0 | 1 | 0 | 1 | 0 |
| 6 | 0 | 1 | 1 | 0 | 0 |
| 7 | 0 | 1 | 1 | 1 | 1 |
| 8 | 1 | 0 | 0 | 0 | 1 |
| 9 | 1 | 0 | 0 | 1 | 1 |
| 10 | 1 | 0 | 1 | 0 | 1 |
| 11 | 1 | 0 | 1 | 1 | 0 |
| 12 | 1 | 1 | 0 | 0 | 1 |
| 13 | 1 | 1 | 0 | 1 | 1 |
| 14 | 1 | 1 | 1 | 0 | 0 |
| 15 | 1 | 1 | 1 | 1 | 1 |
Resposta
Atenção
Apesar de ser um procedimento muito simples, é preciso tomar muito cuidado nesta etapa, pois ela é muito suscetível a erros devido à falta de atenção. Note que as células do mapa de Karnaugh não seguem uma ordem crescente!
Minimização utilizando mapa de Karnaugh
A minimização baseada no mapa de Karnaugh se baseia em agrupar células vizinhas nas quais o valor da função é 1. Os agrupamentos podem ser:
Em seguida, devemos identificar a expressão booleana que corresponde a cada agrupamento. Para tal, observamos quais variáveis booleanas possuem mesmo valor em todas as células do grupo. A expressão do agrupamento é o mintermo das variáveis que não alteram seu valor.
Dica
Observe nas figuras dos agrupamentos o termo correspondente a cada um deles.
Ao realizar os agrupamentos, devemos seguir as seguintes regras:
- Todos os “1” devem pertencer a pelo menos um agrupamento, podendo se fazer parte de diversos agrupamentos.
- Os “0”s não podem participar de nenhum agrupamento.
- Devem ser priorizados agrupamentos com a maior quantidade de células possíveis.
- Todos os agrupamentos devem incluir pelo menos um “1” que só pertença a ele, caso contrário, ele deve ser descartado.
Baseando-se nessas regras, a minimização por mapa de Karnaugh deve seguir o seguinte passo a passo:
- Montar a tabela verdade, caso ela não tenha sido fornecida. Por exemplo, se for dado a expressão booleana ao invés da tabela verdade.
- Montar o mapa de Karnaugh.
- Preencher o mapa de Karnaugh.
- Agrupar as óctuplas de “1”.
- Agrupar as quadras de “1”, em que nem todos os “1” pertençam as óctuplas já formadas.
- Agrupar todas as duplas de “1”, em que nem todos os “1” pertençam aos agrupamentos já formados.
- Agrupar os “1” que não participam de nenhum agrupamento em ilhas.
- Verificar se todos os agrupamentos incluem pelo menos um “1” único, descartando os que não.
Seguindo esses passos corretamente, o resultado, em geral, será a soma mais simples de mintermos que implementa a função pretendida.
Exemplo:
Calcule a função booleana que implementa a seguinte tabela verdade:
| A | B | C | D | S |
| 0 | 0 | 0 | 0 | 1 |
| 0 | 0 | 0 | 1 | 1 |
| 0 | 0 | 1 | 0 | 1 |
| 0 | 0 | 1 | 1 | 1 |
| 0 | 1 | 0 | 0 | 1 |
| 0 | 1 | 0 | 1 | 1 |
| 0 | 1 | 1 | 0 | 0 |
| 0 | 1 | 1 | 1 | 0 |
| 1 | 0 | 0 | 0 | 1 |
| 1 | 0 | 0 | 1 | 1 |
| 1 | 0 | 1 | 0 | 0 |
| 1 | 0 | 1 | 1 | 0 |
| 1 | 1 | 0 | 0 | 1 |
| 1 | 1 | 0 | 1 | 1 |
| 1 | 1 | 1 | 0 | 1 |
| 1 | 1 | 1 | 1 | 0 |
Resposta
Inicialmente, montamos e preenchemos o mapa de Karnaugh:
Note que não é necessário colocar os zeros, podendo deixar seu espaço “em branco”.
Em seguida, buscamos as óctuplas:
Na sequência, buscamos as quadras:
A seguir, verificamos as duplas:
Como não há nenhum “1” sobrando, não precisamos utilizar as ilhas. Verificamos também que os três grupos incluem pelo menos uma célula de valor “1” que só eles possuem.
Por último, identificamos os mintermos de cada grupo e realizamos sua soma:
Exemplo:
Simplifique a expressão:
Resposta
Inicialmente, montamos a tabela verdade:
Na sequência, montamos e preenchemos o mapa de Karnaugh:
Em seguida, fazemos os agrupamentos:
Por fim, identificamos os mintermos de cada grupo e realizamos a soma deles:
Simplificação de funções booleanas utilizando o Mapa de Karnaugh
Entenda melhor a resolução do exemplo acima assistindo à explicação do professor:
Condições Irrelevantes (Don’t Cares)
Condições irrelevantes ("X") são combinações de entradas em que, para o projetista do circuito, não importa a saída. Essa situação ocorre, principalmente, porque nos sistemas reais, muitas vezes, há combinações impossíveis de ocorrer.
O passo a passo para a simplificação, utilizando o mapa de Karnaugh, se mantém inalterado, porém haverá no mapa de Karnaugh, além de “0”s e “1”, “X”s.
Atenção
As condições irrelevantes podem ser incluídas nos agrupamentos, mas a sua inclusão não é obrigatória.
A inclusão ou não deve ser realizada de forma que gere os melhores agrupamentos e, assim, a expressão mais simplificada possível.
Exemplo:
Ache a expressão simplificada do mapa abaixo:
Resposta
Verificando o aprendizado
ATENÇÃO!
Para desbloquear o próximo módulo, é necessário que você responda corretamente a uma das seguintes questões:
O conteúdo ainda não acabou.
Clique aqui e retorne para saber como desbloquear.
Conclusão
Considerações Finais
Ao longo dos quatros módulos, apresentamos as ferramentas fundamentais da Eletrônica Digital que são utilizadas para construir circuitos mais complexos.
Inicialmente, vimos como os números podem ser representados em outras bases que não a decimal e como transitar entre as diferentes bases. Conferimos especial destaque às bases binária e hexadecimal, que são muito exploradas na Eletrônica Digital.
No segundo módulo, analisamos as funções lógicas que as portas lógicas executam e como um circuito lógico pode ser expresso como uma função booleana, além de ser introduzido o conceito de tabela verdade.
Em seguida, abordamos os fundamentos da álgebra booleana com enfoque em suas propriedades e teoremas principais, e como aplicar esses conhecimentos na minimização e circuitos.
Por fim, apreciamos a simplificação utilizando o mapa de Karnaugh, uma ferramenta incrivelmente poderosa para a obtenção de circuitos lógicos simplificados.
Podcast
CONQUISTAS
Você atingiu os seguintes objetivos:
Calculou a representação de números em diferentes bases como as operações com base binária e hexadecimal
Identificou as portas lógicas e a notação de funções booleanas
Aplicou a álgebra de Boole para a simplificação de funções booleanas
Aplicou o mapa de Karnaugh para a simplificação de funções booleanas