Você está na página 1de 8

Calculadora simplificada

Cássio Filipe Ferreira Santos, Frederico Martins Biber Sampaio,


Guilherme Brandão Biber Sampaio, Thiago Siqueira Caires, Victor Moreira Melo

DECET - Departamento de Ciência Exatas e Tecnologia

UNI-BH – Universidade de Belo Horizonte – Belo Horizonte – MG – Brasil

Curso de Ciência da Computação – Introdução à Ciência da Computação


{fredmbs, guilhermebiber}@gmail.com,

{cassiokis, thiagocaires88, vic2m_}@hotmail.com

Resumo. Este trabalho apresenta a implementação de uma calculadora


simplificada de soma de números binários inteiros, positivos ou negativos,
com amplitude de 6 bits. Seu objetivo é essencialmente didático: prover um
exemplo prático de construção de um circuito lógico com componentes
mecânicos e elétricos simples, como chaves e relés. Os circuitos serão
ilustrados amplamente para facilitar a compreensão.

Abstract. This paper presents the implementation of a simplified calculator


that sum two binary integer numbers, positive or negative, with magnitude of 6
bits. Its goal is essentially didactic: give a practical example of building
logical circuits with simples mechanicals and electrics components, such as
keys and relays. The circuits will be widely illustrated in order to facilitate
understanding.

1 Introdução
Os princípios da computação digital moderna se assentam em idéias e conceitos
relativamente simples. O avanço da computação digital está relacionado com a
capacidade de utilizar esses princípios simples com implementações cada vez mais
condensadas. Ou seja, os chips modernos são compostos por portas lógicas assim como
os primeiros computadores da década de 40.
O objetivo do artigo é comprovar a simplicidade conceitual da computação
digital, assim como descrito por Angelo Guimarães e Newton Lages, em Introdução à
Ciência da Computação de 1985, que demonstra como esses conceitos fundamentais
podem ser facilmente implementados com componentes triviais como interruptores.
Para cumprir esse objetivo, o artigo pretende apresentar a implementação um dispositivo
simples de soma e subtração de números binários utilizando-se chaves e relés.
O artigo tem como público alvo alunos iniciando o curso de computação e
pessoas com interesse em princípios básicos da computação digital. É importante
destacar que não é objetivo desse trabalho tratar de questões de alta-tecnologia, mas sim
aproximar o leitor dos princípios básicos dos computadores, inclusive com um exemplo
prático para solidificar seu caráter didático.
2

2 A lógica da calculadora simplificada


Para se criar uma calculadora de soma, é importante analisar como ocorre o
processo de soma. O processo de soma de dois números é uma repetição da soma de
cada casa de numeração, sendo que o excedente da soma de uma casa, chamado de “Vai
1”, deve ser levado para ser somado à próxima casa de numeração. Segue-se ilustração
elaborada por Benito Piropo, publicada no site Fórum PCs:

Exemplo do processo de soma de dois números decimais e binários [PIROPO].

Suponha-se um circuito de soma geral, chamado nesse artigo apenas de Cn, n


indicando o número da ordem da casa de numeração binária. Cn deve possuir três
entradas: A e B, representando os bits da casa de numeração n, e o “Vem 1” (VE), que
deve ser ligado com o “Vai 1” da casa de numeração imediatamente anterior. Além
disso, Cn deve possuir duas saídas: S, representado o resultado da soma na casa de
numeração n, e o “Vai 1” (VA), representando o excedente que deve ser somado à casa
de numeração imediatamente posterior.
Considerando o circuito Cn de forma genérica, para cada bit do número a ser
somado, bastaria unir os circuitos de soma em série. Segue-se um exemplo de uma
calculadora de números de quatro bits para A + B = S:

A3 A2 A1 A0
B3 B2 B1 B0
Va3 Ve3 Va2 Ve2 Va1 Ve1 Va0 Ve0
C3 C2 C1 C0 0

