Você está na página 1de 79

CURSO DE

ATUALIZAO EM ELETRNICA
DIGITAL E MICROPROCESSADORES


MDULO I
CONCEITOS GERAIS DE SISTEMAS COMPUTACIONAIS

















DEPARTAMENTO DE ENGENHARIA ELETRNICA/UFRJ
PROF: VICTOR PAULO PEANHA ESTEVES
REALIZAO: SEDEP/REDUC


Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.1
I.1. O SER HUMANO E O COMPUTADOR
Desde o seu aparecimento na Terra o homem percebeu que para dominar a natureza e os outros
animais necessitava de ferramentas (prteses) para ampliar sua capacidade fsica. Desta forma, inventou
a alavanca, o machado, a lana e a faca, entre outras ferramentas.
Com a evoluo o homem comeou a construir objetos que o auxiliavam no clculo, como, por
exemplo o baco. E desde ento o homem vem tentando construir mquinas cada vez mais poderosas
que sejam como prteses para o seu prprio crebro, auxiliando-o na soluo de problemas cada vez
mais complexos.
De forma simplificada, e sem preocupao com exatido biolgica, podemos analisar o homem
segundo o esquema abaixo:
SENTIDOS MSCULOS
MEMRIA
PARTE
DECISRIA
CREBRO
SER HUMANO
M
E
I
O E X T E
R
N
O

Figura I.1
Como visto acima, o homem composto de sentidos, crebro e msculos. O crebro, por sua
vez, subdividido em memria e parte decisria.
Atravs dos sentidos o homem recebe do meio externo todas as informaes. Estas podem ser
captadas por meio da viso, da audio, do olfato, do paladar e do tato.
As informaes podem ser armazenadas na memria, que pode guardar informaes visuais
(memria visual), auditivas (memria auditiva) e assim por diante.
Os msculos, que so comandados pela parte decisria do crebro, so os instrumentos atravs
dos quais o homem age sobre o meio externo.
Um exemplo de comportamento pode mostrar de que forma se relacionam os quatro
componentes bsicos do ser humano. Um centro-avante de futebol, dentro da pequena rea adversria v
uma bola alta que lhe cruzada da linha de fundo. Na memria deste jogador existe a lembrana de que,
toda vez que a bola vem pelo alto, ele deve pular e cabecea-la de encontro ao gol adversrio. Em fraes
de segundo ele busca na memria esta informao e a parte decisria de seu crebro decide que ele deve
pular. O crebro ento comanda os msculos de seu corpo a saltar e atingir a bola com a cabea, de
forma a marcar o gol.
O computador muito semelhante a este esquema simplificado do ser humano. Um computador
composto basicamente de processador, memria, dispositivos de entrada e dispositivos de sada. A
seguir temos o esquema simplificado de um computador.
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.2
DISPOSITIVOS
DE
SADA
DISPOSITIVOS
DE
ENTRADA
PROCESSADOR
MEMRIA
COMPUTADOR
M
I
E
O E X T E
R
N
O

Figura I.2
O processador a parte do computador que faz os clculos e controla todas as outras partes.
Podemos fazer uma analogia entre o processador e a parte decisria do crebro humano.
A memria do computador funciona de forma semelhante memria do homem, guardando
informaes que podem ser colocadas e retiradas pelo processador a qualquer momento.
Atravs dos dispositivos de entrada possvel fazer entrar informaes no computador. Como
um exemplo de dispositivo de entrada temos o teclado. Atravs do teclado uma pessoa pode digitar
informaes que sero utilizadas pelo computador. Como outros exemplos de dispositivos de entrada
temos "mouse", "scanner", unidade de disco flexvel, "joystick" etc. Comparando com os seres
humanos, os dispositivos de entrada so os sentidos (viso, audio etc).
Os dispositivos de sada so os responsveis pela atuao do computador no mundo externo (da
mesma forma que os msculos no ser humano). Como exemplos de dispositivos de sada temos:
impressora, "plotter", monitor de vdeo, unidade de disco flexvel etc.
A relao entre as partes do computador pode ser exemplificada na figura I.3.
Uma secretria digita um relatrio utilizando um teclado (dispositivo de entrada). O processador
controla a entrada do texto e armazena-o organizadamente na memria. Ao final da digitao, a
secretria digita um comando para imprimir o relatrio. Este comando interpretado pelo processador,
que ir transferir o texto, que est na memria, para a impressora (dispositivo de sada). Aps isto a
secretria pode digitar um outro comando para salvar (gravar) em disco este relatrio.
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.3
SECRETRIA
TECLADO
PROCESSADOR
IMPRESSORA
DISQUETE
MEMRIA
RELATRIO
askskclclclcl
askskclclclcl
askskclclclcl
askskclclclcl
RELATRIO
astrudud
astrudud
astrudud

Figura I.3

Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.4
I.2. O SURGIMENTO DOS COMPUTADORES
Em 1822, o matemtico ingls Charles Babage criou uma mquina que executava
automaticamente uma seqncia pr definida de operaes matemticas. Esta mquina considerada
como o primeiro computador e conhecida hoje como mquina de Babage. A mquina de Babage era
inteiramente mecnica, e deste fato resultava em uma preciso pequena devido s dificuldades
tecnolgicas da poca. No entanto o que diferia a mquina de Babage das calculadoras mecnicas, j
existentes na poca de suainveno era a introduo do conceito de programao. Este conceito muito
importante s veio a ser implementado na prtica mais de um sculo depois.
Durante a Segunda Grande Guerra, esforos de ambas as partes resultaram na construo de
computadores eletromecnicos que eram usados para clculos de balstica.
O computador eletrnico surgiu dois anos aps o fim da guerra, em 1947. Dois pesquisadores da
Universidade da Pensilvnia desenvolveram um computador que chamaram de ENIAC. O ENIAC
possua nada menos de 18.000 vlvulas a vcuo. Por ser totalmente eletrnico as informaes eram
transferidas em velocidade milhares de vezes maior que nos seus precursores eletromecnicos.
Os mesmos pesquisadores que criaram o ENIAC comearam a desenvolver uma nova verso de
computador eletrnico que foi comercializada pela Sperry Rand Corporation em 1951, sendo portanto o
primeiro computador comercial.
Com o surgimento e aplicao da tecnologia dos semicondutores as vlvulas dos computadores
foram substitudas por circuitos transistorizados, diminuindo o tamanho e o consumo dos computadores.
Desde o inicio dos anos 50 at os dias de hoje, empresas como a IBM, a Burroughs, entre outras
milhares de empresas no mundo todo, vm lanando todo ano computadores cada vez mais velozes, que
consumem cada vez menos energia eltrica e ocupam espaos cada vez menores.

Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.5
I.3. OS SISTEMA DE NUMERAO E O COMPUTADOR:

I.3.1. O SISTEMA DECIMAL
O sistema de numerao que usamos no dia-a-dia o decimal, ou sistema de base 10. A origem
do sistema decimal foi o costume adquirido pelos homens de contar usando os dedos das mos. Como
so dez dedos o sistema decimal possui dez dgitos ou algarismos (0,1,2,3,4,5,6,7,8,9). No sistema
decimal cada algarismo tem um valor absoluto e um valor relativo. O valor absoluto do algarismo a
quantidade que o algarismo representa. J o valor relativo depende da posio em que o algarismo est
colocado dentro do nmero. Para esclarecer melhor o valor relativo dos algarismos dentro de um
nmero, vejamos o seguinte exemplo:
O nmero 8579 possui 4 algarismos. O algarismo "9", que est colocado mais a direita,
representa a quantidade de unidades, o algarismo "7" representa a quantidade de dezenas, o "5" a
quantidade de centenas e o "8" a quantidade de milhares. Podemos ento afirmar que 8579 so 8
milhares (ou 8 conjuntos de mil unidades) mais 5 centenas (ou 5 conjuntos de cem unidades) mais 7
dezenas (ou 7 conjuntos de dez unidades) mais 9 unidades, ou seja:
8579 =8 X 1000 +5 X 100 +7 X 10 +9 X 1
ou
8579 =8 X 10
3
+5 X 10
2
+7 X 10
1
+9 X 10
0

Portanto, qualquer nmero decimal pode ser decomposto em componentes de potncias de base
10.

I.3.2. O SISTEMA BINRIO
Um computador para armazenar nmeros em base 10 teria de ser capaz de possuir circuitos que
assumissem dez estados de tenso distintos, que representariam os algarismos decimais (0,1,..,9).
bvio que um computador assim seria de implementao complicada. Por esta razo, desde o incio os
computadores foram idealizados para que as quantidades neles armazenadas estivessem em sistema
binrio (base 2), onde s existem dois algarismos (0 e 1) e, portanto, os circuitos eletrnicos s
necessitam assumir dois estados distintos.
Assim como na base 10, os algarismos em base 2 tm um valor absoluto e um valor relativo que
depende da posio em que o algarismo est colocado no nmero.
Tambm de forma similar ao sistema decimal, qualquer nmero no sistema binrio pode ser
decomposto em componentes de base 2, como por exemplo:
(1101)
2
=1 X 2
3
+1 X 2
2
+0 X 2
1
+1 X 2
0

ou
(1101)
2
=1 X 8 +1 X 4 +0 X 2 +1 X 1 =13
Como no exemplo acima, toda vez que representarmos um nmero em uma base que no a base
10, este nmero estar entre parnteses e com a base expressa direita e abaixo do parntese mais
direita. Outra notao utilizada para representar um nmero binrio a colocao de uma letra b
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.6
minscula ("b") ou maiscula ("B") ao final da seqncia de algarismos binrios. Veja o exemplo
abaixo:
(1101)
2
=1101b =1101B

I.3.3. CONVERSO DE DECIMAL PARA BINRIO E VICE VERSA
A decomposio de um nmero binrio em suas componentes de base 2, como visto no exemplo
anterior, a forma de converso da base 2 para a base 10. Portanto, o nmero binrio (1101)
2
equivale a
13 em decimal.
A converso de decimal para binrio realizada dividindo-se sucessivamente o nmero decimal
que se deseja converter por 2 at que o resultado da diviso seja 0. O nmero binrio convertido
composto pelos restos das divises sucessivas postos em ordem inversa. Vejamos o exemplo da
converso do nmero decimal 13 para base 2:

2 13
2 6 1
3 0 2
1 1 2
0 1


Ou seja (13)
10
=(1101)
2

Esta regra uma regra de converso geral da base 10 para qualquer base. Para mostrar que esta
regra correta podemos fazer a converso de um nmero decimal para a prpria base 10. Embora isto
no tenha utilidade prtica nenhuma, esta converso poder ajudar a esclarecer o porqu da regra.

10 4813
10 481 3
48 1 10
8 4 10
0 4


Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.7
I.3.4. O SISTEMA HEXADECIMAL:
Outra base muito utilizada pelo computador a base 16 ou sistema hexadecimal.
O sistema hexadecimal possui 16 algarismos (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E e F). Pode parecer
estranho primeira vista termos letras como algarismos, mas como a base 16 comeou a ser usada com
o advento do computador e como na poca s haviam disponveis 10 algarismos indo-arbicos
(0,1,2,.,8,9), havia a opo de se criar mais 6 representaes nova para os 6 algarismos restantes, no
entanto optou-se por utilizar as 6 primeiras letras do alfabeto.
Como fomos treinados desde pequenos a raciocinar na base 10 a tabela abaixo nos mostra o
valor absoluto em decimal de cada algarismo hexadecimal.

Hexadecimal Decimal
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
A 10
B 11
C 12
D 13
E 14
F 15

Como na base 10, os nmeros hexadecimais so compostos por algarismos justapostos onde a
posio de cada algarismo representa o seu valor relativo. Portanto, o nmero (9A5C)
16
pode ser
decomposto em componentes de potncias de base 16, como visto a seguir:

(9A5C)
16
=9 X 16
3
+A X 16
2
+5 X 16
1
+C X 16
0

ou
(9A5C)
16
=9 X 4096 +10 X 256 +5 X 16 +12 X 1
=39516
No exemplo acima utilizamos a notao de colocarmos o nmero hexadecimal entre parnteses e
a indicao da base 16 como subescrito. A outra forma de representarmos um nmero hexadecimal
colocando-se a letra ag maiscula ("H") ou minscula ("h") no final da seqncia de algarismos
hexadecimais. Veja o exemplo abaixo:
(9A5C)
16
=9A5Ch =9A5CH

Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.8
I.3.5. CONVERSO DE DECIMAL PARA HEXADECIMAL E VICE VERSA
A converso de decimal para hexadecimal e de hexadecimal para decimal segue as mesmas
regras que as converses de binrio para decimal e de decimal para binrio.
Para converter um nmero hexadecimal para decimal basta decompor o nmero em
componentes de potncias de base 16, como j visto em exemplo anterior.
Para converter um nmero decimal para hexadecimal basta dividir sucessivamente o nmero por
16 at que o resultado da diviso seja zero. Os restos das divises sucessivas postos em ordem inversa
formam o nmero em hexadecimal. Vejamos o exemplo abaixo:

16 39772
16 2485 12
155 5 16
11 9 16
0 9
(C)
(B)


Ou seja (39772)
10
=(9B5C)
16


I.3.6. CONVERSO DE HEXADECIMAL PARA BINRIO E VICE VERSA
Podemos notar pela tabela abaixo que com 4 algarismos binrios se pode representar
quantidades de 0 a 15 em decimal ou de 0 a F em hexadecimal.

Binrio Hexadecimal Decimal
0000 0 0
0001 1 1
0010 2 2
0011 3 3
0100 4 4
0101 5 5
0110 6 6
0111 7 7
1000 8 8
1001 9 9
1010 A 10
1011 B 11
1100 C 12
1101 D 13
1110 E 14
1111 F 15

Utilizando esta propriedade podemos converter nmeros binrios em nmeros hexadecimais
com o simples agrupamento de conjuntos de 4 algarismos binrios e utilizando a tabela acima para
converter estes conjuntos de algarismos binrios em algarismos hexadecimais. Por exemplo:
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.9

(0111110011011000)
2

(0111 1100 1101 1000)
2


(7 C D 8)
16

Para converter de hexadecimal para binrio utilizamos o processo inverso substituindo cada
algarismo hexadecimal pelo conjunto de 4 algarismos binrios correspondentes.
No por acaso que utilizamos o sistema hexadecimal quando lidamos com o computador. Na
verdade, todos os valores guardados e processados pelo computador esto no sistema binrio. No
entanto quantidades muito grandes necessitam de sequncias muito grandes de algarismos binrios. S
para termos uma noo, para armazenarmos o nmero 39516 no computador precisamos da seguinte
seqncia de algarismos binrios:
1001101001011100
claro que ao entrarmos estas sequncias de zeros e uns no computador a possibilidade de
cometermos um erro muito grande. O sistema hexadecimal, ao agrupar conjuntos de 4 algarismos
binrios, torna-se uma forma mais resumida de se introduzir os dados nos computadores. muito mais
simples digitarmos "9A5C", que a representao hexadecimal da quantidade 39516, do que
"1001101001011100", que a representao binria desta mesma quantidade. Como o computador
internamente s armazena valores 0 ou 1, aps digitarmos os algarismos hexadecimais tem que haver
internamente uma converso automtica para a seqncia de algarismos binrios correspondente.

