Você está na página 1de 37

ARQUITETURA DE COMPUTADORES

Prof. Lucio André Amorim


Representação de Bases

Trabalhos (3 pontos)
• Exercícios representação de dados - 1 ponto (25/01)
• Exercícios de Portas lógicas e álgebra booleana - 1 ponto – 01/06
• Exercício Processamento em Paralelo - 1 ponto – 01/06

• Processamento paralelo não será dado em sala. O aluno deverá


fazer pesquisa e poderá cair em prova (material online).
Álgebra Booleana

• Em 1854
• Matemático britânico George Boole apresentou um sistema
matemático de análise de lógica conhecido como “Álgebra de
Boole”.

• Apenas em 1938
• O engenheiro americano Claude Elwood Shannon utilizou as
teorias da álgebra de Boole para a solução de problemas de
circuitos de telefonia com relés, praticamente introduzindo na
área tecnológica o campo da eletrônica digital.
Álgebra Booleana

Variáveis Booleanas
• As variáveis Boolenas são representadas por letras.

• Diferentemente da álgebra ordinária dos reais, onde as


variáveis podem assumir infinitos valores, as variáveis
Booleanas só podem assumir um número finito de valores.
Álgebra Booleana

• As variáveis e constantes na
álgebra Booleana podem
assumir dois valores, os quais
podem ser denotados por [F,V]
(falso ou verdadeiro), [H,L]
(high and low) ou ainda [0,1].

❖ Nós usaremos apenas 0 e 1.


Álgebra Booleana

Tabela Verdade
• É uma técnica utilizada para descrever como a saída de um
circuito lógico é dependente dos níveis lógicos de entrada.

• É uma tabela que contem todas as possíveis combinações das


variáveis de entrada de uma determinada função e, como
resultado, os valores de saída.
Álgebra Booleana

Circuito com duas Tabela verdade do


entradas e uma saída circuito ao lado
Álgebra Booleana

O operador OR (OU) • Vamos definir:


Quando a luz de dentro • A = 1 => porta aberta
do carro acende? • B = 1 => interruptor ligado
• X = 1 => luz acesa.

Tabela Verdade

• Quando abre a porta


• Quando liga o interruptor
Álgebra Booleana

O operador OR (OU)

Podemos ter tabelas


verdade tão grande
quanto o número de
variáveis de entrada.
Álgebra Booleana

O operador AND (E) • Vamos definir:


Quando sairá água pelo • A = 1 => água na caixa d’água
chuveiro? • B = 1 => registro aberto
• X = 1 => água no chuveiro

Tabela Verdade

• Existir água na caixa d’água


• Quando abrir o registro
Álgebra Booleana

O operador AND (E)

Podemos ter tabelas


verdade tão grande
quanto o número de
variáveis de entrada.
Álgebra Booleana

O operadores XOR e NOT

XOR (OU exclusivo) NOT (negação)


Álgebra Booleana

Composição dos operadores com o operador NOT


NOR (NÃO OU) NAND (NÃO E) XNOR (NÃO XOR)
Álgebra Booleana

Exemplos:
a) X = A + B + C

A B C N=A+B X=N+C
1 0 1
0 0 1
1 1 0
1 0 0
Ordem de precedência nas expressões lógicas:
NOR / AND / OR
Álgebra Booleana

Exemplos:
b) X = (A + B) * C

A B C N=A+B X=N*C
1 0 1
0 0 1
1 1 0
1 0 0
Ordem de precedência nas expressões lógicas:
NOR / AND / OR
Álgebra Booleana

Exemplos:
c) X = (A + B) * C

A B C N=A+B ഥ)
M = (𝐍 X = M*C
1 0 1
0 0 1
1 1 0
1 0 0
Ordem de precedência nas expressões lógicas:
NOR / AND / OR
Álgebra Booleana

Exemplos:
d) X = (A + B) * (C + D)

A B C D N=A+B M=C+D X=N*M


1 0 1 1
0 0 1 0
1 1 0 1
1 0 0 0
Ordem de precedência nas expressões lógicas:
NOR / AND / OR
Álgebra Booleana

Exercício:
a) X = A + B + C

A B C
1 1 1
1 0 1
0 0 0
1 1 0
Ordem de precedência nas expressões lógicas:
NOR / AND / OR
Álgebra Booleana

Exercício:
b) X = (A + B) * C

A B C
1 1 1
1 0 1
0 1 0
1 1 0
Ordem de precedência nas expressões lógicas:
NOR / AND / OR
Álgebra Booleana