S4 S3 S2 S1 S0

Exemplo de esquema de um circuito de soma de número binário de 4 bits.


3

Uma implementação possível para o circuito lógico Cn seria:

Circuito geral de soma Cn


A B Ve Va S
1 1 1 1 1
1 1 0 1 0
1 0 1 1 0
1 0 0 0 1
0 1 1 1 0
0 1 0 0 1
0 0 1 0 1
0 0 0 0 0

Circuito lógico de soma (Cn) e sua tabela verdade [PIROPO].

A calculadora pode ser adaptada para soma de número negativos pelos métodos
de “complemento de 1” e “complemento de 2”, como descrito por Rui Mano, no
documento intitulado Representação de dados, publicado no site da PUC Rio. Nesse
caso, a pessoa que estiver utilizando a calculadora deve determinar a representação
correta dos números binários negativos que serão informados por meio de chaves ou
interruptores. Além disso, nos casos de “complemento de 1”, a calculadora deve possuir
uma chave seletora para redirecionar a saída do “Vai 1” da casa de numeração de maior
ordem para o “Vem 1” da primeira casa de numeração (ordem 0).

3 A tecnologia da calculadora simplificada.


A tecnologia adotada neste trabalho é extremamente simples e é exatamente esse
o objetivo. Serão utilizadas chaves liga/desliga manuais tipo H, que servirão de
dispositivo de entrada de dados, de memória e de portas lógicas. Para as portas lógicas
que não estão diretamente ligadas às entradas A e B do circuito, serão utilizados relés.
Os relés são uma espécie de chave H acionada eletricamente por uma bobina.
Mesmo não sendo relevante o desenvolvimento dos materiais e equipamentos,
qualquer economia de custo ainda é relevante, principalmente considerando o alto preço
da principal peça, o relé. Um relé pode custar mais de R$5,00 (cinco reais), preço muito
maior que muitos circuitos integrados com várias portas lógicas. O objetivo na
implementação é utilizar o menor número possível de relés. Para possibilitar esse
objetivo, foram analisados os estados intermediários de todas as portas lógicas do
circuito, variando de acordo com todas as combinações de entradas e saídas da tabela
verdade de Cn.
4

4 Representação interna de 1 e 0 e o sub-circuito de chaves CCn.


Uma característica do relé é que os terminais da bobina têm que possuir
voltagens diferentes para que ocorra corrente elétrica para gerar o campo magnético que
aciona sua chave H. Supondo-se, por convenção arbitrária, que cargas negativas
representem o número 0 e cargas positivas representem o número 1, a bobina do relé se
torna naturalmente uma porta XOR. Isso permite implementar a porta XOR com apenas
um relé.
Contudo, o circuito de chaves mecânicas não pode representar diretamente a
convenção de 0 sendo negativo e 1 sendo positivo, pois ele apenas impede ou permite a
formação da corrente elétrica, independente do sentido. Para que o circuito de chaves
possa representar essa convenção de tradução, ele deve ser adaptado.
A adaptação do circuito de chaves é baseada em dois circuitos em paralelo, um o
contrário do outro, ou seja, se no circuito principal o resultado for 0, no circuito
secundário a resposta deve ser 1 e vice-versa. Para isso, basta considerar outro circuito
lógico com as portas inversas das que já compõe o sub-circuito CCn. As portas XOR e
AND geram sinal de voltagem positiva e as inversoras, NXOR e NAND, geram sinal
negativo:

CCn CCn
A A B
B + SXOR
SXOR

+ SAND
-
+ SAND
-

-
Esquemas do circuito lógico CCn.

As saídas de cada par de portas lógicas, XOR-NXOR e AND-NAND, podem ser


unidas, pois elas nunca estarão ligadas simultaneamente, o que geraria um curto circuito.
Essa técnica dobra o número de portas lógicas do sub-circuito lógico das chaves,
chamado de CCn. Contudo, como o custo de uma chave 4H ou 6H é praticamente o
mesmo que uma chave 2H, a economia ainda é vantajosa, mesmo considerando que o
projeto das placas fica um pouco mais complicado e necessita mais furos e soldas.
5