I.3.7. O SISTEMA OCTAL:
Outra base utilizada em sistemas computacionais a base 8 ou sistema octal. A base 8
utilizada na programao dos PLCs da Sistema.
O sistema octal possui 8 algarismos (0,1,2,3,4,5,6 e 7). Portanto um nmero representado na
base 8 no pode ter os algarismos 8 e 9 , que so utilizados somente nas bases 10 e 16.
Os valores absolutos dos algarismos na base 8 so exatamente os mesmos que na base 10, como
podemos ver na tabela abaixo. A nica diferena que na base 8 os valores acima de 7 no so
representados por um nico algarismo e sim por um conjunto de algarismos.

Octal Decimal
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7

Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.10
Como na base 10, os nmeros octais so compostos por algarismos justapostos onde a posio
de cada algarismo representa o seu valor relativo. Portanto, o nmero (7452)
8
pode ser decomposto em
componentes de potncias de base 8, como visto a seguir:

(7452)
8
=7 X 8
3
+4 X 8
2
+5 X 8
1
+2 X 8
0

ou
(7452)
8
=7 X 512 +4 X 64 +5 X 8 +2 X 1
=3882

I.3.8. CONVERSO DE DECIMAL PARA OCTAL E VICE VERSA
A converso de decimal para octal e de octal para decimal segue as mesmas regras que as
converses de binrio para decimal e de decimal para binrio.
Para converter um nmero octal para decimal basta decompor o nmero em componentes de
potncias de base 8, como j visto em exemplo anterior.
Para converter um nmero decimal para octal basta dividir sucessivamente o nmero por 8 at
que o resultado da diviso seja zero. Os restos das divises sucessivas postos em ordem inversa formam
o nmero em octal. Vejamos o exemplo abaixo:

8 3882
485 2
60 5
4 7
0 7
8
8
8

Ou seja (3882)
10
=(7452)
8


I.3.9. CONVERSO DE OCTAL PARA BINRIO E VICE VERSA
Podemos notar pela tabela abaixo que com 3 algarismos binrios se pode representar
quantidades de 0 a 7 em decimal ou em octal.

Binrio Octal Decimal
000 0 0
001 1 1
010 2 2
011 3 3
100 4 4
101 5 5
110 6 6
111 7 7

Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.11
Utilizando esta propriedade podemos converter nmeros binrios em nmeros octais com o
simples agrupamento de conjuntos de 3 algarismos binrios e utilizando a tabela acima para converter
estes conjuntos de algarismos binrios em algarismos octais. Por exemplo:

(111100101000)
2

(111 100 101 000)
2


(7 4 5 0)
8

Para converter de octal para binrio utilizamos o processo inverso substituindo cada algarismo
octal pelo conjunto de 3 algarismos binrios correspondentes.
Assim como o sistema hexadecimal a representao de quantidades no sistema octal uma
forma mais resumida de introduo de dados nos sistemas computacionais.
omputadores. muito mais simples digitarmos "7450", que a representao octal da quantidade 3880,
do que "111100101000", que a representao binria desta mesma quantidade. Como o computador
internamente s armazena valores 0 ou 1, aps digitarmos os algarismos octais tem que haver
internamente uma converso automtica para a seqncia de algarismos binrios correspondente.


I.3.10. ARITMTICA BINRIA
A aritmtica binria anloga com a aritmtica decimal. Neste item iremos ver a adio,
subtrao, multiplicao e diviso binria.

I.3.10.1. ADIO BINRIA
Assim como na adio decimal, para facilitar, podemos ter a tabuada da soma binria.
TABUADA DA SOMA
BINRIA:
0 +0 =0
0 +1 =1
1 +0 =1
1 +1 =0 e VAI UM

A partir da tabuada poderemos fazer qualquer adio de dois ou mais nmeros binrios com
qualquer quantidade de algarismos. O processo semelhante a adio decimal. Coloca-se um nmero
em baixo do outro alinhando-se pelo algarismo de menor valor, ou seja o algarismo mais a direita. Vai
se somando dois a dois os algarismos na mesma posio em ambos os nmeros. Quando a soma de dois
algarismos ultrapassa 1 ento soma-se 1 aos algarismos da casa imediatamente a esquerda.
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.12
Vejamos o exemplo a seguir.
(110101010)
2
+ (111110011)
2

1 1 0 1 0 1 0 1 0 PASSO 1
+ 1 1 1 1 1 0 0 1 1
______________________________
1

1 VAI UM
1 1 0 1 0 1 0 1 0 PASSO 2
+ 1 1 1 1 1 0 0 1 1
______________________________
0 1

1
1 1 0 1 0 1 0 1 0 PASSO 3
+ 1 1 1 1 1 0 0 1 1
______________________________
1 0 1

1 1 0 1 0 1 0 1 0 PASSO 4
+ 1 1 1 1 1 0 0 1 1
______________________________
1 1 0 1

1 1 0 1 0 1 0 1 0 PASSO 5
+ 1 1 1 1 1 0 0 1 1
______________________________
1 1 1 0 1

1 VAI UM
1 1 0 1 0 1 0 1 0 PASSO 6
+ 1 1 1 1 1 0 0 1 1
______________________________
0 1 1 1 0 1

VAI UM
1 1
1 1 0 1 0 1 0 1 0 PASSO 7
+ 1 1 1 1 1 0 0 1 1
_______________________________
0 0 1 1 1 0 1

VAI UM
1 1
1 1 0 1 0 1 0 1 0 PASSO 8
+ 1 1 1 1 1 0 0 1 1
_______________________________
1 0 0 1 1 1 0 1
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.13

VAI UM
1 1
1 1 0 1 0 1 0 1 0 PASSO 9
+ 1 1 1 1 1 0 0 1 1
________________________________
1 1 0 0 1 1 1 0 1

1
1 1 0 1 0 1 0 1 0 PASSO 10
+ 1 1 1 1 1 0 0 1 1
_______________________________
1 1 1 0 0 1 1 1 0 1

I.3.10.2. SUBTRAO BINRIA
Como os circuitos eletrnicos so mais apropriados para realizarem soma a subtrao binria
normalmente realizada utilizando uma regra prtica que coloca o subtrator em sua representao
complemento a 2 e depois ao invs de uma subtrao realizaremos uma soma.
O complemento a dois de um nmero binrio obtido seguindo-se os seguintes passos:
1. Coloca-se um zero no significativo a esquerda do um mais significativo do nmero.
2. Inverte-se todos os algarismos, ou seja, troca-se zeros por uns e uns por zeros.
3. Soma-se um.
Vejamos um exemplo:

Ento 10101 o complemento a dois de 1011 e portanto a subtrao e a soma abaixo so
similares quando despreza-se o ltimo VAI UM.

1 0 0 0 1 (17)
10
1 0 0 0 1
- 1 0 1 1 (11)
10 +
1 0 1 0 1
____________________________ ____________________
0 1 1 0 (06)
10
1 0 0 1 1 0
DESPREZA-SE

Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.14
I.3.10.3. MULTIPLICAO BINRIA
A multiplicao binria tambm muito simples. Coloca-se os dois nmeros um em baixo do
outro, alinhado pela direita e vai se multiplicando o de cima por cada algarismo do de baixo. O resultado
de cada uma destas multiplicaes vo sendo colocadas uma em baixo da outra deslocando-se sempre
uma casa para a esquerda. Abaixo fornecemos a tabuada de multiplicao binria:

TABUADA DA
MULTIPLICAO
BINRIA:
0 x 0 =0
0 x 1 =0
1 x 0 =0
1 x 1 =1

Vejamos o exemplo a seguir:

1 1 0 0 1 1 0
x 1 0 1 0 PASSO 1
____________________
0 0 0 0 0 0 0

1 1 0 0 1 1 0
x 1 0 1 0 PASSO 2
_____________________
0 0 0 0 0 0 0
1 1 0 0 1 1 0

1 1 0 0 1 1 0
x 1 0 1 0 PASSO 3
____________________
0 0 0 0 0 0 0
1 1 0 0 1 1 0
0 0 0 0 0 0 0

1 1 0 0 1 1 0
x 1 0 1 0 PASSO 4
____________________
0 0 0 0 0 0 0
1 1 0 0 1 1 0
0 0 0 0 0 0 0
1 1 0 0 1 1 0

1 1 0 0 1 1 0
x 1 0 1 0 PASSO 5
_____________________
0 0 0 0 0 0 0
1 1 0 0 1 1 0
+ 0 0 0 0 0 0 0
1 1 0 0 1 1 0
_______________________________
1 1 1 1 1 1 1 1 0 0
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.15
I.3.10.4. DIVISO BINRIA
A diviso realizada da mesma forma que em decimal. A seguir damos um
exemplo de diviso binrio 1 1 0 1 1 1 (55) 1 0 1 (5):

1 1 0'1 1 1 1 0 1
1
- 1 0 1
0 0 1
1 1 0 1'1 1 1 0 1
0
- 1 0 1
0 0 1
1
1
1 1 0 1 1'1 1 0 1
1
- 1 0 1
0 0 1 1
1 0
1
1 0 1
1 1 0 1 1 1 1 0 1
1
- 1 0 1
0 0 1 1 1
1 0 1
1
- 1 0 1
0 1 0
1 0 1
PASSO 1
PASSO 2
PASSO 3
PASSO 4
-
0 1 0
0 0 0


Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.16
I.3.11 EXERCCIOS:

1. Converta os seguintes nmeros binrios para a base 10:
a). (10010010)
2
=
b). (01100011)
2
=
c). (11110010)
2
=
d). (10000000)
2
=

2. Converta os seguintes nmeros decimais para a base 2:
a). 129 =
b). 35647 =
c). 65535 =

3. Converta os seguintes nmeros hexadecimais para a base 10:
a). (9AB3)
16
.=
b). (12EF)
16
=
c). (1000)
16
=

4. Converta os seguintes nmeros octais para a base 10:
a). (6523)
8
.=
b). (1267)
8
=
c). (1000)
8
=

5. Converta os seguintes nmeros decimais para as bases 16 e 8:
a). 127 =
b). 4876 =
c). 13876 =

6. Converta os seguintes nmeros de hexadecimal para binrio:
a). (9AB3)
16
=
b). (12EF)
16
=
c). (1000)
16
=

7. Converta os seguintes nmeros de binrio para hexadecima e para octal:
a). (1001101100011110)
2
=
b). (110111000110011)
2
=
c). (1001110011010)
2
=
d). (1110000000)
2
=

Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.17
7.Efetue as seguintes operaes:
a). (10010110)
2
b). (11001110001)
2

- (01111011)
2
+ (11001101110)
2

__________________________________ __________________ ____________________




c). (11110010)
2

x (110110)
2
_____________________________







d)
11011000 1100









e). (A43C)
16
( )
2

+ (CDEF)
16
+ ( )
2

______________________________ ______________________________________________________________
( )
16
( )
2

Sugesto: Converta para a base 2, some na base 2 e converta de volta para a base 16.

Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.18
I.4. O PROCESSADOR
O processador, normalmente chamado de CPU (Central Processing Unit) a parte do
computador que controla todo o sistema. No entanto, no o processador que decide o que deve ser
feito pelo sistema. O usurio, ou programador, que deve informar ao processador quais so os passos
que ele deve executar para desempenhar uma determinada tarefa. Na realidade, o processador um
executor de tarefas.
A seqncia de passos ou instrues (comandos) denomina-se programa e introduzida no
computador atravs de um dispositivo de entrada (como, por exemplo, o teclado) e armazenada na
memria. Aps armazenada na memria, o processador busca uma a uma as instrues e as vai
executando. Esta situao semelhante a um recruta que no incio do dia recebe do sargento uma srie
de ordens. O recruta vai memorizando as instrues e, depois que o sargento acaba de dar as instrues,
ele inicia a execuo das tarefas na ordem em que o sargento as deu.
Tem de ficar bem entendido que o processador no faz nada que no seja ordenado pelo
programa.
As instrues (de um programa) armazenadas na memria nada mais so que nmeros binrios
(ou seqncia de zeros e uns), na verdade as nicas coisas que so entendidas pelo computador.
Portanto, para cada funo que queremos que o processador execute, deveremos fornecer a ele um
conjunto de zeros e uns que ele previamente conhea. Este conjunto conhecido como cdigo de
mquina.







Figura I.4 - Cdigos deMquina
Quando um processador projetado e implementado (construdo), o projetista determina uma
tabela de instrues e seus respectivos cdigos de mquina. Esta tabela fornecida aos programadores,
que ento podem colocar na memria uma seqncia de cdigos de mquina a serem interpretados pelo
processador.
A codificao de instrues semelhante ao cardpio de alguns restaurantes que possuem
cdigos (nmeros) para os diversos pratos servidos. O cliente pede ao garom, por exemplo, um fil
com fritas e uma lazanha. O garom anota o pedido pelos cdigos dos pratos e ento entrega esses
cdigos para o cozinheiro. Este decodifica, ou seja, interpreta os pedidos e prepara a comida.
Os cdigos dos pratos so diferentes para cada restaurante. Portanto, se no restaurante A o fil
com fritas tem cdigo 23, no restaurante B o mesmo fil com fritas pode ter cdigo 55. Imaginemos que
um garom novato no restaurante A, que tenha trabalhado durante muito tempo no restaurante B,
100011100
100011110
MEMRIA
Cdigos de mquina
PROCESSADOR
(CPU)
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.19
entregue ao cozinheiro um pedido utilizando os cdigos do cardpio do restaurante B. Provavelmente o
cliente no ter no final o prato desejado.
Algo semelhante acontece com os processadores. Cada processador possui seu prprio conjunto
de cdigos de mquina e funes e que geralmente no coincidem com os cdigos de outro processador.
Portanto uma seqncia de cdigos de mquina (ou programa) "escrita" para que o processador A
execute uma determinada tarefa no ir funcionar do mesmo modo se aplicada ao processador B.
No incio da utilizao dos computadores, a programao era feita diretamente, escrevendo-se
em binrio o cdigo de mquina das instrues que se desejava que o processador executasse. Esta
tarefa, alm de enfadonha e muito propensa a erros, possua o inconveniente de s servir para o
processador que se estava utilizando.
Este inconveniente impossibilitava a utilizao, por um processador, de programas escritos para
outro processador. Outro inconveniente em se escrever programas diretamente utilizando os cdigos de
mquina que os programas se tornam muito extensos e de difcil compreenso quando se deseja que o
computador execute tarefas mais complexas.

PROGRAMA FONTE
ESCRITO EM
PASCAL
COMPILADOR
PASCAL 8088
COMPILADOR
PASCAL 68000
CDIGO DE
MQUINA
CDIGO DE
MQUINA
8088
68000
IBM XT
APPLE MACINTOSH

Figura I.5
Para solucionar estes tipos de inconvenientes foram criadas linguagens-padro de programao,
tais como FORTRAN, Pascal e C, cuja sintaxe independe do processador que se vai utilizar para
executar o programa. Os programas escritos nestas linguagens so iguais para qualquer tipo de
processador. A diferena s se d no momento em que o programa traduzido para os cdigos de
mquina do processador utilizado. Esta traduo chamada de compilao e os programas que
executam esta traduo so conhecidos como compiladores. Para cada tipo de processador existe um
compilador diferente, no entanto as linguagens-padro (ditas de alto nvel) so iguais. Por exemplo: um
mesmo programa escrito em Pascal pode ser compilado (traduzido) em cdigo de mquina do
processador 8088 (utilizado nos microcomputadores IBM XT compatveis) ou do processador 68000
(utilizado nos microcomputadores Apple Macintosh). A diferena que para gerar o cdigo de mquina
8088 utilizado um compilador Pascal para o processador 8088 e para gerar o cdigo de mquina
68000 utilizado um compilador Pascal para o processador 68000, como visto na figura I.5.
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.20
I.5. MEMRIA
A memria a parte do computador que armazena informaes.
Como visto no item anterior uma das funes bsicas da memria armazenar as sequncias de
cdigos de mquinas (ou programas), que sero interpretados e executados pelo processador.
Outra funo da memria armazenar os dados. Por dados entendem-se todas as informaes a
serem processadas pelo computador, bem como as respostas deste processamento.
Por exemplo, se o processador executar um programa simples que some dois nmeros inteiros,
tanto os dois nmeros a serem somados quanto o resultado da soma so considerados dados e podem
ser armazenados na memria.

