Unid 2 AOC
Unid 2 AOC
Conversões, Operações,
Overflow, Portas e
Álgebra Booleana
Meire Higino
Números Binários: Conversões,
Operações, Overflow, Portas e
Álgebra Booleana
Objetivos da Aprendizagem
Ao final do conteúdo, esperamos que você seja capaz de:
2
Representação de Números Binários com Sinal
Os computadores trabalham com um sistema binário. Isso significa que, enquanto
digitamos ou realizamos cálculos, as informações que vemos são diferentes da forma
como o computador interpreta: ele faz a conversão dos números e letras para este
sistema.
O sistema de numeração que utiliza base dois é igual a um número binário, sendo
estes números zero e um (0, 1):
Curiosidade
Você sabia? O sistema binário surgiu séculos antes da criação dos
computadores. Estudos mostram que a civilização de Mangareva
já utilizava este sistema, usando elementos da natureza, como
animais e frutas, para representar seus valores (1, 2, 4, 8).
Para termos uma visão inicial da diferença entre números decimais e binários observe
a Tabela 1.
Decimal Binário
7 0111
6 0110
5 0101
4 0100
3 0011
2 0010
1 0001
0 0000
-1 1111
-2 1110
3
Decimal Binário
-3 1101
-4 1100
-5 1011
-6 1010
-7 1001
Como vemos na Tabela 1, após a conversão para binários, só existem números zero e
um. A conversão para números binários é feita pelo computador de forma automática,
mas a partir de agora vamos estudar como funciona esta conversão.
Para converter determinado número para binário, devemos seguir um passo a passo.
Vamos usar como exemplo o número 30. Observe a imagem:
(b)
30 2
0 15 2
1 7 2
1 3 2
(a) 1
1
Resultado: 11110
A conversão consiste em dividir o número decimal por dois até não haver mais
possibilidade de divisão. Os números que sobram devem ser contados de baixo para
cima e este é o resultado em binário. Vamos analisar a Figura 1:
• Iniciamos com o número que será convertido (30, em azul). Devemos dividi-lo
por dois (em amarelo), em seguida dividir seu resultado (15) e assim sucessi-
vamente até o fim;
• Os valores que sobram (em ciano) devem ser lidos de baixo para cima (b).
4
Este é o resultado da conversão: 11110.
Agora que você aprendeu a converter números decimais em binários, vamos fazer o
inverso: utilizar a mesma numeração da conversão anterior, na qual o número binário
é 11110. Observe a Figura 2.
(a)
1 1 1 1 0 (b)
0
0.2 = 0
1
0.2 = 2
(c)
2
0.2 = 4
3
0.2 = 8
4
0 . 2 = 16
Resultado: 30 (d)
Vamos analisá-la:
Bit de Sinal
0 Positivo
ção X os bits 0100101 e na posição Y os bits 1100101. O primeiro bit, à esquer-
1 Negativo
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES 39
5
Para exemplificar, imagine que o registrador possui em determinada posição X os bits
0100101 e na posição Y os bits 1100101. O primeiro bit, à esquerda, é o que define se
o número é positivo ou negativo.
Observe a Figura 4.
Posição X Posição Y
(a) X6 X5 X4 X3 X2 X1 X0 (a) Y6 Y5 Y4 Y3 Y2 Y1 Y0
(d) (d)
0 1 0 0 1 0 1 = +3711 1 1 0 0 1 0 1 = -3710
(b) (c) (b) (c)
Por se tratar de números binários, os valores posicionais são elevados à potência dois
(a). O primeiro bit à esquerda informa se o valor é positivo ou negativo (b). O último
bit, à direita, é chamado de LSD (Least Signifi cant Bit). Na Figura 4, (d), podemos ver a
diferença na conversão para decimal: númeropositivo ou negativo.
No complemento de um, onde é zero se torna um. E onde é um se torna zero. Observe
a imagem a seguir:
0 1 0 0 1 0 1
Substituição:
1 0 1 1 0 1 0
6
O complemento de dois tem uma pequena diferença, veja a seguir:
Posição X
X6 X5 X4 X3 X2 X1 X0
0 1 0 0 1 0 1
1 0 1 1 0 1 0
+ 1 (b)
1 0 1 1 0 1 1
(c)
Soma
Decimal Binário
5 0101
+4 +0100
9 1001
7
Para iniciarmos os cálculos, é importante aprender como os números binários podem
ser somados. Observe a Figura 7.
0+0 = 0 0
0+1 = 1 0
1+0 = 1 0
1+1 = 0 1
Assim como na soma de números decimais, nos números binários também colocamos
um número embaixo do outro e, assim, começamos o cálculo da direita para esquerda.
Os números que sobram devem ser somados com o da posição seguinte:
(b)
1
0 1 0 1
+ 0 1 0 0
(a)
1 0 0 1 (c)
O cálculo deve iniciar sempre da direita para a esquerda (a). Quando no resultado
sobra 1, o número deve ser somado com a próxima posição (b). No nosso cálculo,
somamos os números 5 e 4 em binário e o resultado foi 9, ou seja, 1001.
Subtração
0-0 = 0 0
0-1 = 0 1
1-0 = 1 0
1-1 = 0 0
8
Vamos realizar uma subtração utilizando o cálculo 5 - 4 = 1 em binário. Observe a
Figura 10.
0 1 0 1
- 0 0 11 00 10
- 0 1 0 0 (a)
0 0 0 1 (a)
0 0 (b)0 1
Figura 10. Subtração em números binários. (b)
Figura 10 - Subtração em números binários
Figura 10. Subtração em números binários.
Assim como na soma, na subtração devemos iniciar da direita para esquer-
da (a).como 0 - 1,iniciar
Assim como
Assim naSesoma,
houver a necessidade
na
na soma,subtração de subtrair
na subtraçãodevemos
devemos devemos direita
iniciar da tomar emprestado
direita para
para esquerda (a).
esquer-
da próxima posição à esquerda, assim como em números decimais:
da (a).
Se houver a Se houver a necessidade
necessidade de 0
de subtrair subtrair 0 - 1, devemos
- 1, devemos tomartomar emprestado
emprestado da próxima
da próxima posição à esquerda, assim
posição à esquerda, assim como em números como
(a)
em números
decimais: decimais:
0 1
1 1 0
(a)
- 0 0 0 11
1 1 0
1 0 1
- 0 0(b) 1
Figura 11. Subtração em números binários. 1 0 1
(b)
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES 42
Figura 11. Subtração em números binários.
Você deve ter notado que em alguns casos o resultado obtido está com o sinal errado.
No sistema binário, quando o resultado é incorreto, ou a palavra possui um tamanho
maior do que já está sendo utilizado, acrescenta-se um bit à esquerda. Esta ação
é chamada de overflow, que em português significa “transbordar”, “estourar”. Essa
condição de overfl ow acontece apenas quando somamos dois números positivos ou
dois números negativos, o que sempre produz um resultado errado (CORRÊA, 2017,
p. 55).
Para compreender melhor o overfl ow, vamos analisar a Figura 12: a soma dos números
gera um resultado negativo (a). Para corrigir, o sistema acrescenta um bit à esquerda
com o sinal correto, nesse caso, sinal positivo (b). Por fim,temos a palavra correta (c):
9
+5 0 1 0 1
+ +4 + 0 1 0 0
+9 1 0 0 1 (a)
(b) 0
(c) 0 1 0 0 1
Nível Lógico-Digital
O nível lógico-digital, ou o nível 0, é onde operam as memórias. Estas memórias podem
ser combinadas em grupos e são armazenadas pelos registradores. É o nível mais
baixo. Nesse nível, um transistor pode funcionar como um comutador binário muito
rápido.
Álgebra Booleana
A álgebra booleana trabalha em sistema binário, dessa forma, por utilizar apenas zero
e um, pode ser considerada mais simples que a álgebra convencional. É utilizada com
o intuito de facilitar a relação entre entrada e saída (E/S) através de diversas portas,
além de poder ser utilizada para representar o nível de tensão de uma conexão (nível-
lógico).
Lógico 0 Lógico 1
Falso Verdadeiro
Desligado Ligado
Baixo Alto
Não Sim
Aberto Fechado
10
Tabelas-Verdade
Saída
Entradas
A B C X A B C D X
0 0 0 0 0 0 0 0 0
0 0 1 1 0 0 0 1 0
A B X 0 1 0 1 0 0 1 0 0
0 0 1 0 1 1 0 0 0 1 1 1
0 1 0 1 0 0 0 0 1 0 0 1
1 0 1 1 0 1 0 0 1 0 1 0
1 1 0 1 1 0 0 0 1 1 0 0
1 1 1 0 1 1 1 1
(b) 1 0 0 0 0
1 0 0 1 0
1 0 1 0 0
?
A 1 0 1 1 1
x 1 1 0 0 0
B
1 1 0 1 0
1 1 1 0 0
(a) 1 1 1 1 1
(c)
Figura 13 - Tabelas-verdade
Fonte: MOSS; TOCCI; WIDMER, 2011, p. 50.
Vamos analisar as tabelas da Figura 13. Podemos ver que existem duas entradas
(a e b) e uma saída (x) que são representadas nas colunas. As linhas são os níveis
que cada tabela poderá ter. Para sabermos quantos níveis a tabela deve ter, devemos
considerar a quantidade de entradas e elevá-las à potência dois (binário). Neste caso,
temos duas entradas, então consideramos 2² = 4 (quatro linhas).
11
A coluna x mostra a combinação correta para cada nível. Por exemplo, na primeira
linha, para as entradas A = 0 e B = 0, a saída é X = 1; e na segunda linha, para as
entradas A = 0 e B = 1, a saída é X = 0.
Podemos observar claramente nas tabelas (b) e (c) que, não importa a quantidade de
entradas (colunas), elas sempre seguirão a sequência utilizada no primeiro exemplo (a):
A partir de agora, veremos os diferentes tipos de porta, como funcionam suas entradas
e saída e a forma que elas são representadas na tabela-verdade.
OR (ou)
A porta OR (ou) é um circuito que possui duas ou mais entradas e uma saída (Figura
14). Ela opera com a expressão booleana: x = A + B.
OR
A B X=A+B
A
0 0 0 x=A+B
0 1 1
1 0 1 B
1 1 1
Porta OR
(a) (b)
Figura 14 - Porta OR
Fonte: MOSS; TOCCI; WIDMER, 2011, p. 51.
12
Como podemos ver na imagem, a tabela-verdade (a) mostra todas as possibilidades
de acordo com a quantidade de entradas da porta. Por exemplo, vamos considerar
que 0 é negativo e 1 positivo. Na linha 1, a entrada A e B são 0, dessa forma, a saída X
também é 0. Na quarta linha a entrada, A possui 1 e a entrada B possui 0, dessa forma,
a saída é positiva: 1.
AND (e)
A porta AND (e) possui duas ou mais entradas e uma saída (Figura 15). Diferentemente
da porta OR, ela opera com a expressão booleana x = AB.
AND
A B X=A.B
0 0 0 A x = AB
0 1 0
1 0 0 B
1 1 1 Porta AND
(a) (b)
Figura 15 - AND
Fonte: MOSS; TOCCI; WIDMER, 2011, p. 54.
A operação AND consiste no fato de que, se uma das entradas for zero, a saída será
sempre zero. Veja que, na Figura 15, em todas as linhas em que existe uma entrada
zero o resultado é zero.
A porta NOT (não) também é conhecida pela inversão, além de possuir uma
13
NOT
A X=A
0 1
1 0
(a)
NOT 1
A
x=A 0
A
1
x
(b) A presença de um
pequeno círculo sempre 0
denota inversão!
(c)
Figura 16 - NOT ou inversão
Fonte: MOSS; TOCCI; WIDMER, 2011, p. 57.
Observando a Figura 16, podemos ver um círculo que representa a inversão, dessa
forma, na tabela-verdade notamos que quando A = 0, x = 1; e quando A = 1, x = 0.
NAND
A porta NAND é representada pelo mesmo símbolo da porta AND, porém acrescentado
de um círculo que significa inversão. Nesta operação, é utilizada a expressão booleana:
x= .
A x = AB
AND NAND
B A B AB AB
(a) Denota 0 0 0 1
inversão! 0 1 0 1
A 1 0 0 1
AB AB
1 1 1 0
B (c)
(b)
Figura 17 - NAND
Fonte: MOSS; TOCCI; WIDMER, 2011, p. 66.
14
Vamos analisar a tabela-verdade na Figura 18: na primeira linha, temos as entradas A
= 0 e B = 0. Na operação AND, o resultado é x = 0, porém com a inversão o resultado
NAND é x = 1. Também podemos ver que na quarta linha as entradas são A = 1 e B = 1.
Na operação AND, o resultado é x = 1, porém com a inversão, na tabela NAND, vemos
x = 0.
NOR
Basicamente, o símbolo utilizado para porta NOR é o mesmo da porta OR acrescentado de
m círculo que representa a inversão. Ela opera com a expressão booleana x = . Isso
significa que, primeiramente, é feita a operação OR e em seguida a operação de inversão.
A
x=A+B
B
(a) Denota
inversão!
A x=A+B
B A+B
(b)
OR NOR
A B A+B A+B
0 0 0 1
0 1 1 0
1 0 1 0
1 1 1 0
(c)
Figura 18 - NOR
Fonte: MOSS; TOCCI; WIDMER, 2011, p. 64.
15
XOR
Na porta XOR a saída vai a nível alto sempre que uma entrada for diferente da outra.
Esta operação usa a expressão booleana: x=A B, x= B ou x=A .
A
A
B AB
B x = AB + AB
A
AB
B
(a)
A x=A B
= AB + AB
B
(b)
A B X
0 0 0
0 1 1
1 0 1
1 1 0
Figura 19 - XOR
Fonte: MOSS; TOCCI; WIDMER, 2011, p. 122.
Podemos ver na tabela-verdade da Figura 19, que sempre que os valores das entradas
forem diferentes, a saída vai a nível alto. Na primeira linha, vemos as entradas A = 0 e
B = 0 e na quarta linha as entradas A = 1 e B = 1, dessa forma, a saída em cada uma
delas é x = 0. Na segunda e terceira linhas, os valores são diferentes. Na segunda
linha, vemos as entradas A = 0 e B = 1 e na terceira linhas as entradas A = 1 e B = 0,
dessa forma, a saída em ambas é x = 1.
16
Somador
Você já aprendeu neste conteúdo como é feita a soma nos computadores usando
números binários. A partir de agora, você vai ver o comportamento do computador
durante esta operação utilizando o somador ou somadores.
0 0 1 1 1
Armazenada
Primeira parcela 1 0 1 0 1 em registro
acumulador
Armazenada
Segunda parcela 0 1 1 1
em registro B
+
Soma 1 0 1 0 0
(A ser somado
Carry 0 0 1 1 1 na próxima posição)
Os circuitos lógicos possibilitam que este processo seja multiplicado, tornando-o mais
rápido e eficaz. Este circuito é chamado de somador completo.
17
B4 B3 B2 B1 B0 Bits da segunda parcela
vondos do registrador B
C5 C4 C3 C2 C1 C0
Somador
FA FA FA FA completo
#4 #3 #2 #1 (FA)
#0
S4 S3 S2 S1 S0
Figura 21 - Carry
Fonte: MOSS; TOCCI; WIDMER, 2011, p. 270.
Entradas Entradas B
Entradas Saída de Saída de
de bits da de bits da
de bits do bits da bits do
primeira segunda
carry soma carry
parcela parcela
A B Cin S Cout S
0 0 0 0 0
0 0 1 1 0 Cin FA
0 1 0 1 0
0 1 1 0 1 Cout
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
A
1 1 1 1 1
Figura 22 - Carry
Fonte: MOSS; TOCCI; WIDMER, 2011, p. 271.
18
S: Refere-se à Saída;
Cout: Refere-se à saída do Carry (aquela que será somada com a posição seguinte).
B S
CIN
Cout
FA
O site possui dispositivos de entrada e saída, portas lógicas e outros itens para que
você possa montar diversos circuitos:
19
Figura 24 - Portas lógicas
Fonte: Neuroproductions, s/d.
Vamos fazer uma simulação: você lembra que a porta AND só tem uma saída em
nível alto quando as duas entradas são iguais a 1? Vamos testar! Colocamos dois
interruptores na entrada e um ventilador na saída. Imagine que, quando o interruptor
está ligado, a entrada tem valor 1 e, quando está desligado, a entrada tem valor 0:
Figura 25 - Simulação
Fonte: Neuroproductions, s/d.
20
Podemos ver agora que mesmo se um dos interruptores for ligado, não ocorre o
acionamento do ventilador.
Figura 26 - Simulação
Fonte: Neuroproductions, s/d.
Figura 27 - Simulação
Fonte: Neuroproductions, s/d.
21
Por fim, ao acionar os dois interruptores, o ventilador foi acionado. Conseguimos
testar aqui o uso da porta AND:
Figura 28 - Simulação
Fonte: Neuroproductions, s/d.
A partir de agora, você pode utilizar o simulador da sua preferência para exercitar
as operações e portas vistas neste conteúdo. Aproveite também para criar tabelas-
verdade enquanto simula diversos circuitos lógico-digitais.
22
Conclusão
Neste conteúdo, conseguimos alcançar os objetivos propostos e compreendemos
como os computadores utilizam o sistema binário para realizar diversas operações,
ao mesmo tempo que controla a quantidade de bits utilizados pela memória. Além
disso, podemos perceber que a álgebra booleana é mais simples do que a álgebra
convencional por trabalhar apenas com binários, e aprendemos o que são as tabelas-
verdade.
Vimos também os diferentes circuitos lógicos e como eles são representados nas
tabelas-verdade. E, por fim, utilizamos um simulador de circuito lógico-digital on-line
e gratuito, plataforma esta que permitirá que o aluno realize diversas experiências e
pratique os conhecimentos aprendidos.
23
Referências
CORRÊA, A. G. D. Organização e arquitetura de computadores. São Paulo: Pearson,
2017.