5 Sub-circuito de relés CRn.


Com o sub-circuito CCn enviando sinais negativos e positivos, representando 0 e
1 respectivamente, é necessário adaptar o sub-circuito de relés CRn para considerar essa
convenção arbitrária de representação dos dígitos binários. A porta XOR é
implementada diretamente, conectando-se a entrada SXOR e Ve nos terminais da bobina
do relé. As portas AND e OR podem ser implementadas com um único relé. A
otimização pode ser analisada pelo estudo os estados intermediários de cada porta lógica
de CRn:
CCn
A(00001111) SXOR(00111100)
B(00110011)

SAND(00000011)

→A(0 0 0 0 1 1 1 1)
→B(0 0 1 1 0 0 1 1) CRn
SXOR(0 0 1 1 1 1 0 0)
S (01101001)
→Ve(0 1 0 1 0 1 0 1)
SAND(0 0 0 0 0 0 1 1)
and(00010100) Va(00010111)
←Va(0 0 0 1 0 1 1 1)
←S(0 1 1 0 1 0 0 1) SAND(00000011)

Análise de estados do circuito lógico Cn.

Quando a saída S e a entrada Ve são diferentes, a resposta de saída em Va é a


mesma que Ve. Quando a saída S e a entrada Ve são iguais, a resposta de saída em Va é
a mesma que a entrada de SAND. Estão, ligando-se a saída S e a entrada Ve nos
terminais da bobina do relé, NF é equivalente a SAND, NA é equivalente a Ve e C
representa Va. Segue-se o esquema da implementação de CRn:

CRn
CRn +
SXOR S
S -
Ve
SXOR

Va
SAND

Ve Va
SAND
Esquema do circuito CRn.
6

6 Circuito Cn e calculadora simplificada


Baseado nos sub-circuitos CCn e CRn, já considerando as lâmpadas (led)
informativas das entradas A e B e da resposta S, segue-se o esquema do circuito Cn:

Cn
CCn A CRn
B

+ S

- Va

Ve
Circuito Cn.

Por fim, segue-se o esquema da calculadora simplificada, supondo amplitude


numérica de seis bits e a chave seletora de complemento de 1 (C-1):

C5 C4 C3 C2 C1 C0
C-1
S S S S S S

A A A A A A
S6 B B B B B B

Circuito geral da calculadora simplificada.

Como o zero de entrada do circuito C0 deve ter voltagem negativa, a chave


seletora de “C-1” (complemento de 1), usada para subtração, deve ser do tipo 2H.
Quando a chave “C-1” estiver desligada, (1) a saída “Va” (Vai1) do circuito C5 se liga
ao o led S6, indicador do bit de ordem 6 (sétima casa de numeração) e (2) a entrada
“Ve” (Vem1) do circuito C0 se liga com a parte negativa da fonte de energia (indicando
zero). Quando a chave “C-1” estiver ligada, (1) a saída “Va” do C5 vai para a entrada
“Ve” de C0 e (2) o led indicador S6 fica apagado.
7

Foto da calculadora simplificada.