I.5.1. CLASSIFICAO DAS MEMRIAS:
A memria de um sistema computacional pode ser dividida em dois tipos bsicos: memria
primria e memria secundria. A memria primria composta de dispositivos semicondutores
("chips") que podem ser acessados, a qualquer momento, diretamente pelo processador. A memria
secundria, tambm conhecida como memria de massa composta de dispositivos de armazenamento
magntico (discos flexveis, discos rgidos ou Winchesters, fitas magnticas, etc.) ou tico (CD ROM)
que armazenam a maior parte das informaes (programas e dados). Todos os programas que podem ser
executados pelo processador ficam guardados na memria de massa at o momento de sua execuo.
Neste instante o programa transferido da memria de massa para a memria principal e a partir desta
executado. Por ter de armazenar muita informao a memria secundria normalmente tem uma
capacidade de armazenamento centenas ou milhares de vezes maior que a memria principal, que s
precisa guardar a cada momento os dados e o programa que esto sendo executados pelo processador.
A memria principal pode ser classificada quanto a funo, volatilidade e tipo de acesso.

I.5.1.1. Quanto a funo:
Quanto a funo as memrias podem ser:

I.5.1.1.1. Memria de programas
As memrias de programas armazenam cdigos de mquina que sero lidos e executados pelo
processador.

I.5.1.1.2. Memria de dados:
As memrias de dados armazenam dados de entrada e dados de sada do processamento.

Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.21
I.5.1.2. Quanto ao tempo de reteno das informaes (ou volatilidade):

I.5.1.2.1. Memrias permanentes:
Memrias permanentes so aquelas cuja manuteno das informaes nela armazenadas
independe do fornecimento de energia eltrica externa. Este tipo de memria s necessita de energia
eltrica externa no momento em que desejamos "escrever" (colocar) ou "ler" (retirar) as informaes.

I.5.1.2.2. Memrias volteis:
Memria voltil aquela que s mantm as informaes enquanto h alimentao de energia
eltrica externa. Como na memria permanente, as informaes s podem ser lidas ou escritas com a
alimentao de energia eltrica externa.
Podemos transformar uma memria voltil em memria permanente colocando-se uma bateria
para aliment-la. Desta forma, enquanto a bateria no perder a sua carga as informaes se mantm.
Portanto, o conjunto memria voltil mais bateria pode ser considerado como memria permanente.

I.5.1.3. Quanto ao tipo de acesso:

I.5.1.3.1. Memrias de Apenas Leitura:
As memrias de apenas leitura ou ROM (Read Only Memory) como so conhecidas
popularmente, como o prprio nome j diz s podem ser lidas pelo processador. O processador no pode
escrever informaes em uma ROM. As informaes so escritas na ROM durante a sua fabricao e
no podem jamais ser alteradas pelo usurio. A ROM classificada quanto a volatilidade como
memria permanente, pois uma vez cortado o fornecimento de energia eltrica o contedo da ROM se
mantm intacto.

PROM (Programmable Read Only Memory):
Uma verso modificada de ROM a PROM (Programmable Read Only Memory). Como seu
nome diz, a PROM vem vazia de fbrica e pode ser programada (ou gravada) uma nica vez pelo
usurio, ou seja, pelo projetista de sistemas digitais.
As PROMs so formadas por circuitos semicondutores especiais que funcionam como fusveis.
Assim comos os fusveis estes circuitos especiais conduzem corrente eltrica. No entanto eles podem se
queimar interrompendo o fluxo de corrente. Os dois nveis lgicos so representados pelos fusveis
intactos (nvel lgico um) ou queimados (nvel lgico zero). As PROMs so fabricadas e
comercializadas com todos estes fusveis intactos (conduzindo corrente), ou seja, com todos os bits em
nvel lgico um. Cabe ao usurio "queimar" os fusveis, nas posies necessrias, para formar o
contedo desejado.
Para programar a PROM o usurio necessita de um aparelho especial. Este aparelho aplica, nas
posies desejadas, pulsos de tenso (12,5 ou 21 volts) bem acima da tenso de operao (5 volts). Estas
tenses altas fazem com que os fusveis se queimem, por este motivo chama-se "queimar uma PROM" o
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.22
ato de programar atravs destes aparelhos especiais, que tambm so conhecidos vulgarmente como
queimadores de PROMs, o contedo de uma memria PROM. Se houver um erro na programao de
uma PROM no possvel apagar este erro e nem escrever nada por cima. A nica alterao possvel
transformar o contedo de um bit de nvel um (fusvel intacto) para nvel zero (fusvel queimado). Como
de forma geral as alteraes necessrias tambm envolvem transformaes de zero para um o usurio,
neste caso, dever jogar fora a PROM com o erro e gravar uma outra.

EPROM (Erasable Programmable Read Only Memory):
No sentido de se evitar o desperdcio citado anteriormente, foi desenvolvida a EPROM
(Erasable Programmable Read Only Memory). A informao gravada na EPROM com um aparelho
semelhante ao utilizado para gravao de PROMs, no entanto estas informaes podem ser apagadas
expondo um pequeno orifcio existente na parte superior da EPROM luz ultravioleta. Normalmente as
EPROMs gravadas tm uma pequena etiqueta cobrindo este orifcio de forma a no permitir que a luz
ultravioleta presente na luz do sol e das lmpadas em geral, apague, com o passar dos anos, as
informaes gravadas. Os circuitos semicondutores que compem uma EPROM tambm podem ser
comparados a fusveis, s que fusveis renovveis.

E
2
PROM (Electrically Erasable Programmable Read Only Memory):
Uma verso melhorada e mais cara da EPROM a EEPROM (Electrically Erasable
Programmable Read Only Memory). A nica diferena entre as duas o mtodo de apagamento das
informaes. Enquanto na EPROM a forma de se apagar a exposio luz ultravioleta, como descrito
acima, na EEPROM ou E
2
PROM (como tambm conhecida) o apagamento se d por aplicao de
pulsos eltricos.
Esta caracterstica de poder ser apagada por pulsos eltricos permite que a E
2
PROM possa ter o
seu contedo alterado sem que seja necessrio retir-la do circuito. As memrias E
2
PROM so
largamente utilizadas em equipamentos de controle de processo guardando a configurao necessria ao
funcionamento do sistema.
Para alterar o contedo de uma posio de uma E
2
PROM necessrio apaga-la atravs de um
pulso eltrico, que nas primeiras E
2
PROM eram de nveis superior aos 5 volts (padro TTL) comuns em
qualquer sistema digital, o que fazia com que os equipamentos tivessem circuitos especiais para gerar
estes nveis. Em E
2
PROM mais modernas o pulso de apagamento de 5 volts e internamente a
E
2
PROM atravs de circuitos especiais gera os nveis necessrios ao apagamento.
Um inconveniente das E
2
PROMs que o tempo de apagamento e escrita de um novo contedo
muito grande (na ordem de milisegundos) quando comparados aos tempos de acesso de memrias
RAM.
I.5.1.3.2. Memrias de Leitura e Escrita:
As Memrias de Leitura e Escrita, como o prprio nome j diz, so aquelas que podem ser
escritas e lidas pelo processador. Este tipo de memria comum e imprecisamente chamada de RAM
(Random Access Memory - Memria de Acesso Aleatrio). As RAMs necessitam sempre de energia
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.23
eltrica tanto para manter os dados nelas armazenados quanto para se lerem ou se escreverem
informaes. Existem basicamente dois tipos de RAMs: RAM esttica e RAM dinmica.

RAM Dinmica:
Nas RAM dinmicas os dois nvel lgicos (0 ou 1) so implementados por circuitos
semicondutores especiais, que so capazes de armazenar cargas eltricas. Ento a presena ou no
destas cargas eltricas define respectivamente os nveis lgicos um e zero.
Estes circuitos especiais funcionam de forma semelhante a capacitores. Os capacitores, como
visto na figura I.6, so componentes compostos por duas placas metlicas paralelas, separadas por um
isolante eltrico. Aplicando-se cargas positivas a uma das placas, pela atrao de cargas opostas
induzem-se cargas negativas na outra placa.
+
+
+
+ +
+ +
+
+
-
-
-
-
-
-
-
-
-
Isolante Eltrico
Placas
Metlicas
Paralelas
Carga Positiva
Carga Negativa

Figura I.6 - Capacitor
A tendncia natural que as cargas sejam trocadas entre as placas at atingir-se o equilbrio
eltrico. No entanto o isolante entre as placas impede esta troca.
Como no existe isolante eltrico perfeito as cargas, mesmo que lentamente, vo sendo trocadas
chegando-se ao equilbrio e portanto descarregando o capacitor.
Os dispositivos semicondutores especiais que armazenam as cargas dentro das memrias
dinmicas so capazes de manter a sua carga por apenas alguns mili segundos. Estes mili segundos que
para ns parece pouco, muito tempo para os microprocessadores, que executam tarefas em tempos
10.000 vezes menor (centenas de nano segundos).
As RAM Dinmicas necessitam alm do fornecimento de energia eltrica, que as informaes
nelas armazenadas sejam atualizadas (ou refrescadas) de tempos em tempos. O processador ou um
circuito destinado para este fim tem que de tempos em tempos ( da ordem de milissegundos) ler o
contedo de cada posio e reescrev-lo. Esta funo de reavivar a memria conhecida como "refresh"
(refrescamento).
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.24
RAM Esttica:
Ao contrrio da RAM Dinmica, a RAM Esttica no perde o seu contedo com o tempo e
portanto no precisa ser reavivada. A RAM Esttica s perde o seu contedo se interrompermos o
fornecimento de energia eltrica.
Enquanto a memria dinmica armazena cargas eltricas em circuitos semicondutores especiais,
a memria esttica sinaliza os dois nveis lgicos alternando o trajeto de corrente entre dois caminhos
possveis. Esta comutao obtida por chaves eletrnicas, que podem ser facilmente implementadas por
intermdio de transistores. Como estas chaves eletrnicas uma vez acionadas s mudam de estado
quando recebem um novo comando, no necessrio refrescamento e os dados sero mantidos enquanto
se mantiver o fornecimento de energia eltrica. Com a interrupo da energia, todos as chaves assumem
um nico estado e a memria perde todos os dados.
Por ter circuitos mais elaborados as maiores memrias estticas comerciais possuem capacidade
de armazenamento muito inferior as memrias dinmicas comerciais.
Em 1993 a maior memria esttica comercial com preo acessvel era a 62256 que possui a
capacidade de armazenar 256 quilo bits, enquanto que a maior RAM dinmica possui capacidade de 16
mega bits.
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.25
I.5.1.3.3. NVRAM (Non volatily RAM):
Um outro tipo de memria no voltil, tambm muito utilizada em equipamentos de controle de
processo a NVRAM. As vantagens da NVRAM sobre a E
2
PROM que seu acesso feito com se a
mesma fosse uma RAM esttica comum (no necessitando pulso especial de apagamento) e com um
tempo de acesso igual s memrias RAM estticas comuns.
Na verdade a NVRAM composta internamente por duas memrias. A figura I.6 mostra o
diagrama funcional da NVRAM X20C04 da Xicor. Ligado diretamente aos barramentos de dados e
endereo est uma memria RAM esttica (SRAM =Static RAM) de 512 posies de 8 bits. Por trs
existe uma memria E
2
PROM de mesmo tamanho que possui uma cpia do contedo da SRAM. Os
valores escritos diretamente na SRAM so guardados na E
2
PROM atravs de ciclos chamados
"STORE" espaados um do outro em pelo menos 5 ms. Por sua vez cada byte armazenado na E
2
PROM
copiado para a SRAM atravs de ciclos chamados "RECALL" espaados um do outro em pelo menos
5 s.

SRAM
E PROM
2
STORE
RECALL
LGICA DE
CONTROLE
CE
OE
WE
NE
A3
A6
SELEO
DE
LINHA
A0
A1
SELEO
DE
COLUNA
I/O
D0
X20C04
A2
A7
A8
a
D7
512 x 8

Figura I.7 - NVRAM X20C04 - 512 x 8

As NVRAMs no substituem as E
2
PROM, como poderia parecer. Equipamentos de controle de
processo, como os PLCs, normalmente possuem os quatro tipos de memrias diferentes: EPROM,
RAM, E
2
PROM e NVRAM, como pode ser visto na figura a seguir.
No PLC da Sistema a E
2
PROM guarda o programa aplicativo (diagrama ladder) que o PLC ir
executar. Quando o PLC energizado o programa imediatamente transferido para a memria RAM, de
onde o programa (que est na EPROM), que o processador est executando, vai buscar as informaes
para executar o Ladder programado pelo usurio. Estas buscas so feitas nas velocidades mximas (sem
tempo de espera) pois a memria RAM tem tempos de acessos compatveis com o processador.
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.26
PROCESSADOR
EPROM
SISTEMA OPERACIONAL
EEPROM
APLICATIVO DO USURIO
RAM
APLICATIVO DO USURIO
(LADDER)
(LADDER) - UTILIZADO
NVRAM
ALTERAES NO APLICATIVO
VARIVEIS DE RETENO
(CPIA DE SEGURANA)
- CPIA
VARIVEIS DE PROGRAMA
C
D
D
D
D - Dados
C - Cdigo de Mquina

Figura I.8 - Diagrama de Memrias de um PLC tpico.

Quando necessrio fazer uma mudana em algum parmetro deste programa aplicativo esta
mudana realizada diretamente na RAM, refletindo-se em imediata alterao na execuo do programa
aplicativo. Estas mudanas so guardadas tambm na memria NVRAM e s ento iniciada a
gravao na E
2
PROM. Esta cpia na NVRAM uma segurana para que caso haja uma falta de energia
durante a gravao das alteraes na E
2
PROM (que leva um tempo relativamente alto) estas alteraes
no sejam perdidas.
Alm da cpia de segurana a NVRAM tambm armazena as variveis de reteno e dos pontos
de E/S do sistema.

Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.27
I.5.2. ENDEREAMENTO DE MEMRIA
Como vimos anteriormente, memria o dispositivo que armazena informaes. Antes de
prosseguirmos, temos que introduzir algumas definies importantes.
BIT um algarismo binrio que est armazenado na memria. O termo bit vem da abreviao
de digito binrio (bynary digit). a menor unidade de informao possvel.
BYTE o conjunto de 8 bits.
QUILO BYTE (KByte) o conjunto de 1024 (2
10
) bytes.
MEGA BYTE (MByte) o conjunto de 1024 KBytes, ou seja
1 MByte =1024 KBytes =2
10
KBytes =2
10
* 2
10
Bytes =2
20
Bytes.
Imaginemos a memria como se fosse um grande gaveteiro. Cada gaveta pode armazenar um
certo nmero de algarismos binrios (ou bits), como mostrado na figura I.9.