Exercício
c) X = (A + B) * C

A B C
1 0 0
1 0 1
0 1 0
0 1 1
Ordem de precedência nas expressões lógicas:
NOR / AND / OR
Álgebra Booleana

Exercício
d) X = (A + B) * (C + D)

A B C D
0 0 1 1
0 1 1 0
0 0 1 1
1 0 1 0
Ordem de precedência nas expressões lógicas:
NOR / AND / OR
Álgebra Booleana

• Todo circuito lógico executa uma expressão booleana, e por mais


complexo que seja, é formado pela interligação das portas lógicas
básicas.

• Pense nos operadores booleanos (mais [+], ponto [.] e barra


superior [-]) como códigos para as portas básicas, então você
pode escrever equações para os circuitos lógicos usando o sinal
mais [+] para uma porta OU, o ponto [.] para uma porta AND e a
barra [-] para um inversor (NOT).
Álgebra Booleana

• Quanto mais complexa a expressão booleana, mais complexo será


o circuito eletrônico que irá implementá-la.

• Será que podemos simplificar as expressões, de forma semelhante


à álgebra tradicional?
Álgebra Booleana
• Regras básicas da Álgebra Booleana
Álgebra Booleana
• Exemplos
Simplifique a expressão abaixo:

ഥ +𝐘
𝐗∗𝐘 =𝐗 ത (De Morgan - AND)

ഥ *𝐘
𝐗+𝐘 =𝐗 ത (De Morgan - OR)

ഥ = X (regra 5 - Involução)
𝐗

X + Y = Y + X (regra 6 - Comutatividade)

ഥ * Y = X + Y (regra 10 – Absorção 2)
X+𝐗
Exercícios
1) Simplifique as expressões abaixo

a) S = A + (0 . A)
b) S =A+ 1
c) S = A + AB
d) S = A + A’
e) S = A . A’
f) S = (A + B)’
g) S = (A . B)’
Portas Lógicas

Teorias da álgebra de Boole para a solução de problemas de circuitos


Circuitos de portas lógicas

❖ Utilização de transistores bipolares


Portas Lógicas

• A facilidade do processamento:
• apenas dois dígitos: 0 e 1 (bit) .
• Os símbolos representam um bloco lógico
• lógicas, “A”, “B”, etc.
• saída “S“.
• As entradas e saídas lógicas só assumem valores
correspondentes aos níveis lógicos “0” e “1”.
• Um bloco lógico executa uma determinada função lógica para
o qual foi projetado. Essa função determina os valores que as
saídas assumem para cada combinação de valores das entradas.
Portas Lógicas

• A relação entre as entradas e saída de uma porta lógica,


denomina-se “tabela verdade”.
Portas Lógicas

• Exercício: Preencha as tabelas verdade das portas:


Portas lógicas

Obtendo expressões lógicas a partir de circuitos


• Podemos escrever a expressão booleana que é executada por
qualquer circuito lógico. Vejamos, por exemplo, qual a expressão
que o circuito a seguir executa.

Vamos dividir o circuito em duas portas


Portas lógicas

Obtendo expressões lógicas a partir de circuitos


• Na saída S1 teremos o produto AB. Logo, S1 = AB.
• Como S1 está aplicado, junto com C, numa outra porta do tipo AND,
então, na saída S teremos o produto S1.C.
• Logo, S = S1.C.
• Finalmente, como S1= AB, podemos escrever:
• S=ABC .
Portas lógicas

Obtendo expressões lógicas a partir de circuitos


• Uma outra maneira mais simples para resolvermos o problema é a de
colocarmos nas saídas dos diversos blocos básicos do circuito as
expressões por esses executadas da seguinte maneira:

• O circuito apresentado é uma AND de três entradas.


Portas lógicas

Exercícios:
• Ache a expressão lógica do circuito abaixo:

1) 2)
Portas lógicas

Circuitos obtidos de expressões lógicas:


• Faremos como na aritmética clássica, iniciaremos pelos parênteses e fazemos
primeiramente as somas e após as multiplicações.
Veja o exemplo:
• Dentro do primeiro parêntese, temos a soma booleana A + B. logo o circuito que
executa esse parêntese será a porta OR.
• No segundo, temos a soma negada, tendo portanto como operando a porta NOR.
• Por fim, há um produto dos termos resultantes dos parênteses, logo, o circuito que
executa esta multiplicação será a porta AND.
Portas lógicas

Exercícios:
• Desenhe os circuitos referentes as expressões abaixo:

1) 2)

Você também pode gostar