7 Considerações finais
As tecnologias apresentadas provavelmente não são aplicadas na construção de
calculadoras ou computadores desde a década de 50. Certamente, um único celular
moderno tem mais poder de processamento que qualquer computador já implementado
com relés. As válvulas logo substituíram os relés. Em meados da década de 60, a
tecnologia de semicondutores substituiu as válvulas com grande eficiência e economia.
Os semicondutores ainda são a atual tecnologia dos computadores digitais, mesmo que
ao longo dos anos tenha ocorrido grandes mudanças nos materiais. O que os
componentes semicondutores fazem é possibilitar o controle da passagem da corrente
elétrica. Ou seja, mesmo com todo avanço, todas essas tecnologias são tipos de chaves
tipo liga/desliga, com funcionamento similar aos interruptores, chaves e relés
apresentados neste trabalho.
Como proposto inicialmente, o trabalho conclui com um dispositivo funcional e
simples de soma e subtração de números binários. Os fundamentos necessários podem
ser encontrados nas referências bibliográficas, em especial na Monografia intitulada
“Calculadora simplificada, uma abordagem prática e didática sobre os fundamentos da
computação digital”, elaborada pelos presentes autores, que é trabalho de pesquisa
original que este artigo pretende divulgar os resultados.
Espera-se que o presente trabalho possa ser um instrumento que aproxime o
leitor, principalmente o aluno do curso de Ciência da Computação, dos princípios
básicos dos computadores digitais. A abordagem prática e simples do trabalho busca
estabelecer a intimidade necessária para criar curiosidade que possa levar a novos
conhecimentos e futuras pesquisas na área de circuitos digitais.
8

8 Referências

SAMPAIO, Frederico Biber, et al. Calculadora simplificada, uma abordagem


prática e didática sobre os fundamentos da computação digital. Cássio Filipe
Ferreira Santos, Frederico Martins Biber Sampaio, Guilherme Brandão Biber Sampaio,
Thiago Siqueira Caíres e Victor Moreira Melo. Monografia da Disciplina de
Metodologia Científica do primeiro período da noite do Curso de Ciência da
Computação da UNI-BH, Belo Horizonte, 07 mai. 2008.

GUIMARÃES, Ângelo de Moura. Introdução à ciência da computação. Ângelo


Moura Guimarães [e] Newton Alberto de Castilho Lages, Rio de Janeiro, LTC – Livros
Técnicos Científicos Editora S.A., 1985.

LEMOS, Delnir Monteiro de. Ministério da Educação e do Desporto, Fundação


Universidade Federal do Rio Grande, Colégio Técnico Industrial Prof. Mário Alquatti,
Curso de Geomática – Microinformática. Representação da Informação. Disponível
em: <http://www.cti.furg.br/~dmlemos/down/SUA/Sistemas.Numeracao.pdf>.
Acessado em: 04 mai. 2008.

MANO, Rui, Site Rio Datacentro, PUC Rio. Representação de dados. Disponível em:
<http://wwwusers.rdc.puc-rio.br/rmano/rd3compl.html>. Acessado em: 02 mai. 2008.

MOORE, Gordon E., Intel.com, Cramming more components onto integrated


circuits, Disponível em: <ftp://download.intel.com/museum/Moores_Law/Articles-
Press_Releases/Gordon_Moore_1965_Article.pdf>. Acessado em: 04 de mai. 2008.

NETO, José Maria Silveira, Wikipédia, a enciclopédia livre, Lei de Moore, Disponível
em: <http://pt.wikipedia.org/wiki/Lei_de_Moore>. Acessado em: 04 de mai. 2008.

PIROPO, Benito. Fórum PCs, Computadores XII: Aprendendo a Somar, Disponível


em: <http://www.forumpcs.com.br/coluna.php?b=133014>. Acessado em: 02 mai.
2008.

PIROPO, Benito. Fórum PCs, Computadores XI: Diagramas Lógicos, Disponível em:
<http://www.forumpcs.com.br/coluna.php?b=131250>. Acessado em: 02 mai. 2008.

MAGELLA, Geraldo, et al. UNIUBE - Universidade de Uberaba. ENGENHARIA


ELÉTRICA. MATERIAIS E DISPOSITIVOS ELÉTRICOS. Relés e chave fim de
curso. Geraldo Magella, Leonel Caetano, Emerson Soares, Ulisses Irineu, Rodrigo
Vogado, Thiago Francisco. Disponível em:
<www.teips.com.br/fcardozo/materiais/rchave.doc>. Acessado em: 09 mai. 2008.

Você também pode gostar