GAVETA 0 (000)
GAVETA 1 (001)
GAVETA 2 (010)
GAVETA 3 (011)
GAVETA 4 (100)
GAVETA 5 (101)
GAVETA 6 (110)
GAVETA 7 (111)
GAVETA 0 (000)
GAVETA 3 (011)
GAVETA 4 (100)
GAVETA 5 (101)
GAVETA 6 (110)
GAVETA 7 (111)
01011001

Figura I.9 - Endereamento de Memria
Chamamos de palavra de memria o conjunto de bits que cada gaveta (ou posio de memria)
pode armazenar. Na figura I.6 a palavra de memria tem 8 bits (ou 1 byte).
Cada gaveta recebe um nmero que chamamos de endereo. Portanto para acessarmos o
contedo de uma posio de memria precisamos saber o seu endereo.
Na figura I.5 a nossa memria possui 8 posies de memria portanto com apenas 3 bits
podemos representar o endereo de qualquer posio desta memria. Com quatro bits poderamos
representar 16 endereos diferentes de (0000)
2
at (1111)
2
(ou de 0 a 15).
Assim, comn bits de endereo podemos enderear uma memria de at 2
n
posies.
Agora iremos analisar exemplos de memrias comerciais, mostrando suas pinagens, ciclos de
acesso, para identificarmos as principais caractersticas de cada tipo de memria.

I.5.2.1. SRAM 62256:
A SRAM 62256 que uma memria utilizada em equipamentos industriais de um modo geral.
Cada posio de uma memria SRAM pode ter seu contedo lido ou escrito pelo processador. A
memria SRAM 62256 um chip de 28 pinos, como mostra a figura I.10. A seguir, iremos analisar a
funo de cada pino da memria SRAM 62256.

Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.28
A7
A6
A5
Vcc
A8
A9
A4
A3
A2 A10
A1
A0 D7
D0
D1
D2
Gnd
D6
D5
D4
D3
2
6
2
6
5
A14
A13
A11
A12
WR
RD
CS

Figura I.10 - Pinagem da RAM 62256

Os pinos A0,A1,A2,...,A14 so os bits de endereamento. A inicial "A" nas indicaes dos pinos
vem de Address (Endereo em ingls). Como temos 15 bits de endereo a memria RAM 62256 possui
32K (32.768) posies. O conjunto destes bits de endereamento chamamos de Via de Endereos ou
Barramento de Endereos.
Os pinos D0,D1,D2,...,D7 so os pinos onde se colocam os bits do contedo de cada posio da
memria. A inicial "D" nas indicaes dos pinos vem de "Data" (Dado em ingls). Como so 8 pinos a
palavra de memria de 8 bits. O conjunto destes bits de dados chamamos de Via de Dados ou
Barramento de Dados.
Portanto a memria RAM 62256 possui 32 768 posies de 8 bits cada uma, ou seja uma
memria de 32.768 X 8 (que se l: "memria de 32.768 por 8") ou de 32KBytes X 8 (que se l:
"memria de 32 c bytes por 8").
Os pinos de Vcc e Gnd so os pinos de alimentao do chip. Nestes dois pinos devero ser
colocados respectivamente +5 volts e terra.
O pino de WR utilizado para ligarmos um sinal de controle que gerado pelo processador que
ir acessar esta memria.. Um pulso de nvel baixo (0) significa que o processador deseja escrever
(WRite em ingls) um dado na memria. A seqncia de escrita de um dado na memria a seguinte:
1. O processador coloca no Barramento de Endereo (pinos A0,A1,...,A14) o endereo da
posio que ele deseja escrever. Esta ao chamamos de enderear a memria.
2. O processador coloca no Barramento de Dados (pinos D0,D1,..,D7) o dado que ele deseja
escrever na posio endereada.
3. O processador d um pulso de nvel baixo no pino WR.
4. A memria armazena o dado na borda de subida do pulso do pino WR.
A figura I.11 mostra o esquema de ligao do processador com a memria RAM 62256 e o
diagrama de tempo de um ciclo de escrita em memria.

Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.29
A0
A1
A14
.
.
.
.
.
.
.
.
D0
D1
D7 D7
D1
D0
A14
A1
A0
.
.
P
R
C
E
S
S
A
D
O
R
O
6
2
5
6
2
RD
WR
RD
WR


BARRAMENTO DE
ENDEREOS
ENDEREO VLIDO
BARRAMENTO
DE DADOS
DADO VLIDO
WR
COLOCADO PELO PROCESSADOR
COLOCADO PELO
PROCESSADOR

Figura I.11 - Ciclo de Escrita em Memria

O pino de RD utilizado para ligarmos um sinal de controle que gerado pelo processador. Um
pulso de nvel baixo (0) significa que o processador deseja ler (ReaD em ingls) um dado da memria.
A seqncia de leitura de um dado da memria a seguinte:
1. O processador coloca no Barramento de Endereo (pinos A0,A1,...,A14) o endereo
cujo contedo se deseja ler.
2. O processador d um pulso de nvel baixo no pino RD.
3. A memria coloca no Barramento de Dados (pinos D0,D1,..,D7) o contedo da posio
endereada.
4. O processador captura este dado na borda de subida do pulso do pino RD.
A figura I.12 mostra o diagrama de tempo de um ciclo de leitura de memria. Observe que o
tempo entre a colocao pelo processador do endereo da posio que ele quer acessar e a resposta por
parte da memria, colocando o dado no barramento de dados conhecido por tempo de acesso. Os
componentes de memria vem com este tempo usualmente codificado como prefixo do nmero do
componente. Por exemplo um componente 62256-12 uma memria RAM de 32K X 8 com tempo de
acesso de 120 ns.
O temp de acesso de memrias SRAM comercialmente disponveis pode variar de 5 a 150ns.
Quanto menor o tempo de acesso, mais caras so as SRAMs. As verses de 15 a 25 ns de SRAMs so
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.30
utilizadas como memrias cache em placas de microcomputadores IBM compatveis baseados nos
microprocessadores 386, 486 e Pentium e tambm em workstations RISC.

BARRAMENTO DE
ENDEREOS
ENDEREO VLIDO
RD
BARRAMENTO
DE DADOS
DADO VLIDO
COLOCADO PELA
MEMRIA
COLOCADO PELO PROCESSADOR
TEMPO DE
ACESSO

Figura I.12 - Ciclo de Leitura de Memria

Observe a direo das setas no esquema de ligao da figura I.11.
O Barramento de Endereos, bem como os sinais de RD e WR, tm sempre a mesma direo,
ou seja do processador para a memria. Por este motivo dizemos que o Barramento de Endereos e os
sinais de controle RD e WR so unidirecionais.
O Barramento de Dados pode ter duas direes. Pode estar direcionado do processador para a
memria (escrita) ou da memria para o processador (leitura). Por este motivo dizemos que o
Barramento de Dados bidirecional.

Estados de Espera (Wait States):
Como os sinais do barramento de endereos e RD so gerados pelo processador, o tempo
decorrido desde o endereamento at a subida do sinal de RD s dempende da velocidade do
processador. Na verdade as mudanas ocorridas nos barramentos e sinais de RD e WR so
sincronizadas por um outro sinal de entrada no processador que o "clock". Este sinal uma onda
quadrada que cujas subidas e descidas fazem com que uma operao do processador seja realizada. O
perodo deste sinal de clock da-se o nome de estado e portanto para executar um ciclo de leitura de
memria so necessrios alguns estados, como visto na figura abaixo. Quanto mais rpido, ou seja
quanto maior a frequncia (medida em MegaHertz) do sinal de clock, menor ser o intervalo de tempo
entre o endereamento e a subida do sinal de RD. Se a memria no for suficientemente rpida, quando
o RD subir o barramento de dados no conter ainda o valor do contedo da posio acessada e
portanto o processador ir capturar o "lixo" presente no barramento na hora da subida do RD, como
visto na figura I.13.
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.31

BARRAMENTO DE
ENDEREOS
ENDEREO VLIDO
RD
BARRAMENTO
DE DADOS
DADO VLIDO
COLOCADO PELA
MEMRIA
COLOCADO PELO PROCESSADOR
TEMPO DE
ACESSO
Momento em que o processador captura
o contedo do barramento de dados (lixo)
ESTADO
CLK

Figura I.13 - Ciclo de Leitura com perda de informao

Existe um sinal de entrada no microprocessador que tem o nome de READY (pronto) que
possibilita a interligao de dispositivos de memria cujo tempo de acesso no apropriado ao
funcionamento do processador. Quando o sinal de READY mantido em nvel lgico "1" o acesso a
memria se d normalmente como visto na figura I.12. Quando o processador acessar uma memria
"lenta" (cujo tempo de acesso maior que o pulso RD gerado pelo processador) o sinal colocado em
nvel lgico "0" at que a memria responda ao acesso de leitura quando ento o sinal de READY volta
a nvel lgico "1", fazendo com que o pulso de RD acabe. Veja a figura I.14. O alargamento do pulso
de RD obtido pela insero de um perodo (estado) a mais durante o ciclo de leitura. Este estado
chamado de estado de espera, ou em ingls: "wait state". Dependendo da velocidade do processador
(frequncia de trabalho) e dependendo do tempo de acesso da memria utilizada podem ser inseridos
um, dois ou mais wait states. O acesso a memria sem necessidade de estados de espera dito um
acesso com "zero wait states".
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.32
BARRAMENTO DE
ENDEREOS
ENDEREO VLIDO
RD
BARRAMENTO
DE DADOS
DADO VLIDO
COLOCADO PELA
MEMRIA
COLOCADO PELO PROCESSADOR
TEMPO DE
ACESSO
Sinal de RD alaragado pelo sinal de READY
READY
CLK
ESTADO DE ESPERA
(WAIT STATE)

Figura I.14 - Ciclo de Leitura com Wait State.

Cabe apenas uma dvida, mostrada no esquema da figura I.15. Quem gera o sinal de READY ?

A0
A1
A14
.
.
.
.
.
.
.
.
D0
D1
D7 D7
D1
D0
A14
A1
A0
.
.
P
R
C
E
S
S
A
D
O
R
O
6
2
5
6
2
RD
WR
RD
WR
READY
?
CLK

Figura I.15 - Gerador de Wait States (?).

Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.33
Associao de Chips de Memria SRAM:
No sentido de aumentarmos a capacidade de armazenamento de um sistema utilizando
processadores podemos associar vrios chips de memria. Por exemplo, se um sistema necessita de
65536 Bytes (64KBytes), podemos associar 2 RAM 62256, cada uma com 32 768 Bytes (32KBytes),
como mostra a figura I.16.


A0
A12
.
.
.
.
.
D0
D1
D7 D7
D1
D0
A12
A0
.
.
P
R
C
E
S
S
A
D
O
R
O
A15 A14 A13
CI 1
. .
D7
D1
D0
A12
A0
.
.
CI 3
.
OE
CS
OE
WE
CS
RD
WR
CI 2
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

Figura I.16 - Associao de Memrias SRAM

O esquema da figura I.16 mostra a associao de 2 SRAM 62256. No entanto se voc observar
bem existe uma dvida a ser esclarecida. Se o processador , por exemplo, quiser escrever em um
determinado endereo um dado, ele colocar o endereo desejado no Barramento de Endereos, o dado
a ser escrito no Barramento de Dados, e dar um pulso no pino de WR. Como os Barramentos de
Endereos e Dados das duas RAM 62256 esto em paralelo o dado ser escrito em ambas. A forma de
esclarecermos este problema utilizando o nico pino da 62256 que ainda no teve a sua funo
explicada, ou seja, o pino CS.
O pino de CS (Chip Select =Seleo do Chip) utilizado para que o processador selecione
entre vrias memrias interligadas a ele qual ser lida ou escrita. Quando o processador quer acessar
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.34
uma entre duas ou mais memrias ele coloca um nvel baixo (0) no pino CS da memria que deseja
acessar. Se existir apenas uma memria, este pino pode ser colocado permanentemente em nvel baixo.
No circuito da figura I.16, o processador tem um barramento de endereos de 16 pinos (de A0
at A15), portanto a capacidade de endereamento de 65.536 (do endereo 0000h at o endereo
FFFFh). O pino A15 do barramento de endereos, por ser o nico pino do barramento de endereos que
no ligado diretamente s memrias, utilizado como entrada do circuito de seleo que ir definir
qual das memrias ser acessada. Dependendo do valor de A15 o circuito de seleo ir colocar nvel
baixo (0), no pino de CS de uma da outra memria 62256. Este tipo de endereamento far com que o
processador leia a memria 62256 de cima com A15 =0, ou seja do endereo 0000h at o endereo
7FFFh. Quando A15 =1, ou seja do endereo 8000h at FFFFh, o processador acessa a memria de
baixo.
O circuito de seleo que poder ser utilizado para implementar o endereamento descrito acima
seria simplesmente um inversor, como visto na figura I.17.

da (62256)
da (62256)
A15
1
2
PROCESSADOR
CS
CS

Figura I.17 - Circuito de Seleo

Circuito Gerador de Wait States:
Pode-se agora entender quem ir gerar o sinal de READY, que permite a utilizao de memrias
lentas. Quando se projeta um sistema computacional se sabe a priori quais memrias necessitaro wait
states e quais sero acessada com zero wait states. Se por exemplo no sistema da figura I.16 uma das
memrias mais lenta que a outra e necessita de um wait state, o circuito decodificador quando
selecionar a memria mais lenta ir informar ao circuito Gerador de Wait States", como mostrado na
figura I.18. O Circuito Gerador de Wait States que ento ir gerar o sinal READY, fazendo com que
sejam inseridos um, dois ou mais estados de espera. Nos microcomputadores pessoais o nmero de
"wait states" necessrios para cada memria configurada por software (setup).
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.35
A0
A14
.
.
.
.
.
.
.
.
D0
D1
D7 D7
D1
D0
A14
A0
.
.
P
R
C
E
S
S
A
D
O
R
O
6
2
5
6
2
A15
CIRCUITO
DECODIFICADOR
. .
D7
D1
D0
A14
A0
.
.
6
2
5
6
2
.
RD
WR
CS
RD
WR
CS
RD
WR
GERADOR DE
WAIT STATES
READY

Figura I.18 - Circuito Gerador de Wait States.

Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.36
I.5.2.2. EPROM 27128:
A EPROM 27128 um chip de 28 pinos, como mostra a figura I.19, podendo armazenar 128
KBits (16 Kposies com 8 bits cada) de memria permanente de apenas leitura.

A7
A6
A5
Vcc
A8
A9
A4
A3
A2 A10
A1
A0 D7
D0
D1
D2
Gnd
D6
D5
D4
D3
7
2
1
8
2
PGM
A13
VPP
A12
A11
RD
CS

Figura I.19 - Pinagem da EPROM 27128

Os pinos A0,A1,A2,...,A13 so os bits de endereamento. Como temos 14 bits de endereo a
memria EPROM 27128 possui 16K (16.536) posies.
Os pinos D0,D1,D2,...,D7 so os pinos onde se colocam os bits do contedo de cada posio da
memria.
Portanto a memria EPROM 27128 possui 16 536 posies de 8 bits cada uma, ou seja uma
memria de 16 536 X 8 (que se l: "memria de 16.536 por 8") ou de 16KBytes X 8 (que se l:
"memria de 16 c bytes por 8").
Os pinos de Vcc e Gnd so os pinos de alimentao do chip. Nestes dois pinos devero ser
colocados respectivamente +5 volts e terra.
O pino de RD utilizado para ligarmos um sinal de controle que gerado pelo processador. Um
pulso de nvel baixo (0) significa que o processador deseja ler um dado da memria.
O pino CS tem a funo de selecionar o chip. Se CS =1 nenhuma das posies da EPROM
pode ser acessada.
A seqncia de leitura de um dado da memria EPROM igual ao ciclo de acesso de um dado
contido em uma memria SRAM, e a seguinte:
1. O processador coloca no Barramento de Endereo (pinos A0,A1,...,A13) o endereo
cujo contedo se deseja ler.
2. O processador d um pulso de nvel baixo no pino RD.
3. A memria coloca no Barramento de Dados (pinos D0,D1,..,D7) o contedo da posio
endereada.
4. O processador captura este dado na borda de subida do pulso do pino RD.

A figura I.20 mostra o diagrama de tempo de um ciclo de leitura de uma memria EPROM.
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.37
A0
A1
A13
.
.
.
.
.
.
.
.
D0
D1
D7 D7
D1
D0
A13
A1
A0
.
.
P
R
C
E
S
S
A
D
O
R
O
2
1
2
8
7
RD RD


BARRAMENTO DE
ENDEREOS
ENDEREO VLIDO
RD
BARRAMENTO
DE DADOS
DADO VLIDO
COLOCADO PELA
MEMRIA
COLOCADO PELO PROCESSADOR
TEMPO DE
ACESSO

Figura I.20 - Ciclo de Leitura de Memria EPROM

O Barramento de Endereos, bem como o sinal de RD, tm sempre a direo do processador
para a EPROM.
O Barramento de Dados, que no caso da ligao do processador com uma memria SRAM
bidirecional, no caso da interligao do processador com uma memria EPROM unidierecional, s
que na direo inversa do barramento de endereos, ou seja da EPROM para o processador. Isto se
deve ao fato da memria ser s de leitura e portanto nenhum dado pode sair do processador para
"entrar" na memria, o que corresponderia a um ciclo de escrita.
As memrias EPROM tem tempo de acesso maior que as memrias SRAMs. A memria
EPROM comercialmente disponvel mais rpida possui tempo de acesso de 120 ns.
Os pinos de VPP e PGM so utilizados na hora de gravao do contedo da EPROM. A
gravao de uma EPROM feita por um equipamento especial chamado gravador de EPROMs que
normalmente interligado serial ou paralelamente a um microcomputador como visto na figura I.21.

Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.38
A7
A6
A5
Vcc
A8
A9
A4
A3
A2 A10
A1
A0 D7
D0
D1
D2
Gnd
D6
D5
D4
D3
7
2
1
8
2
PGM
A13
VPP
A12
A11
RD
CS
SOQUETE ZERO FORCE
GRAVADOR DE EPROMS
FONTE DE
TENSO
12.5 V ou 21 V
GERADOR DE
PULSOS
PORTA SERIAL OU
PLACA DEDICADA

Figura I.21 - Gravador de EPROMs

Existem no mercado basicamente dois tipos de gravadores de EPROMs.
No primeiro tipo os sinais de VPP e PGM so gerados por circuitos que esto colocados em um
equipamento a parte, que alm destes circuitos possui um soquete zero force onde ser conectada a
EPROM a ser gravada, como visto na figura I.21. Existe um cabo padro RS232 que interliga o
gravador de EPROMs porta serial do microcomputador. Os valores a serem gravados so armazenados
temporariamente em arquivos nos discos flexveis ou rgidos do microcomputador e transferidos
serialmente na hora da gravao.
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.39
O segundo tipo se assemelha ao primeiro, no entanto os circuitos geradores dos sinais de VPP e
PGM esto em uma placa plugada em um dos slots de expanso dentro do microcomputador.
Externamente s existe uma caixa com um soquete zero force onde ser conectada a EPROM e um cabo
de ligao prprio.
Para ambos os tipos cada byte a ser gravado necessita um ciclo de gravao que pode demorar
de 1 a 60 ms dependendo do tipo de EPROM. Durante todos os ciclos de gravao os pinos CS
mantido em nvel lgico 0 enquanto o pino VPP mantido em uma tenso alta, que pode variar de 12.5
a 21 Volts dependendo da EPROM. Cada ciclo de gravao seguido de um ciclo de leitura de
verificao. O ciclo de gravao se inicia com o endereamento da posio a ser gravada, seguida da
colocao no barramento de dados do contedo a ser gravado nesta posio. Em seguida gerado um
pulso de nvel baixo no pino PGM, que pode durar de 1 a 60 ms seguido de um pulso de nvel baixo no
pino RDque realiza a leitura de verificao. O pulso de RD de durao igual a um ciclo de leitura
normal. Veja na figura I.22.

BARRAMENTO DE
ENDEREOS
ENDEREO DA POSIO A SER GRAVADA
BARRAMENTO
DE DADOS
DADO A SER GRAVADO
PGM
DADO LIDO
COLOCADO
PELA EPROM
VPP
12.5 ou 21 V
CS
RD
COLOCADO PELO
PROGRAMADOR DE EPROMs
CICLO DE GRAVAO
CICLO DE LEITURA DE
VERIFICAO
1 a 60 ms

Figura I.22 - Ciclos de Gravao e Verificao

A figura I.23 mostra a associao de uma EPROM 27128 e uma SRAM 62256 a um
microprocessador.
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.40
A0
A13
.
.
.
.
.
.
.
.
D0
D1
D7 D7
D1
D0
A13
A0
.
.
P
R
C
E
S
S
A
D
O
R
O
6
2
5
6
2
A15
CIRCUITO
DECODIFICADOR
. .
D7
D1
D0
A13
A0
.
.
7
2
1
8
2
RD
CS
RD
WR
CS
RD
WR
A14 A14

Figura I.23 - Associao de EPROM e SRAM.

Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.41
I.5.2.3. DRAM 411000:
As associaes vistas anteriormente visam aumentar a capacidade de armazenamento da
memria. Outra forma de associao de chips de memria decorre do fato de alguns chips de memria
terem o seu Barramento de Dados menor do que o Barramento de Dados do processador. A seguir
veremos o exemplo das RAM dinmicas, utilizadas nos computadores tipo IBM PC, onde cada
componente s possui um pino de dado, ou seja para formarmos uma memria de palavra de 8 bits
necessitamos associar pelo menos 8 componentes.
A figura I.24 mostra a associao de 8 memrias RAM dinmicas 41.1000 de 1.048.576
posies de 1 bit.

A0
A19
.
.
D0
D1
D7
RD
WR
P
R
C
E
S
S
A
D
O
R
O
.
A18
A1
.
.
WR
D
A0
.
.
A9
RAS
CAS
4
1
1
0
0
0
CIRCUITO
DE
CONTROLE
DE
ACESSO
DE
MEMRIA
WR
A0
.
.
A9
RAS
CAS
4
1
1
0
0
0
D WR
A0
.
.
A9
RAS
CAS
4
1
1
0
0
0
D
...
.
.
.
.
(0)
(1)
(7)

Figura I.24 - Associao de Memria RAM dinmicas

Para acessarmos uma memria de 1 MByte necessitamos de 20 bits de endereo. As memrias
de 1 MByte (41 1000) mostradas na figura I.24 possuem apenas 10 linhas de endereos (A0 a A9). Este
fato faz com que esta memria tenha apenas 18 pinos. A memria dinmica funciona da seguinte forma:
A memria est dividida em 1024 linhas e 1024 colunas como mostra a figura I.25. Na
interseo de cada linha com cada coluna est um capacitor que armazena um bit. Para acessarmos cada
posio precisamos fornecer ao componente o endereo da linha e o endereo da coluna da posio que
se quer acessar.

Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.42
0
1
2
3
4
5
1023
1022
1021
0 1 2 1021 1022 1023 3
E
N
D
E
R
E

O
D
A
L
I
N
H
A
E
N
D
E
R
E

O
D
A
C
O
L
U
N
A
A9
A8
A7
A6
A0
A1
A2
A3
A4
A5
RAS
CAS

Figura I.25 - Estrutura Interna da Memria Dinmica

O circuito de acesso de memria dinmica coloca nas 10 linhas de endereos das memrias (A0
a A9) o endereo da linha da posio que se quer acessar e gera um pulso negativo no pino RAS (Row
Address Strobe). Logo aps, o circuito de acesso de memria coloca nas 10 linhas de endereos das
memrias o endereo da coluna da posio que se quer acessar e gera um pulso negativo no pino de
CAS (Column Address Strobe).
A figura I.26 mostra os diagramas de tempo de leitura e escrita de uma memria RAM dinmica
41 1000. Tanto no ciclo de escrita, como no ciclo de leitura, as subidas dos sinais de RAS e CAS
sincronizam a captura do dado. No ciclo de escrita estas subidas fazem com que a memria capture o
valor presente no barramento de dados. No ciclo de leitura, as subidas de RAS e CAS determinam a
captura pelo processador do valor colocado pela memria no barramento de dados.
- - - -
+++++++
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.43
D
WR
A0-A9
CAS
RAS
DADO
VLIDO HI Z HI Z
LINHA COLUNA
D
WR
A0-A9
CAS
RAS
LINHA COLUNA
Ciclo de Leitura
Ciclo de Escrita
DADO COLOCADO
PELO PROCESSADOR
TEMPO DE ACESSO

Figura I.26 - Ciclos de Leitura e Escrita de Memria Dinmica

Como dito anteriormente, a memria dinmica necessita de ter seu contedo refrescado de
tempos em tempos. Portanto necessrio que o processador ou o dispositivo de controle de acesso a
memria realize ciclos de refresh. O intervalo entre dois ciclos de refresh da ordem de mili segundos.
Por exemplo, a memria dinmica TMS4164 da Texas Instruments especifica em seu "Data Sheet" que
o intervalo entre ciclos de refresh deve ser no mximo 4 mili segundos.
Um ciclo de refresh realiza o refrescamento de uma linha inteira da matriz interna da RAM,
portanto, como visto no diagrama de tempo da figura I.27, no ciclo de refresh s necessrio especificar
no barramento de endereos o endereo da linha que se vai refrescar. O que diferencia um ciclo de
acesso normal de um ciclo de refresh a presena de um pulso de RAS sem pulso de CAS.
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.44
D
WR
A0-A9
CAS
RAS
LINHA
Ciclo de Refresh (Refrescamento)

Figura I.27
Existem memrias dinmicas que possuem um modo de acesso mais rpido chamado Page
Mode. Uma destas memrias a 21010 da Intel. Este modo de acesso mais rpido consiste em se
acessar vrios bits de uma mesma linha. Desta forma s necessrio colocar o endereo da linha e
abaixar a linha de RAS uma nica vez e depois ir colocando, para cada acesso, o endereo da coluna
junto com o pulso de CAS. Veja os esquemas da figura I.28.
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.45
D HI Z HI Z
D
WR
A0-A9
CAS
RAS
LINHA COLUNA
Ciclo de Leitura em Page Mode
Ciclo de Escrita em Page Mode
COLUNA COLUNA COLUNA
WR
A0-A9
CAS
RAS
LINHA COLUNA COLUNA COLUNA COLUNA
HI Z HI Z
dado colocado
pelo processador
dado colocado
pelo processador
dado colocado
pelo processador
dado colocado
pelo processador
dado
vlido
dado
vlido
dado
vlido
dado
vlido

Figura I.28


Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.46
Em computadores baseados em processadores a partir do 386 a memria dinmica no vem
soquetada na placa me, como acontece com os XTs e ATs 286. Os componentes DRAM do tipo do
411000 so agrupados em placas que so plugadas em conectores especiais de 30 pinos ou 72 pinos,
chamadas de SIMM (Single Inline Memory Modules =Mdulos de memria em linha simples). A
figura I.29 mostra uma placa SIMM de 30 pinos.








Figura I.29 -Memria SIMM de 30 pinos

Cada placa SIMM de 30 pinos possui 8 bits de dados e mais um bit de paridade que testado por um
circuito a parte. Uma placa SIMM de 1 Megabyte utilizando DRAMs 411000 necessita ter portanto 9
chips.









A0 ... A9 paridade D7 D6 D5
Figura I.30 - Sinais de uma placa SIMM de 1 MBytes

Em processadores com barramento de dados maior que 8 bits como por exemplo os 386SX (com
16 bits de barramento de dados) e os 386DX, 486SX, 486DX, 486DX2, 486DX4 (com 32 bits de
barramento de dados) so necessrias mais de uma placa SIMM de 30 pinos para atender todos os bits
do barramento de dados.
Para placas me com processador 386SX so necessrias no mnimo 2 placas SIMM de 30 pinos
como mostrado no esquema da figura I.31. Se cada placa SIMM de 30 pinos tiver 1 Mbyte ento o
sistema ter no total 2 Mbytes. A figura I.31 mostra mdulos SIMM de 1 Mbytes que utilizam cada um
9 DRAMs 411000.
RAS CAS D0 D1 D2 D3 D4
.
.
.
9 X 411000
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.47




















Figura I.31 - Memrias SIMM de 30 pinos com 386SX.

Quando o processador est escrevendo um byte em uma posio de memria o circuito
gerador testador de paridade gera o nono bit (bit de paridade) que completa com um bit "0"ou com
um bit "1" para que os nove bits assim formados possuam um nmero par de bits "1". Por exemplo
se o processador estiver escrevendo um byte 10110101 (que contm 5 bits 1) o gerador testador
de paridade ir gerar um bit 1que com os 8 bits de dados completam 6 bits 1.
dados paridade
10110101 1
Os nove bits so escritos na memria e quando o processador realizar uma leitura desta
posio o circuito gerador testador de paridade ir ler os bits de dados mais o bit de paridade para
testar se existe um nmero par de bits 1 neste conjunto de 9 bits. Caso tenha ocorrido uma troca
de um bit ser gerado um sinal de erro que ser detectado pelo sistema operacional que ir exibir
uma mensagem de erro.
Existem DRAMs que ao invs de terem 1 bit possuem 4 bits de barramento de dados. Por
exemplo a DRAM 441000 possui 1 Mega posies (intercesses de linha e coluna) e cada posio
contm 4 bits. Placas SIMM de 30 pinos utilizando este tipo de componente possui apenas 3 chips, dois
D0
.
.
.
D7
D8
.
.
.
D15

386SX


CIRCUITO
GERADOR
E
TESTADOR
DE
PARIDADE
CTLE
DE
ACESSO
DE
MEMRIA
A0 ... A9, RAS, CAS
A0 ... A9, RAS, CAS
A0
.
.
A23
ERRO
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.48
chips 44100 para os 8 bits de dados e um chip 411000 para o bit de paridade como pode-se ver na figura
I.32.













Figura I.32 - Mdulos utilizando DRAMs 441000.

A estrutura interna do 441000 tambm possui 10 bits de endereo com 1024 linhas e 1024
colunas s que na interseo de cada linha e cada coluna existem 4 capacitores que armazenam os 4 bits
de cada uma das 1.048.576 (1024 x 1024) instersees.
Aumentando-se um bit de endereamento (incluindo A10) dobra-se o nmero de linhas e
colunas internas da memria DRAM fazendo com que se quadruplique a quantidade de posies
(intersees). No caso 4194304 (2048 x 2048) ou seja 4 Mega como visto na figura I.33.
Podem existir em cada insterseo 1 capacitor (1 bit), caso do componente 414000, ou 4
capacitores (4 bits), caso do componente 444000.
Normalmente placas SIMM 30 pinos de 4Mbytes possuem 2 componentes 444000 e 1
componente 414000. Como mostrado na figura I.34.

441000
D0
.
.
.
D7
paridade
441000 411000
1 Mega
posies
A0 ... A9 RAS CAS
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.49
0
1
2
3
4
5
2047
2046
2045
0 1 2 2045 2046 2047 3
E
N
D
E
R
E

O
D
A
L
I
N
H
A
E
N
D
E
R
E

O
D
A
C
O
L
U
N
A
A9
A8
A7
A6
A0
A1
A2
A3
A4
A5
RAS
CAS
A10



Figura I.33 - Memria DRAM com 4 Mega posies.















Figura I.34 - Placa SIMM de 4 Mbytes

444000
D0
.
.
.
D7
444000 414000
4 Mega
posies
A0 ... A10 RAS CAS
paridade
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.50
Se por exemplo temos 2 placas SIMM 30 pinos, cada uma com 4 MBytes conectadas a uma
placa me de 386SX, como visto na figura I.35, o sistema ter no total 8 Mbytes.




















Figura I.35 - 386SX com 8 Mbytes de DRAM

Para se expandir necessrio a colocao de no mnimo mais 2 placas que podem ser por
exemplo de 1MBytes cada uma, perfazendo um total de 10 Mbytes,como visto na figura I.36.
D0
.
.
.
D7
D8
.
.
.
D15

386SX


CIRCUITO
GERADOR
E
TESTADOR
DE
PARIDADE
CTLE
DE
ACESSO
DE
MEMRIA
A0 ... A10, RAS, CAS
A0 ... A10, RAS, CAS
A0
.
.
A23
ERRO
444000 444000 414000
444000 444000 414000
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.51
















Figura I.36 - 386SX com 10 Mbytes de DRAM

No acesso aos primeiros 8 Mbytes da memria o circuito de controle de acesso de memria
ir gerar RAS0 e CAS0, enquanto que no acesso dos ltimos 2 MBytes o circuito de controle de
acesso de memria ir gerar RAS1 e CAS1.
O circuito de controle de acesso de memria que funciona como circuito selecionador de
memria j que as memrias DRAM no possuem pino de CS (Chip Select).
Na verdade no acesso do primeiro megabyte em um microcomputador IBM compatvel,
algumas reas de endereos gerados pelo processador no acessam posies da memria DRAM e
sim de memrias do tipo EPROM ou ROM.
Como estas memrias possuem pino de CS, no momento que o processador enderear
posies nestas reas ser gerado um dos sinais CS para selecionar uma destas memria e no ser
gerado nenhum sinal de RAS e nem de CAS (que selecionam as memrias DRAM). Veja a figura
I.37.
Estas memrias EPROM s possuem 8 bits de barramento de dados que sero ligados aos 8
bits menos significativos (D0 a D7) do barramento do processador. O acesso a estas memrias
feito ao se ligar o equipamento e neste instante o processador s ir realizar leituras atravs dos 8
bits menos significativos do seu barramento de dados.
Existe uma opo no SETUP dos microcomputadores que permite que sejam feitas cpias
dos contedos destas memrias EPROM (que so mais lentas que as DRAMs) para os espaos
correspondentes dentro do primeiro megabyte de memria DRAM. Esta opo chamada ROM
BIOS Shadow.
D0
.
.
.
D7
D8
.
.
.
D15

386SX


CIRCUITO
GERADOR
E
TESTADOR
DE
PARIDADE
CTLE
DE
ACESSO
DE
MEMRIA
A0 ... A10, RAS0, CAS0, RAS1, CAS1
A0
.
.
A23
ERRO
A0..A10
A0...A9
A0 ... A10, RAS0, CAS0, RAS1, CAS1
A0..A10
A0...A9
4M x 9 1M x 9
4M x 9
1M x 9
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.52
















Figura I.37
Se existirem na placa me 386SX mais conectores livres para memrias SIMM de 30 pinos
pode-se expandir a memria RAM colocando-se placas 2 a 2 de acordo com o manual da placa
me.
Para placas me de processadores 386DX, 486SX, 486DX, 486DX2 e 486DX4, que
possuem barramento de dados de 32 bits, so necessrios no mnimo 4 placas SIMM de 30 pinos
como podemos ver na figura I.38.
Normalmente estas placas me possuem 8 conectores para placas SIMM de 30 pinos. A
expanso de memria da placa da figura I.38 portanto limitada a colocao de mais 4 placas que,
se forem de 4 Mbytes faz com que o sistema fique com 32 Mbytes, que a capacidade mxima que
uma placa me com 8 conectores SIMM de 30 pinos pode ter. Esta limitao no do processador,
que tendo 32 bits de endereo pode enderear at 4 Gbytes, mas da placa me. Como a placa me s
possui 8 conectores SIMM de 30 pinos e como s existem placas SIMM de 30 pinos com no
mximo 4mbytes, a quantidade mxima de memria de 8 x 4M =32mbytes.
Existem ainda placas SIMM 30 pinos de 256kbytes onde tem-se 9 DRAMs com 9 pinos de
endereo (A0...A8) com 512 linhas x 512 colunas.
D0
.
.
.
D7
D8
.
.
.
D15

386SX


CIRCUITO
GERADOR
E
TESTADOR
DE
PARIDADE
CTLE
DE
ACESSO
DE
MEMRIA
A0 ... A15, RAS0, CAS0, RAS1, CAS1
A0
.
.
A23
ERRO
A0..A10
A0...A9
A0 ... A10, RAS0, CAS0, RAS1, CAS1
A0..A10
A0...A9
4M x 9 1M x 9
4M x 9
1M x 9
A0...A15
64K x 8
EPROM
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.53



















Figura I.38 - Placa me 386DX ou 486 com memrias SIMM 30 pinos

Em placas me com 8 conectores SIMM de 30 pinos pode-se ter vrias combinaes de
placas SIMM de 256K, 1M e 4 Mbytes. Pode-se ter:
4 de 256K perfazendo um total de 1MBytes
8 de 256K perfazendo um total de 2 MBytes
4 de 1M perfazendo um total de 4 MBytes
4 de 256K e 4 de 1M perfazendo um total de 5 MBytes
8 de 1M perfazendo um total de 8 Mbytes
4 de 4M perfazendo um total de 16 Mbytes
4 de 256K e 4 de 4M perfazendo um total de 17 MBytes
4 de 1 M e 4 de 4M perfazendo um total de 20 MBytes
8 de 4M perfazendo um total de 32 MBytes

Outro padro de expanso de memria utilizado em placas me a partir do 486DX2 so as
que utilizam conectores para placas SIMM de 72 pinos. Neste padro as placas j tem componentes
suficientes para suprir 32 bits e portanto para processadores com barramento de 32 bits s
necessrio a colocao de uma nica placa. A figura I.39 mostra um mdulo SIMM de 72 pios com
4M x 36 e uma placa me 486 com 2 placas SIMM de 72 pinos, uma com 16 Mbytes (4M x 36) e
outra com 4 Mbytes (1M x 36)
D0
.
D7
D8
.
D15
386DX
ou
486


CIRCUITO
GERADOR
E
TESTADOR
DE
PARIDADE
CTLE
DE
ACESSO
DE
MEMRIA
A0 ... A10 , RAS0, CAS0 RAS0,CAS0
A0
.
.
A31
ERRO
A0..A10 A0...A10
A0 ... A10 RAS0, CAS0 RAS0,CAS0
A0..A10 A0...A10
4M x 9 4M x 9
4M x 9
4M x 9
D16
.
D23
D24
.
D31
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.54










Mdulo SIMM de 72 pinos com 4M x 36











Placa me com 2 placas SIMM de 72 pinos com 20 MBytes
Figura I.39

Para processadores com barramento de 64 bits como o Pentium e o Power PC so
necessrias no mnimo 2 placas SIMM de 72 pinos.
D0
.
.
D31

486
CIRCUITO
GERADOR
E
TESTADOR
DE
PARIDADE
CTLE
DE
ACESSO
DE
MEMRIA
A0 ... A10, RAS0, CAS0, RAS1, CAS1
A0
.
.
A31
A0..A10
A0...A9
4M x 36 1M x 36
4 bits de paridade
4 bits de paridade
4M x 1 4M x 1 4M x 1 4M x 1
4M x 4 4M x 4 4M x 4 4M x 4 4M x 4 4M x 4 4M x 4 4M x 4
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.55

















Figura I.40 - Placa me Pentium ou PowerPC com 40mbytes de memria.

Em placas baseadas no processador AlphaPC da Digital que possui barramento de dados de
128 bits so necessrias no mnimo 4 placas SIMM de 72 pinos para completar o barramento. Veja
a figura I.41

D0
.
.
.
D31
D32
.
.
.
D63

Pentium
ou
PowerPC


CIRCUITO
GERADOR
E
TESTADOR
DE
PARIDADE
CTLE
DE
ACESSO
DE
MEMRIA
A0 ... A10, RAS0, CAS0, RAS1, CAS1
A0
.
.
A31
ERRO
A0..A10
A0...A9
A0 ... A10, RAS0, CAS0, RAS1, CAS1
A0..A10
A0...A9
4M x 36 1M x 36
4M x 36
1M x 36
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.56


















Figura I.41 - Placa me Alpha com memrias SIMM de 72 pinos
D0
.
D31
D32
.
D63
Alpha


CIRCUITO
GERADOR
E
TESTADOR
DE
PARIDADE
CTLE
DE
ACESSO
DE
MEMRIA
A0 ... A10 RAS0, CAS0 RAS0,CAS0
A0
.
.
A34
ERRO
A0..A10 A0...A10
A0 ... A10 RAS0, CAS0 RAS0,CAS0
A0..A10 A0...A10
4M x 36 4M x 36
4M x 36
4M x 36
D64
.
D95
D96
.
D127
4 bits de
id d
4 bits de
4 bits de paridade
4 bits de
id d
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.57


Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.58
I.6. DISPOSITIVOS DE ENTRADA E SADA (I/O - Input/Output):
Como visto anteriormente, os dispositivos de entrada e sada, conhecidos normalmente pela
iniciais I/O (Input/Output), so os componentes do computador que fazem a interao do mundo
externo com o computador.
Para esclarecer como um dispositivo de I/O interage com o microprocessador, vejamos o
exemplo do teclado, que um dos dispositivos essenciais de qualquer microcomputador.
O teclado de qualquer sistema computacional , simplificadamente falando, composto de uma
matriz de linhas e colunas (veja figura I.42) onde em cada cruzamento de uma linha com uma coluna
colocada uma chave acionada por uma das teclas.

+ 5 V
L
I
N
H
A
S
C O L U N A S
1 2 3 4 N-1 N
1
2
M - 1
M

Figura I.42 - Esquema Interno de Teclado de Varredura

Um sistema muito utilizado para se identificar uma tecla acionada a varredura de sinais nas
linhas enquanto se observa o nvel das colunas. Este sistema de varredura consiste basicamente em se
colocar a cada intervalo de tempo uma das linhas em nvel baixo e todas as outras em nvel alto, ao
mesmo tempo que se verificam os nveis presentes nas colunas. A cada intervalo de tempo trocamos a
linha que receber o nvel baixo. Esta operao de sucessivamente ir-se colocando uma a uma as linhas
em nvel baixo, como mostra a figura I.43, denominada varredura ou "scan" do teclado.

Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.59
LINHA 1
LINHA 2
LINHA 3
LINHA M-1
LINHA M
.
.
.
.
.
.

Figura I.43 - Varredura do Teclado

Se nenhuma tecla estiver pressionada em qualquer instante da varredura todas as colunas tero
nvel alto, proveniente dos resistores de pull-up que esto ligados a +5 V, como mostra a figura I.44.
+ 5 V
L
I
N
H
A
S
C O L U N A S
1 2 3 N-1 N
1
2
M - 1
M
1
1
1
0
1 1 1 1 1

Figura I.44

Ao pressionarmos uma tecla e ao chegar o instante da varredura na qual a linha a que pertence a
tecla pressionada for colocada em nvel baixo, a coluna da tecla pressionada apresentar nvel baixo,
como mostra a figura I.45.

Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.60
+ 5 V
L
I
N
H
A
S
C O L U N A S
1 2 3 4 N-1 N
1
2
M - 1
M
0
0
1
1
1
1 1 1 1 1

Figura I.45

Portanto, se sabemos o instante da varredura, ou seja, qual linha est colocada em nvel baixo, e
a coluna na qual est presente o nvel baixo, podemos determinar com preciso qual foi a tecla
pressionada.
Nos sistemas computacionais, em geral, existem componentes dedicados que geram o sinal de
varredura e percebem uma tecla pressionada. Estes dispositivos, conhecidos como controladores de
teclado, aps perceberem uma tecla pressionada, precisam informar ao processador atravs de um
cdigo (diferente para cada tecla). Assim, o processador ter que ler o contedo deste dispositivo. Deve,
portanto, existir uma ligao entre o controlador de teclado e o processador. A figura I.46 mostra um
esquema simples de ligao de um controlador de teclado genrico e o processador.
Embora pudesse parecer que no barramento de dados as informaes (cdigos de teclas
pressionadas) devessem fluir apenas em um sentido (do controlador para o processador), tambm
existem condies onde o processador precisa escrever informaes no controlador. Na inicializao do
sistema do processador precisa inicializar (escrever) alguns registradores internos ao controlador de
teclado, para fazer com que ele trabalhe no modo apropriado. Para estes ciclos de escrita necessrio o
sinal de WR. No entanto existe ainda uma dvida: Como o controlador de teclado informa ao
processador que existe uma tecla pressionada ? Existe outros sinais interligando o controlador de
teclado e o processador, este sinais fazem parte da estrutura de interrupo. O funcionamento desta
estrutura explicado nos items I.6 e II.8.
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.61

+ 5 V
TECLADO
CONTROLADOR
DE
TECLADO
.
.
.
D0
D1
D2
D7
D0
D1
D2
D7
RD RD
P
R
O
C
E
S
S
A
D
O
R
WR WR

Figura I.46

O sistema controlador de teclado um exemplo de dispositivo de entrada. Veremos agora um
exemplo de dispositivo de sada, a Impressora.
As impressoras paralelas normalmente utilizadas em sistemas computacionais devem receber do
processador os cdigos de 8 bits correspondentes ( segundo a tabela ASCII) aos caracteres a serem
impressos. Estes cdigos (nas impressoras paralelas) so transferidos byte a byte atravs de 8 linhas que
interligam o processador e a impressora, como visto na figura I.47

IMPRESSORA
P
R
O
C
E
S
S
A
D
O
R
D0
D1
D2
D3
D4
D5
D6
D7
D0
D1
D2
D3
D4
D5
D6
D7

Figura I.47

Como os cdigos so colocados sucessivamente nas 8 linhas que interligam o processador e a
impressora, necessrio que o processador informe impressora toda vez que um novo cdigo
colocado no barramento. Para este fim, uma nova linha, conhecida como strobe (STB), adicionada s
8 iniciais. O processador envia um pulso negativo atravs da linha STB para indicar impressora que
existe no barramento o cdigo de um caracter a ser impresso. A figura I.48 mostra a ligao entre o
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.62
processador e a impressora com a insero da linha de STB e o diagrama de tempo da impresso de dois
caracteres.
IMPRESSORA
P
R
O
C
E
S
S
A
D
O
R
D0
D1
D2
D3
D4
D5
D6
D7
STB
CDIGO DE UM CARACTER CDIGO DE OUTRO CARACTER D0 - D7
STB
D0
D1
D2
D3
D4
D5
D6
D7
STB
Esquema de Ligao
Diagrama de Tempo

Figura I.48
Outra questo importante a ser considerada que a velocidade de impresso muito menor que
a velocidade de processamento do computador. Durante o tempo que a impressora estiver ocupada com
a impresso de um caracter, ela no poder receber nenhum outro caracter.
Assim, necessrio que a impressora avise ao processador que ela est ocupada e que, portanto,
o processador no poder enviar um novo caracter. Para este fim existe uma outra linha interligando o
processador e a impressora, conhecida como BUSY. O sinal de BUSY colocado em nvel alto pela
impressora para avisar ao processador que a impressora est ocupada.
Na verdade toda impressora possui memria, tambm chamada de buffer, para armazenar os
caracteres recebidos do microcomputador. Ento os circuitos lgicos de uma impressora realizam duas
funes simultneas. A primeira destas funes a de receber os bytes enviados na velocidade rpida do
microcomputador e armazenar no buffer. A segunda a de ir lendo o buffer e comandando as aes
mecnicas necessrias a impresso de cada caracter.
Como existe uma grande diferena de velocidades de entrada e de sada dos dados no buffer da
impressora, poder haver um transbordo de dados assim como pode acontecer um transbordo de gua de
uma caixa dgua em que a velocidade de entrada de gua maior do que a velocidade de sada. O sinal
de BUSY funciona como se fosse uma boia de caixa dgua que fecha a entrada da gua assim que o
nvel chega prximo ao seu limite mximo. Assim quando o buffer da impressora est cheio a mesma
sinaliza com o sinal BUSY para impedir que o microcomputador envie mais caracteres, o que causaria
um transbordo. A figura I.49 mostra o esquema de ligao e o diagrama de tempo levando em
considerao a incluso do sinal de BUSY. Observe que o sinal de BUSY ficar ativo o tempo
necessrio a impresso de um conjunto de caracteres de forma a liberar um conjunto de posies de
memria para receber novos caracteres. Se ao invs disto a impressora mantivesse o sinal de BUSY
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.63
ativo somente o tempo necessrio para impresso de um caracter, logo aps o recebimento do primeiro
caracter a impressora sinalizaria BUSY novamente pois o buffer estaria novamente cheio.
Permanecendo o sinal de BUSY ativado o tempo necessrio a impresso de um conjunto de caracteres o
sistema de comunicao micro-impressora trabalha em rajadas (forma mais eficiente) e no byte a byte.
Podemos comparar esta maior eficincia com a situao de um funcionrio mais experiente ajudando
um funcionrio novato a realizar uma determinada tarefa. O funcionrio novato a cada vez que tem uma
dvida ao invs de interromper o experiente anota as dvidas e interrompe o funcionrio experiente
apenas duas vezer ao dia e tira todas as dvidas anotadas. Assim tambm para o computador melhor
que a impressora fique BUSY por um tempo maior, tempo no qual o microcomputador poder realizar
outras tarefas, e depois descarregue de uma s vez uma rajada de caracteres.

IMPRESSORA
P
R
O
C
E
S
S
A
D
O
R
D0
D1
D2
D3
D4
D5
D6
D7
STB
D0 - D7
STB
D0
D1
D2
D3
D4
D5
D6
D7
STB
Esquema de Ligao
Diagrama de Tempo do modo byte a byte
BUSY BUSY
BUSY
Tempo necessrio
impresso de um caracter
cdigo do caracter que
D0 - D7
STB
Diagrama de Tempo do modo rajada
BUSY
Tempo necessrio impresso
de um conjunto de caracteres
preenche o buffer
primeiro caracter
da rajada
ltimo caracter
da rajada
cdigo de um caracter cdigo de um caracter cd
Tempo necessrio
impresso de um caracter

Figura I.49
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.64
Na realidade existem outros sinais (que na figura I.48 esto representados pelas linhas
tracejadas), mas estes dois (STB e BUSY) so os fundamentais.
Por questes de segurana, capacidade de fornecimento de corrente e principalmente por no
terem os processadores a capacidade de controlar estes sinais adicionais, colocado, entre a impressora
e o processador, um dispositivo conhecido vulgarmente por porta paralela ou pela sigla LPT (Line
PrinTer). A figura I.50 mostra o esquema de ligao do processador com a porta paralela e desta com a
impressora.
IMPRESSORA
P
R
O
C
E
S
S
A
D
O
R
D0
D1
D2
D3
D4
D5
D6
D7
WR
D0
D1
D2
D3
D4
D5
D6
D7
STB
BUSY
D0
D1
D2
D3
D4
D5
D6
D7
STB
BUSY
D0
D1
D2
D3
D4
D5
D6
D7
WR
P
O
R
T
A
P
A
R
A
L
E
L
A
RD RD
.
.
.

Figura I.50
Basta que o processador escreva o cdigo do caracter a ser impresso na porta paralela, que esta
controlar os sinais de strobe e busy e os outros no mencionados aqui.
bvio que a porta paralela precisa "avisar" ao processador quando a impressora est ocupada
(BUSY). Veremos mais adiante que normalmente utilizada uma estrutura de interrupo para controlar
este tipo de aviso.
Na verdade a porta paralela tambm pode ser lida pelo processador. Por este motivo que o
sinal de RD tambm est ligado a porta paralela. O byte que o processador pode ler da porta paralela
indica o estado da impressora e conhecido como registrador de status da impressora (printer status
register). Cada bit deste registrador de status contm uma informao sobre o estado da impressora. Por
exemplo, no caso dos computadores da linha IBM PC, os bits do registrador de status tem as funes
mostradas na figura I.51. Portanto um programa pode ficar, de tempos em tempos, lendo na porta
paralela este registrador de status e observando pelo bit 7 se a impressora est ocupada ou no.

0 =impressora ocupada (busy)
1 =impressora sem papel
1 =impressora em linha
1 =erro
REGISTRADOR DE STATUS
7 6 5 4 3 2 1 0

Figura I.51
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.65
A figura I.52 mostra um sistema composto de uma porta paralela ligada a uma impressora e um
controlador de teclado ligado a um teclado.


IMPRESSORA
P
R
O
C
E
S
S
A
D
O
R
D0
D1
D2
D3
D4
D5
D6
D7
WR
D0
D1
D2
D3
D4
D5
D6
D7
STB
BUSY
D0
D1
D2
D3
D4
D5
D6
D7
STB
BUSY
D0
D1
D2
D3
D4
D5
D6
D7
WR
P
O
R
T
A
P
A
R
A
L
E
L
A
+ 5 V
TECLADO
RD
RD
D0
D1
D2
D3
D4
D5
D6
D7
C
O
N
T
R
O
L
A
O
D
R
D
E
T
E
C
L
A
D
O
RD
A0 .. .A15
...
CIRCUITO
DE
SELEO
CS
CS
WR

Figura I.52

No caso do sistema da figura I.52 necessrio um circuito selecionador, como o visto na pgina
I.33 (Associao de Chips de SRAM) pois ao processador executar um ciclo de leitura preciso
especificar qual dos dispositivos (controlador de teclado ou porta paralela) dever responder a este
pedido. O circuito de seleo ento, a partir do endereo gerado pelo processador que est presente no
barramento de endereos (A0 ... A15), ir ativar uma de suas sadas em nvel baixo, selecionando ou a
porta paralela ou o controlador de teclado. Portanto existe um endereo que seleciona a porta paralela e
um endereo que seleciona o controlador de teclado.
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.66
Portanto, se o processador "deseja" ler o cdigo de uma tecla pressionada ele realizar um ciclo
de leitura especificando um endereo que ao entrar no circuito de seleo ir resultar em um nvel baixo
na sada que est ligada ao pino de CS (Chip Select) do controlador de teclado. Se, em outro momento,
o processador "deseja" ler o registrador de status da impressora ele ir gerar um ciclo de leitura com um
endereo que far com que a sada do circuito de seleo que est ligada ao pino CS (Chip Select) da
porta paralela seja ativada.
Em outro exemplo podemos ter um sistema com 2 impressoras paralelas com se v na figura
I.53. O circuito selecionador de dispositivos de sada ir selecionar a partir das linhas de endereo
(A0...A15) do processador qual das portas paralelas (LPT1 ou LPT2) ser escrita. Portanto, cada porta
paralela ter um endereo fixo para ser acessada.

IMPRESSORA
P
R
O
C
E
S
S
A
D
O
R
D0
D1
D2
D3
D4
D5
D6
D7
WR
D0
D1
D2
D3
D4
D5
D6
D7
STB
BUSY
D0
D1
D2
D3
D4
D5
D6
D7
STB
BUSY
D0
D1
D2
D3
D4
D5
D6
D7
WR
P
O
R
T
A
P
A
R
A
L
E
L
A
IMPRESSORA
D0
D1
D2
D3
D4
D5
D6
D7
STB
BUSY
D0
D1
D2
D3
D4
D5
D6
D7
STB
BUSY
D0
D1
D2
D3
D4
D5
D6
D7
WR
P
O
R
T
A
P
A
R
A
L
E
L
A
LPT1
LPT2
CS
CS
CIRCUITO
DE
SELEO
A0 ... A15
RD RD
RD

Figura I.53
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.67
I.7. ARQUITETURA INTERNA SIMPLIFICADA DE UM
MICROPROCESSADOR GENRICO:

ULC
U
L
A
OP. 1
OP.2
REG. DADOS
REG. ENDs.
P. C. S. P.
REG. STATUS
. . . . . .
CF PF ZF SF
I.R.
BUS DE CONTROLE
BUS DE DADOS
BUS DE END.
REGISTRADORES
DE USO GERAL
.
.
.
BARRAMENTO INTERNO

Figura I.54 - Arquitetura Interna Simplificada de um Microprocessador Genrico

De maneira geral, todos os microprocessadores, dos mais simples aos mais complexos, possuem
cinco componentes bsicos:

1. Unidade Lgica Aritmtica (ULA)
2. Registradores
3. Barramento(s) Interno(s)
4. Barramentos Externos
5. Unidade Lgica de Controle (ULC)

I.7.1. Unidade Lgica Aritmtica (ULA):
A ULA realiza todas as operaes aritmticas (soma, subtrao etc.) e lgicas (AND, OR, XOR
etc.). A operao a ser efetuada determinada pela instruo que est sendo executada pela ULC.
Os valores a serem efetuados, que podem estar em qualquer registrador de uso geral ou posio
de memria externa, so transferidos para dois registradores (posies de memria interna) que na
arquitetura simplificada denominamos de Op. 1 e Op. 2.
O resultado da operao pode ser colocado em qualquer um dos registradores de uso geral ou
em uma posio de memria externa. O resultado da operao afeta os bits do registrador de status
(flags), que por sua vez podem alterar a ULC na execuo das prximas instrues.

Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.68
I.7.2. Registradores:
Os registradores so posies de memria internas ao microprocessador. Na arquitetura
simplificada da figura I.54, cada retngulo representa uma posio de memria interna que pode ter 8,
16 ou mais bits, dependendo do microprocessador em questo.
Existem dois tipos bsicos de registradores:
- Registradores de Uso Especial
- Registradores de Uso Geral.
I.7.2.1. Registradores de Uso Especial:
Este tipo de registrador cumpre funes especficas dentro do microprocessador. Na figura I.54
esto assinalados os Registradores de Uso Especial mais comumente encontrados em
microprocessadores, tais como: PC (Program Counter), SP (Stack Pointer) etc. A seguir iremos analisar
os registradores de Uso Especial presentes na arquitetura simplificada de nosso microprocessador
genrico.

I.7.2.1.1. Program Counter (PC) (Apontador de Programa):
O PC um registrador que tem como funo guardar o endereo da memria onde esto
armazenados os cdigos de mquina que sero lidos e executados pelo processador. Cada vez que o
processador vai buscar um cdigo de mquina na memria, o contedo do registrador PC transferido
atravs do Barramento Interno para o Registrador de Endereo que est diretamente ligado ao
barramento de endereos. Normalmente, aps a execuo da instruo o PC incrementado para
apontar a prxima instruo a ser lida e executada.

I.7.2.1.2. Stack Pointer (SP) (Apontador de Pilha):
O SP contm um endereo de memria que corresponde ao topo de uma "pilha". A pilha uma
rea de memria usada para armazenar dados que sero retirados na seqncia inversa em que foram
armazenados, como visto na figura I.55.

DADO A SP
SP
DADO A
DADO A DADO A DADO A
SP
SP
SP
SP
DADO C
DADO C
DADO B DADO B
DADO B DADO B
COLOCAO
RETIRADA
NA PILHA
DA PILHA
DADO A

Figura I.55
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.69

na pilha que so armazenados o endereo de retorno e o "contexto" do microprocessador
quando o mesmo recebe um pedido de interrupo. Por "contexto" entende-se o contedo de todos os
registradores que esto em uso quando do pedido de interrupo.
No item I.7 iremos analisar detalhadamente o funcionamento da pilha.

I.7.2.1.3. Registrador de Endereo:
O Registrador de Endereo est ligado diretamente aos pinos do barramento de endereos. no
Registrador de Endereo que o microprocessador coloca o endereo de uma posio de memria ou de
um dispositivo de entrada ou sada (I/O), que ser lida ou escrita.

I.7.2.1.4. Registrador de Dados:
Este registrador est ligado diretamente aos pinos da Via de Dados. atravs dele que o
microprocessador escreve ou l um byte da memria ou I/O. neste registrador que colocado o dado a
ser transferido para memria ou I/O (ciclo de escrita). Quando o processador realiza um ciclo de leitura
de memria ou I/O, o dado capturado pelo processador armazenado inicialmente no registrador de
dados antes de ser transferido para o registrador de destino.

I.7.2.1.5. Instruction Register (IR) (Registrador de Instruo):
neste registrador que so colocados os cdigos de mquina a serem interpretados e executados
pela ULC.

I.7.2.1.6. Registrador de Status ou Flags:
O registrador de status, tambm conhecido como flags, tem seus bits afetados pelas operaes
aritmticas e lgicas. Cada um destes bits chamado de flag (que em portugus significa indicador ou
bandeira) e tem um significado/funo diferente.

PF ZF SF CF ... ...
REGISTRADOR DE SATUS

Figura I.56

Como exemplo de flags geralmente encontrados nos registradores de status de todos os
microprocessadores, temos:
Carry Flag (CF):
O carry flag (indicador de vai-um), nas operaes de soma, um vai-um a partir do bit mais
significativo do resultado e nas operaes de subtrao indica um "pedido de emprstimo" (borrow) a
partir do bit mais significativo do resultado.
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.70
Geralmente as operaes de rotao podem transferir para este flag os bits de registradores ou de
posies de memria.
Parity Flag (PF):
O parity flag (indicador de paridade) indica a paridade, ou seja, se o nmero de bits 1 do
resultado par ou mpar.
Zero Flag (ZF):
O zero flag (indicador de zero) indica quando o resultado de uma operao da ULA zero.
Sign Flag (SF):
O sign flag (indicador de sinal) indica se o resultado de uma operao positivo (bit mais
significativo igual a zero) ou negativo (bit mais significativo igual a um).

I.7.2.2. Registradores de Uso Geral:
Os Registradores de Uso Geral podem ser utilizados pelo programador para armazenar dados
intermedirios de operaes. Em algumas instrues, tambm estes registradores podem cumprir
funes especficas.

I.7.3. Barramento Interno:
O Barramento Interno por onde fluem os dados que so transferidos entre os registradores
internos.

I.7.4. Barramentos Externos:
atravs destes barramentos, tambm conhecidos como buses (plural de bus) ou vias, que o
microprocessador se relaciona com o resto do sistema.(memria e dispositivos de I/O).
Existem trs diferentes tipos de barramentos: Barramento de Endereos, Barramento de Dados e
Barramento de Controle.

I.7.4.1. Barramento de Endereos:
O barramento de endereos utilizado para selecionar a posio de memria ou de dispositivo
de I/O que o processador deseja acessar (escrever ou ler). O tamanho (nmero de linhas) do barramento
de endereos define a capacidade de endereamento do processador. Se o nmero de linhas do
barramento de endereos for n, ento a capacidade de endereamento de 2
n
.
O barramento de endereos unidirecional, pois o endereo sempre colocado pelo
processador, ou seja, a direo do processador para a memria ou dispositivos de I/O.

I.7.4.2. Barramento de Dados:
O barramento de dados uma via bidirecional atravs da qual fluem as instrues e dados.
Como esta via bidirecional, os dados tanto podem fluir do processador para a memria ou dispositivos
de I/O (ciclo de escrita) como podem fluir da memria ou dispositivos de I/O para o processador (ciclo
de leitura). A figura I.57 mostra o esquema dos ciclos de leitura (read) e escrita (write). O tamanho do
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.71
barramento de dados, do barramento interno e da ULA define a categoria do microprocessador, isto :
processadores com barramentos de dados de 8 bits (1 byte) so considerados processadores de 8 bits
(p.ex. 8085, Z80, 8031 etc.); processadores com barramento de dados de 16 bits so considerados
processadores de 16 bits (p.ex. 8086, 68000 etc.). O processador 8088 considerado um processador de
16 bits pois apesar de ter um barramento de dados de 8 bits, possui barramento interno e ULA de 16
bits.

PROCESSADOR
MEMRIA
OU
DISPOSITIVO
I/O
BUS DE DADOS PROCESSADOR
MEMRIA
OU
DISPOSITIVO
I/O
BUS DE DADOS
CICLO DE
CICLO DE
LEITURA
(READ)
ESCRITA
(WRITE)


Figura I.57

I.7.4.3. Barramento de Controle:
O barramento de controle contm os sinais que controlam o fluxo de dados entre o processador e
a memria ou dispositivos de I/O. Estes sinais definem quando, em que direo (leitura ou escrita) e
para onde vo ou de onde vm os dados ou instrues. Os sinais de controle mais comummente
encontrados em barramentos de controle de microprocessadores em geral so:

Read (RD) (Leitura) - Quando o processador coloca esta linha de sada em nvel baixo, significa que
ele quer receber pelo barramento de dados o dado que est na memria ou em um dispositivo de I/O,
endereado pelo barramento de endereos.

Write (WR) (Escrita) - De forma similar quando o processador coloca esta linha de sada em nvel
baixo, significa que o barramento de dados tem um dado a ser colocado em uma posio de memria ou
em um dispositivo de I/O, endereado pelo barramento de endereos.

Memria / Dispositivo de I/O (M/ IO) - Este sinal de sada determina se o que est presente no
barramento de endereos um endereo de memria ou de dispositivo de I/O. Geralmente quando est
em nvel alto indica acesso de dispositivo de I/O e quando em nvel baixo indica acesso de memria.
Podemos, portanto, resumir em um quadro (figura I.58) as cinco situaes na relao entre o
processador, a memria e os dispositivos de I/O.
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.72

WR
RD M/ IO
SITUAO
0 1 1 Escrita em dispositivo de I/O
1 0 1 Leitura de dispositivo de I/O
0 1 0 Escrita em memria
1 0 0 Leitura de memria
1 1 X No h acesso externo
Figura I.58

As situaes que contm WR =0 e RD =0 no esto includas na tabela pois no so
permitidas pelo hardware do microprocessador, j que resultariam em um conflito no barramento de
dados. A letra "X" na tabela indica um "don't care" (tanto faz), ou seja, o "X" tanto pode ser "0" como
pode ser "1".
A figura I.59 mostra o esquema de um sistema composto por um processador com 20 linhas de
endereos e 8 linhas de dados, memrias, porta paralela e controlador de teclado. Como as memrias
utilizadas so de 32 K posies, as linhas de A0 a A14 so ligadas diretamente s memrias. As linhas
de A15 A19 em conjunto com a linha de M/ IO, so entradas do circuito de seleo de memria, que
ir habilitar um dos sinais de CS de uma das duas memrias. Existem ainda um outro circuito de
seleo reservado s para dispositivos de entrada e sada (I/O), que tem como entradas as linhas A0, A1
e A2 do barramento de endereos e o sinal de M/ IO e como sadas os sinais que selecionaro um dos
dois dispositivos de I/O (controlador de teclado e porta paralela).
O sinal de M/ IO sendo entrada dos dois circuitos selecionadores age como habilitador destes
circuitos. Portanto se M/ IO =1 ento apenas o circuito selecionador de dispositivos de I/O estar
habilitado e um dos dispositivos de I/O ser selecionado , de acordo com o contedo do barramento de
endereo. De outra feita se M/ IO =0 apenas o circuito de seleo de memria estar habilitado e o
chip de memria bem como a posio (gaveta) dentro deste chip a ser acessada ser definida pela
contedo do barramento de endereos.
Como veremos mais adiante existem instrues que acessam memria e instrues que acessam
dispositivos de entrada e sada. As primeiras geram ciclo de escrita (WR =0) ou ciclo de leitura (RD =
0) com o sinal de M/ IO em nvel baixo, as seguintes geram estes mesmos ciclos com o sinal de
M/ IO em nvel alto. O motivo pelo qual necessrio diferenciar um acesso de memria de um acesso
de I/O explicado no exemplo a seguir:
Se o endereo que ir selecionar a controladora de teclado for 303h, quando a instruo que far
uma leitura nesta controladora colocar no barramento de endereos a seqncia de zeros e uns que
forma o valor 303h (1100000011) este mesmo endereo estar presente tambm nos pinos das
memrias. Quando ento o processador der o pulso para zero no pino de RD, se no houvesse o sinal de
M/ IO para habilitar apenas o circuito de seleo de I/O, sem habilitar o de memria, tanto o contedo
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.73
do controlador de teclado (cdigo da tecla pressionada) quanto o contedo da posio 303h da memria
seriam colados no barramento, gerando um conflito.

.
.
.
.
.
.
D7
D1
D0
A14
A0
.
.
6
2
5
6
2
.
D7
D1
D0
A14
A0
.
.
6
2
5
6
2
.
RD
WR
CS
RD
WR
CS
P
R
O
C
E
S
S
A
D
O
R
D0
D1
D2
D3
D4
D5
D6
D7
WR
D0
D1
D2
D3
D4
D5
D6
D7
STB
BUSY
D0
D1
D2
D3
D4
D5
D6
D7
STB
BUSY
D0
D1
D2
D3
D4
D5
D6
D7
WR
P
O
R
T
A
P
A
R
A
L
E
L
A
+ 5 V
TECLADO
RD
RD
D0
D1
D2
D3
D4
D5
D6
D7
C
O
N
T
R
O
L
A
O
D
R
D
E
T
E
C
L
A
D
O
RD
CIRCUITO
DE
SELEO
CS
CS
A14
A0
A19
A15
CIRCUITO
DE
SELEO
DE
MEMRIA
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
M / IO
DE
I/O
A0
A14
M/IO
M/ IO
A15
A19
I
M
P
R
E
S
S
O
R
A
.
.
.
WR

Figura I.59
Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.74
Interrupt Request (INTR) (Pedido de Interrupo) - um sinal de entrada que colocado em nvel
alto por algum dispositivo de I/O no sentido de solicitar que o processador interrompa o que est
fazendo para atend-lo.
Quando o processador est predisposto a aceitar est interrupo, ele termina a execuo da
instruo em curso, salva na pilha os dados que ele estava manipulando e o endereo da prxima
instruo e desvia para um endereo geralmente preestabelecido. Neste endereo dever ter sido
carregada a rotina de tratamento do dispositivo que solicitou a interrupo.

Interrupt Acknowledge (INTA) (Reconhecimento de Interrupo) - Este sinal de sada colocado
em nvel baixo pelo processador para informar ao dispositivo de I/O que o processador aceitou o pedido
de interrupo. Em alguns processadores, como por exemplo os da famlia 86, este sinal funciona como
um sinal de leitura da identificao do dispositivo que solicitou a interrupo. Ao receber o pulso de
INTA o dispositivo de I/O coloca no barramento de dados um vetor que aponta a rotina de tratamento.
As aes ocorrem como no diagrama de tempo mostrado na figura I.60.

ENDEREO DA ROTINA DE
TRATAMENTO DE INTERRUPO
PEDIDO DE INTERRUPO FEITO POR UM DISPOSITIVO DE I/O
ACEITAO DA INTERRUPO FEITA PELO PROCESSADOR
BUS DE
DADOS
COLOCADA PELO DISP. DE I/O
INTR
INTA

Figura I.60

Um exemplo de dispositivo de I/O que utiliza interrupo o controlador de teclado, como visto
na figura I.61.
Ao detectar uma tecla pressionada o controlador ativa a linha de solicitao de interrupo que
far com que o processador termine a execuo da instruo em curso, guarde na pilha o endereo da
prxima instruo que seria executada caso no fosse requisitada uma interrupo e responda com o
sinal de INTA. O controlador de teclado colocar no barramento de dados um valor que indica o tipo
da interrupo, que por sua vez indica em que endereo o processador ir encontrar a rotina de
tratamento de interrupo de teclado. Neste caso esta rotina ir ler o controlador de teclado para obter
deste o cdigo do caracter que foi digitado. Ao final desta rotina o processador ir retornar para o ponto
onde ele estava no momento em que foi interrompido. Este retorno s possvel porque antes de atender
a interrupo o processador salvou na pilha o endereo da instruo seguinte.
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.75

+ 5 V
TECLADO
CONTROLADOR
DE
TECLADO
.
.
.
D0
D1
D2
D7
D0
D1
D2
D7
RD RD
P
R
O
C
E
S
S
A
D
O
R
WR WR
INTA INTA
INTR INTR

Figura I.61

No item II.8, iremos analisar como se processam as interrupes nos processadores da famlia
86.

I.7.5. Unidade Lgica de Controle (ULC):
A ULC decodifica (interpreta) o cdigo de mquina colocado no Registrador de Instruo (IR) e
comanda todas as aes dentro do microprocessador no sentido de executar a instruo que este cdigo
representa. Um sinal de clock, advindo geralmente de um oscilador a cristal, sincroniza as aes da
ULC

Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.76
I.8. CODIFICAO E EXECUO DE PROGRAMAS:

Como mencionado anteriormente os programas nada mais so do que sequncias de cdigos
binrios (usualmente chamados de cdigos de mquina) colocados na memria e buscados pelo
processador para serem executados. Veremos agora como se do a elaborao, codificao e execuo
de programas.
Para exemplificar, podemos querer que o nosso microprocessador genrico execute uma funo
simples, tal como somar dois nmeros (p. ex. 3 e 5).
O programador pode escolher qualquer um dos vrios compiladores existentes (Basic, Fortran,
Pascal, C etc.) ou utilizar um assembler (montador).
O assembler um programa que traduz as instrues escritas de forma mnemnica para os
respectivos cdigos de mquina. Como o prprio nome j diz, uma forma mnemnica de representarmos
uma instruo atravs de siglas que lembrem o significado da ao que esta instruo realiza. Chama-
se de linguagem ASSEMBLY a srie de mnemnicos relativos a um determinado microprocessador.
Portanto, um programa escrito de forma mnemnica um programa escrito em linguagem ASSEMBLY.
Como exemplo de mnemnicos veremos as instrues de transferncia de dados e soma
(necessrias para escrevermos o programa da soma de dois nmeros). Os cdigos utilizados como
exemplo sero os cdigos do microprocessador 8088 da Intel.
A instruo de transferncia geralmente possui o mnemnico MOV (do verbo ingls move, que
significa mover). A instruo MOV requer dois operandos, o operando-destino e o operando-fonte. O
operando-fonte indica onde est o byte (ou word) a ser transferido. O operando-destino indica para onde
est indo este byte (ou word).
A instruo de soma geralmente possui o mnemnico ADD (do verbo ingls add, que significa
somar). A instruo ADD tambm requer dois operandos que indicam onde esto os dois dados (bytes,
words etc.) a serem somados. Normalmente, ao final da operao de soma o resultado colocado na
posio indicada pelo primeiro operando da instruo.
Em linguagem assembly o nosso programa como visto abaixo:
MOV AL,3
ADD AL,5
Este programa dever ser editado em um editor de textos que gerar um arquivo-texto (figura
I.62) onde cada caracter ocupa um byte, segundo a tabela ASCII. O Anexo D trs a tabela ASCII
completa..
Mdulo I - Conceitos Gerais de Sistemas Computacionais
___________________________________________________________________________________
___________________________________________________________________________________
I.77

4D M 44 D
4F O 44 D
56 V 20
20 41 A
41 A 4C L
4C L 2C ,
2C , 35 5
33 3 0D CR (Retorno do Carro)
0D CR (Retorno do Carro) 0A LF (Mudana de Linha)
0A LF (Mudana de Linha)
41 A
Figura I.62

Para criar (montar) um arquivo contendo os bytes de cdigo de mquina necessrio passar este
arquivo texto por um programa montador (assembler), como visto na figura I.63. O arquivo-texto
conhecido como programa-fonte e o arquivo contendo os bytes de cdigo de mquina conhecido como
programa-objeto.

MONTADOR
(ASSEMBLER)
PROGRAMA
FONTE
(ARQUIVO TEXTO)
PROGRAMA OBJ ETO
(ARQUIVO COM
CDIGOS DE MQUINA )

Figura I.63

A tabela que relaciona cada instruo com o(s) byte(s) de cdigo correspondente fornecida
pelo fabricante do microprocessador. As instrues utilizadas no programa da soma de dois nmeros
com os respectivos cdigos de mquina para o microprocessador 8088 so dadas na tabela mostrada na
figura I.64.

INSTRUO (Linguagem Assembly) CDIGO DE MQUINA
MOV AL,<valor de 8 bits> B0 <valor de 8 bits>
ADD AL,<valor de 8 bits> 04 <valor de 8 bits>
Figura I.64

Portanto, quando o programa-fonte passar pelo montador ser gerado um programa-objeto que
ser um arquivo contendo os seguintes bytes mostrados na figura I.65:

Arquitetura de Microcomputadores Victor Paulo Peanha Esteves
___________________________________________________________________________________
___________________________________________________________________________________
I.78
Programa-fonte: Programa-objeto:
4D M MOV AL, B0
4F O PROGRAMA 03
56 V MONTADOR ADD AL, 04
20 5 05
41 A
4C L
2C ,
33 3
0D CR (Retorno do Carro)
0A LF (Mudana de Linha)
41 A
44 D
44 D
20
41 A
4C L
2C ,
35 5
0D CR (Retorno do Carro)
0A LF (Mudana de Linha)
Figura I.65

Você também pode gostar