Você está na página 1de 107

Cópia não autorizada. Reservados todos os direitos autorais.

is.
r a
uto
a
os
eit
r
di
os
Microprocessadores todos

os
ad
r v
se
e
. R
da
a
riz
to
au
ão
n
ia
óp
C

133
Cópia não autorizada. Reservados todos osMdireitos autorais.
ICROPROCESSADORES
3E
Cópia não autorizada. Reservados todos os direitos autorais.

is.
r a
uto
a
os
eit
r
di
os
os
od
t
o s
a d
r v
s e
e
R
. Rua dos Timbiras, 257/263 – São Paulo – SP – 01208-010
Editora a
d Tel.: (11) 33-35-1000 / Fax: (11) 33-35-1020
Aline Palhares
z a
Desenvolvimento de conteúdo
ri atendimento@institutomonitor.com.br
www.institutomonitor.com.br

to
Marco Aurélio Fernandes Soares

Mediação pedagógica
au Impresso no Parque Gráfico do Instituto Monitor
Rua Rio Bonito, 1746 – São Paulo – SP – 03023-000
Equipe Técnico Pedagógica Tel./Fax: (11) 33-15-8355

ã o
do Instituto Monitor grafica@monitorcorporate.com.br

n
Design gráfico Em caso de dúvidas referentes ao conteúdo, consulte o
ia
Equipe Técnico Pedagógica e-mail: eletrônica@institutomonitor.com.br

óp Editorial Ltda.
do Instituto Monitor

C
Monitor Todos os direitos reservados
Lei nº 9.610 de 19/02/98
Proibida a reprodução total ou parcial, por qualquer meio,
principalmente por sistemas gráficos, reprográficos,
fotográficos, etc., bem como a memorização e/ou
recuperação total ou parcial, ou inclusão deste trabalho
em qualquer sistema ou arquivo de processamento de
dados, sem prévia autorização escrita da editora. Os
infratores estão sujeitos às penalidades da lei,
respondendo solidariamente as empresas responsáveis
pela produção de cópias.
Cópia não
3ª Edição autorizada. Reservados todos os direitos autorais.
- Fevereiro/2005
Cópia não autorizada. Reservados todos os direitos autorais.

Índice r a i s.

u to
a
Apresentação............................................................................................................. 8
s
Lição 1 - Breve Introdução aos Microprocessadores i to
ire
Introdução................................................................................................................. 9
d
1. Histórico........................................................................................................... 9
s
Exercícios Propostos............................................................................................... 11
o
Lição 2 - Memórias Eletrônicas o s
o d
Introdução............................................................................................................... 13
t
1. Estrutura das Memórias................................................................................ 13
o s
Exercícios Propostos............................................................................................... 17
d
a– Parte I
Lição 3 - Memórias Eletrônicas Reais
r v
s e
Introdução............................................................................................................... 19
1. Memórias ROM.............................................................................................. 19
e
. R
2. Memórias PROM............................................................................................ 19
3. Memórias EPROM......................................................................................... 21
4. Memórias EEPROM. d a . ..................................................................................... 22
z a
5. Resumo........................................................................................................... 22
Exercícios Propostos. i
r .............................................................................................. 23
t o
a u
Lição 4 - Memórias Eletrônicas Reais – Parte II
Introdução............................................................................................................... 25
ã o
1. Memórias SRAM............................................................................................ 25
2. n
Memórias DRAM........................................................................................... 27
pia3. Resumo........................................................................................................... 29
óExercícios Propostos............................................................................................... 30
C
Lição 5 - Preparação para Microprocessadores
Introdução............................................................................................................... 31
1. Termos Técnicos e suas Explicações............................................................ 31
2. Controlador Programável............................................................................. 32
Exercícios Propostos............................................................................................... 36

Cópia não autorizada. Reservados todos os direitos autorais.

133/
Cópia Lição
não6autorizada. Reservados todos os direitos autorais.
- Microprocessadores
Introdução .............................................................................................................. 39
1. Cérebro Humano e Cérebro Eletrônico ...................................................... 39
2. Microprocessadores Internamente .............................................................. 40

Lição 7 - Microprocessador Z80


Introdução .............................................................................................................. 43
1. Z80 Internamente ......................................................................................... 43
i s.
Lição 8 - Microprocessador Intel 80X86 r a
to 49
Introdução ..............................................................................................................
u
1. O Intel 80X86 e a História da Computação Pessoal .................................... a 49

o s
2. Do 80286 para Frente ................................................................................... 50
i t
2.1 A CPU Intel 80286 ................................................................................... 50

r e
2.2 A CPU Intel 80386 ................................................................................... 51
di
2.3 A CPU Intel 80486 ...................................................................................
Exercícios Propostos .............................................................................................
52
57
o s
Lição 9 - Software
o s
o d
Introdução .............................................................................................................. 59
t
1. História do Software do IBM-PC................................................................. 59

3. Software em Linguagem de Máquina


s
2. O Que é Software .......................................................................................... 60
o .......................................................... 61
a d
4. Fluxograma ................................................................................................... 67
r v
Exercícios Propostos ............................................................................................. 68

s e
Lição 10 - Noções de Programação e Assembly
. R
Introdução .............................................................................................................. 69

2. Como Um Programa d a “Roda” ........................................................................ 70


1. Fluxograma ................................................................................................... 69

i za
3. Ligando o Microcomputador ........................................................................ 70
r
o da Microsoft – Software Assembler 80X86
Lição 11 - Debug
u t
Introdução a .............................................................................................................. 73

ã o
1. Restrições do Debug ..................................................................................... 76
n Propostos ............................................................................................. 83
Exercícios

ia 12 - Dispositivos de I/O (Entrada e Saída)


p
Lição
óIntrodução .............................................................................................................. 85
C 1. Canais de I/O ................................................................................................ 85
2. Porta de Comunicação Paralela do IBM-PC Compatível ........................... 90
3. Periféricos Simples ...................................................................................... 92
4. Testes ............................................................................................................. 93
Exercícios Propostos ............................................................................................. 97

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/6
Cópia Lição
não13autorizada.
- Programas paraReservados
Periférico Didáticotodos os direitos autorais.
Introdução .............................................................................................................. 99
1. Sub-rotinas ................................................................................................... 99
2. PUSH e POP Salvando Conteúdos na Pilha (Stack) .................................. 102
3. Saída de Dados em Canal de I/O................................................................. 103
4. Entrada de Dados em Canal de I/O ............................................................ 104
Exercícios Propostos ............................................................................................ 108

is.
Lição 14 - Noções para Montagem de um
Microcomputador IBM-PC Compatível r a
to
Introdução ............................................................................................................. 109
u
a
1. Escolha seu Microprocessador ................................................................... 109
s
2. Chipset e Mother-Board.............................................................................. 110
o
eit
3. Cooler ........................................................................................................... 111
4. Memórias RAM – Pente ............................................................................... 112
r
di
5. Gabinetes ..................................................................................................... 112
6. Periféricos Comuns ..................................................................................... 113
os
s
Respostas dos Exercícios Propostos .................................................................... 118
o
od
t
os
ad
r v
se
e
. R
da
a
riz
to
au
ão
n
ia
óp
C

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/7
Cópia não autorizada. Reservados todos os direitos autorais.

Apresentação is.
r a
uto
a
estas fabulosas máquinas da era contemporânea. Entendê-los,to
s
Os microprocessadores constituem o coração dos microcom­putadores,
portanto,
i
re
é requisito primordial na formação do Técnico em Eletrônica.
i
Neste fascículo você irá analisar as diferenças ed acompanhar a
o
evolução dos microprocessadores, desde o princípio s de sua utilização
s irá compreender
em microcomputadores até os dias de hoje. E ainda,
a estrutura interna dos microprocessadores eoo funcionamento básico
de computadores. o d
t
Bom estudo! o s
ad
r v
e
es
. R
d a
iza
or
u t
a
o

pia
ó
C

Cópia não autorizada. Reservados todos os direitos autorais.

133/
Cópia não autorizada. Reservados todos os direitos autorais.
lição

Breve Introdução aos


1 Microprocessadores is.
r a
Introdução Criado na Segunda Guerrato Mundial para


u


a
calcular trajetórias balísticas, o conceito de ar-


s


Tudo começou quando o homem começou a quitetura do ENIAC é até hoje aplicado nos


contar as coisas. Quanto mais coisas eram acu-
todeste conceito.
modernos microprocessadores. John Von


i


re
muladas, mais difícil era o controle das quanti- Neumann foi o criador


i

dades.
d

Os semicondutores avançaram e surgiu a

Quando começou o comércio, ou seja, a tro-



s
oencapsulamento. Surgiram os CIs
idéia de fabricar

circuitos inteiros integrados


em um únicos

ca de bens e mercadorias, o controle do dinhei-


o Integrados) que, como não poderia

(Circuitos
d

ro tornou-se um problema a ser resolvido.


to

deixar de ser, era uma calculadora.


Avançando no tempo, surgiram as calculado-

ras, para facilitar a vida do homem, cometen- s Financiada pelos japoneses, uma jovem

o

do-se menos erros.


d empresa formada por engenheiros vindos da

a

v grande escala CIs para calculadoras. Seu nome


Fairchild foi contratada para produzir em

1. Histórico r

e

s era INTEL, de INTegrated ELectronics.


e

Re sub-
As calculadoras até então eram mecâni-

. A Intel começou produzindo memórias,


cas e limitadas a cálculos como adição


a

tração. Por coincidência ou não,destas são as que eram a base para os modernos processa-

a

dores. Além do mais, memórias podem ser uti-


z
duas únicas operações matemáticas que os

ri Veremos isso lizadas sem que seja em um microcomputador.


microprocessadores sabem fazer.


um pouco mais adiante. to

Ela foi a primeira a produzir e patentear os


au

microprocessadores.

o
Surgiram os semicondutores. Surgiram os

ã Com o avanço e a produção em larga esca-


n
transistores. Surgiu a idéia de construir uma

la, o preço dos microprocessadores caíam e um


ia
calculadora eletrônica. executivo da Intel, Gordon Moore, lançou a

óp tentativa de construir uma


chamada Lei de Moore: “A cada ano e meio a


C

A primeira capacidade de um microprocessador dobra e


calculadora foi o que hoje é chamado de com- seu preço cai”.



putador ENIAC, feito de válvulas eletrôni-



cas e do tamanho de um prédio de 4 andares. Muitos microprocessadores eram utilizados


Consumia uma energia enorme e só era liga- em microcomputadores no final da década de 70



do à noite por causa deste consumo elevado. e início da década de 80, mas não havia um pa-

Os bairros ao redor do prédio tinham pro- drão. Muitos eram os microcomputadores cha-

blemas com a tensão elétrica baixa em vir- mados de PC, que significa Personal Computer

Cópia
tude não autorizada. Reservados
do ENIAC. todos os
ou computador direitos
pessoal. autorais.
Este conceito de com-


○ ○ ○ ○ ○

133/9
Instituto Monitor

Cópiapessoal
putador nãoé autorizada.
o mesma da escova Reservados
de den- todos os édireitos
Então, o que da IBM? O autorais.
que torna o



tes: cada pessoa deve ter o seu PC. IBM-PC impossível de copiar (hoje dizemos



clonar) um IBM-PC? O que dá direito autoral


No começo da década de 80, um padrão à IBM sobre o seu IBM-PC? A resposta é o



em termos de microprocessadores estava se software, o programa de computador que faz



fundamentando. Era o ZILOG Z80. a “máquina” funcionar. Digamos que seja a


“alma” do computador. Qualquer um pode-


s.


A Zilog é uma empresa formada por en- ria copiar o corpo do IBM-PC, mas não pode-
i


genheiros dissidentes da Intel que trabalha- ria copiar a “alma”, pois estava protegida por
a


r


vam em um projeto de microprocessador que direitos autorais.
to



esta achou inviável produzir. Esse grupo de
u


engenheiros saiu da Intel e fundou a Zilog, Mais tarde a Compaq conseguiu que- a



produzindo o Z80 – microprocessador de 8 s
brar o “código fonte” e produzir seu pró-


o
it


bits em encapsulamento de 40 pinos, que não prio programa para controlar o corpo do


dependia de outros circuitos integrados no e
IBM-PC sem que fosse necessário pagar


r
di

que dizia respeito ao controle de seu proce- direitos autorais. Aliás, o nome do progra-


ssamento. ma da IBM para controlar o computador é
os

BIOS, uma sigla que significa Basic Input


s

A IBM (International Business Machine) Output System (Sistema Básico de Entra-


o

d

viu um mercado crescente de PCs e, sendo da e Saída [de Dados]). BIOS também lem-
o

ela uma tradição em computação eletrônica,


t
bra BIO, que é VIDA. Sem a BIOS o

s
encarou o desafio de lançar seu próprio PC, microcomputador não funciona, não tem

que se chamaria IBM-PC. o “vida”. Dentro da BIOS, que nada mais é


d

a do que um CHIP de memória eletrônica, en-


v

r
Não havia tempo para produzir um contramos softwares, ou seja, a “alma” do

e
microprocessador IBM. Com o prazo se es- IBM-PC. São estes softwares (programas)

s

e
gotando, um engenheiro propôs aos executi- que fazem a máquina saber quantos drives

R

vos da IBM um microcomputador com arqui- de disco tem, qual o teclado utilizado, etc.
.

a
tetura aberta, do Inglês open architecture.

d

Tratava-se de montar um microcomputador Deixando de lado as conjecturas e o ro-


a

iz

com partes já encontradas no comércio. mantismo histórico, vamos estudar os micro-


r

o processadores em sua forma básica. Este es-


t

Os demais componentes, como monitor, tudo levará você a conhecer e até a desenvol-
au

teclado, microprocessador e memórias foram ver pequenos sistemas microprocessados.


o
escolhidos entre os fabricantes existentes Basearemos nossos estudos em microproce-

ã

n
que, contratados pela IBM, produziriam con- ssadores de 8 bits, como o Z80 ou 8085, ou-

ia
forme especificação para a IBM. tros de 16 e 32 bits da família Intel 80X86.

óp

C













Cópia não autorizada. Reservados todos os direitos autorais.




○ ○ ○ ○ ○

133/10
Cópia não autorizada. Reservados todos os direitos autorais.

Exercícios Propostos is.


r a
1 - A Lei de Moore diz que:
uto
( ) a) a capacidade dos microprocessadores dobra a cada ano e meio.
a
( ) b) o preço dos microprocessadores dobra a cada ano e meio.
os
it
( ) c) se você tiver 50% de chance de errar é certeza que você erra.
( ) d) a capacidade dos microcomputadores dobra a cada ano e meio.
r e
di
( ) e) a capacidade das memórias dobra a cada ano e meio.

2 - INTEL significa:
os
(
(
) a) Inteligência;
) b) Internet; os
( ) c) International Business Machine; od
( ) d) Integrated Electronics; t
( ) e) International Telephonic. o s
ad significam:
3 - Em microcomputadores, “corpo” ev“alma”
( ) a) hardware e software; e r
( ) b) carcaça e vida;
es
( ) c) BIOS da IBM;
. R
( ) d) Microsoft;
( ) e) clone. d a
za
i
or pela IBM.
4 - Open Architecture ou arquitetura aberta, no IBM-PC, significava:
t
( ) a) tudo era fabricado
( ) b) tudo eraufabricado por outras empresas.
a
o
( ) c) nada era fabricado pela IBM, com exceção da BIOS.


( ) d) tudo era fabricado pela IBM, com exceção da BIOS.
( ) e) Nenhuma das alternativas anteriores.
ia
5ó-pPara os micros compatíveis com o IBM-PC o que significa BIOS?
C( ) a) Sistema Operacional.
( ) b) Vida.
( ) c) Sistema Básico de Entrada e Saída de Dados.
( ) d) Basic Input Operational System.
( ) e) Nenhuma das alternativas anteriores.

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/11
Cópia não autorizada. Reservados todos os direitos autorais.
lição

2 Memórias Eletrônicas is.


Veja o exemplo a seguir.
r a
Introdução to


u


a


s


Assim como a Intel começou fabricando


memórias eletrônicas, para só depois produ-
to


i


re
zir microprocessadores que utilizariam suas


i

memórias, nosso estudo seguirá esta linha
d

cronológica.


os
Memórias eletrônicas basicamente arma- s

o

zenam informações eletrônicas. Armazenam


d

to

bits (binary digits) que, eletricamente falando,


armazenam níveis de tensão +5 V representan-


s

do N.L. = 1 e GND representando N.L. = 0. Ele- o


d

tronicamente falando, memórias eletrônicas


a Memória Não Multiplexada

v
são circuitos lógicos formados inicialmente por 16 pinos, 16 linhas, 16 saídas de 1 bit

r

e
flip-flops tipo DATA (veremos mais tarde ou- Figura 1

s

tras técnicas de memórias).


e

R 10H

. 0FH

1. Estrutura das Memórias


a

0EH

ad matriz (li-

0DH

0CH
Organizadas no formato dezuma

i
DEMULTIPLEX

0BH
nha × coluna), cada linha darmemória

é nume- 0AH
o A3

t 09H

rada a partir do zero e chamadas de endereços A2

au
08H

de memória, ou simplesmente endereços (em A1


07H
A0

06H
Inglês, address).
o

ã 05H

Geralmentenas memórias têm muitas li-


04H

03H

ia muitos endereços onde pode- 02H


nhas, portanto,
óp informações digitais (1 ou 0).
01H

mos colocar 00H


C


Lembra-se dos demultiplexadores? Pois é!


CONTROLE DEMULTIPLEX

Internamente, as memórias eletrônicas possu-


em um DEMUX, pois suas linhas de endereço



estão multiplexadas, o que permite uma redu-



ção na pinagem externa do CI.


RTW DCS

Memória Multiplexada

Cópia não autorizada. Reservados4todos os 16


pinos, 16 linhas, direitos autorais.
saídas de 8 bits (1 byte)

Figura 2

○ ○ ○ ○ ○

133/13
Instituto Monitor

Cópia não
A figura autorizada.
1 mostra Reservados
um comparativo. À es- todos
mado de reados
ou direitos autorais.
leitura da memória. Este



querda temos uma memória com 16 linhas, bloco controla ainda a ativação de toda a me-



ou seja, 16 endereços, começando pelo zero. mória por meio da saída em tri-state.


Por não estar multiplexada internamente, ela



precisa de 16 pinos externos no CI, um pino Basicamente, todas as memórias moder-



para ativar cada um dos endereços. nas funcionam usando este princípio, mudan-


do um pouco de tecnologia e métodos de mul-


s.


Em cada endereço da memória da es- tiplexação.
i


querda só temos 1 bit, ou seja, somente uma
a eletrô-


r


informação digital, que pode ser 0 ou 1. Para Para fixar o conceito de memória
to destas me-



cada saída teríamos um pino externo ao CI, nica, vamos fazer uma analogia
u


então mais 16 pinos. Se contarmos com os mórias com arquivos de aço, a muito utilizados



pinos de alimentação (+Vcc e GND), já são 34 em escritórios. s


o
it arquivo de aço seja


pinos. É muito pino!


Suponha que e cada


uma pastilha deirmemória (ou CI). Suponha

Olhe agora o exemplo da figura 2. A me-
d deste arquivo de aço esteja


mória da direita tem a mesma quantidade de que cada gaveta
linhas (endereços) que a memória da esquer-

numerada o

s
a partir do zero. Suponha que den-
s gaveta só caiba uma informação

da; porém, por estar multiplexada interna- tro de cada


o

d

mente, só precisa de 4 pinos externos no CI digital, ou seja, 1 bit.


o

para ativar cada uma das linhas. Estes pinos


t

são nomeados com a letra A devido ao nome


s

address e seguido da numeração correspon- o


dente ao expoente da base 2. Lembra-se dos ad



contadores com flip-flops? E suas saídas Q0, v


r

Q1, etc.? Ou então dos MUX e DEMUX? e


es

R A0,

Quando todas as linhas de endereço


.

a
A1, A2 e A3 estiverem em nível lógico 0, isto

d

forma o binário 0000 , que corresponde ao


a

iz destas me-

hexa zero, indicando estar ativado o endere-


r

o semelhante à
ço zero da memória. A utilização

t

mórias multiplexadas é muito


au que as saídas tam-

dos MUX e DEMUX. Note


o Cada endereço ago-


bém são multiplexadas.

ã

n
ra carrega 8 informações digitais, 8 bits, ou

a
seja, 1 byte. Desta forma, teremos, nas 8 saí-
pi

das, as 8 informações correspondentes ao


endereçoóativado.

C


Note também um bloco de controle da Alguém pede para você ver o conteúdo

memória. Através dos pinos presos a ele con- da gaveta 4. Para isso, você executa um pro-

trolam-se as informações, se serão gravadas cesso de leitura da memória. Vai até o arqui-

(ou escritas) na memória. Chamamos este pro- vo, abre a gaveta certa e olha o que tem lá.

cesso de write ou escrita na memória. Con- Fecha a gaveta e pronto. O que estava lá den-

trola-se também se as informações sairão (ou tro você viu e por lá ficou. Você não alterou

serão lidas) da memória, processo este cha- nada. Você somente viu o que tinha lá.

Cópia não autorizada. Reservados todos os direitos autorais.




○ ○ ○ ○ ○

133/14
Instituto Monitor

Cópia não autorizada. Reservados


O que você precisou todos chamada
para consultar a memória os direitos
arqui- autorais.
vo de aço?

1) Onde estava a gaveta?


2) Qual o número da gaveta?
3) O que fazer depois da gaveta aberta?

Esta mesma ordem deve ser seguida ao utilizar um CI de me- is.


mória: r a
uto
1) Ativar a pastilha de memória que se deseja trabalhar. a
os
2) Endereçar a memória. Dizer qual o endereço da memória que se
deseja trabalhar.
e it
d
3) O que fazer nesse endereço. Ler ou escrever (read ouir write) na-
os
quele endereço de memória.

ou empilhamento de locações de memória.dNa osfigura


É costume representar memórias eletrônicas como uma lista
a seguir indi-
to
camos o endereço da memória em hexadecimal e, dentro de cada
locação, o seu conteúdo.
os
ad
XXXXH
r v
s e
e
. R
d a
a
riz
to
u
XXXXH
XXXXH
a XXXXH

ã o
n
ia
óp
C
Final da
Início da Trecho da
Memória Memória
Memória Memória
completa

Figura 3

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/15
Instituto Monitor

Cópia não autorizada. Reservados


Na figura, XXXXH todos
representa o número os direitos
do endereço da me- autorais.
mória expresso em hexadecimal. Dentro de cada locação (endere-
ço) de memória podemos ter 1 bit, 4 bits, etc., expressos em binário
ou em hexadecimal.

Resumindo:

• Memórias eletrônicas armazenam informação digital.


i s.
• Internamente, são como matrizes linha × coluna.
r a
• Cada linha da matriz é chamada de endereço de memória.
u to
• Em cada endereço de memória podemos armazenar 1 bit, 4 bits a
ou 8 bits, dependendo de como a memória foi fabricada. s
ito(read)
re
• Em cada endereço de memória a informação pode ser lida
e o conteúdo daquele endereço não se altera.
d i
(write) e o conteúdo daquele endereço é perdido,
s
• Em cada endereço de memória a informação pode ser escrita
o ficando nele o
novo conteúdo colocado.
o s
d
to
• Para trabalhar com estes chips de memória devemos indicar o
CI, o endereço e o que se deseja fazer.
• Várias memórias podem ser ligadas o s para formar uma memória
a
maior; isto só é possível devido dao controle de ativação de toda a
pastilha no sistema.
r v
s e
• Até hoje memórias são dispostas em matrizes linha × coluna, só
mudando a tecnologiaedo material utilizado e métodos de multi-
. R
plexação dos endereços.
d
• Chamamos de dados
a os conteúdos de um endereço de memória.
• Os dados sãoizanúmeros binários de 1 bit, 4 bits, 8 bits, etc.
tor
au
ão Anotações e Dicas
n
ia
óp
C

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/16
Cópia não autorizada. Reservados todos os direitos autorais.

Exercícios Propostos is.


r a
1 - Inicialmente a matriz de uma memória era feita de:
uto
( ) a) MUX;
a
( ) b) DEMUX;
os
it
( ) c) flip-flops;
( ) d) chips;
r e
di
( ) e) células.

2 - Por que as linhas de endereço das memórias foram multiplexadas?


os
(
(
) a) Para economizar flip-flops.
) b) Porque se desejava uma memória menor. os
( ) c) Para reduzir o número de pinos externos do CI. od
( ) d) Para aumentar o número de pinos externos do CI. t
( ) e) Para fazer flip-flops. o s
a d
3 - Qual é a seqüência exata para escrever
r v na memória?
e
...................................................................................................................................
s
e
...................................................................................................................................
. R
...................................................................................................................................
d a
...................................................................................................................................
a
iz
...................................................................................................................................
r
...................................................................................................................................
o
t
4 - Uma memória au com 64 endereços é equivalente a um arquivo de aço de:
( ) a) 64 gavetas;
ã o
n
( ) b) 7 gavetas;

( p
a
( ) c) 63 gavetas;
i 32 gavetas;
) d)
( ó) e) 2 gavetas.
64

C
5 - Uma memória multiplexada com 10 linhas de endereço, A0 até A9:
( ) a) pode endereçar 1.024 locações de memória.
( ) b) tem 10 endereços.
( ) c) tem 10 linhas de dados.
( ) d) pode endereçar 10 locações de memória.
( ) e) armazena 10 bits.
Cópia não autorizada. Reservados todos os direitos autorais.
○ ○ ○ ○ ○

133/17
Cópia não autorizada. Reservados todos os direitos autorais.
lição

Memórias Eletrônicas Reais


3 Parte I is.
r a
Introdução ginalmente não tinham dispositivosto eletrôni-


u


cos. Exemplos:
a


s


As memórias eletrônicas aplicáveis em


microcomputadores ou sistemas eletrônicos es-
toe ruídos;
• brinquedos que, ao apertar um botão,


i


re
tão divididas em duas categorias: falam ou emitem sons


• liquidificadoresicom painéis digitais, que

d se o copo está bem

• memórias fixas, não-voláteis ou somente

para leitura (ROM) e ○



s
mostram a hora,
encaixado,o etc.;
s de lavar roupas com controle

• memórias de rascunho, de trabalho ou


o

• máquinas
d

voláteis (RAM).
o

eletrônico;
t

Vamos estudá-las. •srádios-relógios, máquinas fotográficas, etc.


o

d

1. Memórias ROM a Eram aparelhos originalmente mecânicos e


v

r que agora trazem a eletrônica embarcada para


e facilitar o controle ou enfeitar.


A memória do tipo ROM, do Inglês Read


s

Only Memory (Memória Somente para Leitu- e


R

Videocassetes, DVDs, videogames, cartu-


.
ra) é aquela em que não podemos escrever ou

a chos de videogames, auto-rádios, CD players,


alterar seu conteúdo.


d

a etc., também se utilizam deste tipo de memória.


z nessa memó-

Como é que vamos poderiler


r

o emnela? Vantagens: devido à grande quantidade pro-


ria se não podemos escrever Ela já é


t

u
fabricada com as informações seu interior e duzida, o preço por unidade é bem pequeno.

a fazer é acessá-las para


o máximo que você pode Desvantagens: caso seja necessário alterar al-

o

leitura (read).

guma informação do conteúdo desta memória,

todo um lote de memórias será perdido, acar-


MemóriasaROM são fabricadas por um pro-


i retando prejuízo ao se fabricar aquilo que nun-

óp Trata-se de uma tela que cha-


cesso semelhante ao da impressão de camisetas ca vai ser utilizado.


por silk-screen.
mamosC

de master ou matriz original e dela tira- 2. Memórias PROM



mos várias cópias, todas iguais.



Seguindo na evolução das memórias, pre-


O processo de fabricação de uma memória cisava-se de uma memória que pudesse ser gra-

ROM é custoso e só se justifica quando a pro- vada (write) e depois ficasse somente para lei-

dução é em grande escala, da ordem de alguns


tura (ROM). A idéia foi fabricar memórias di-


milhares ou milhões de memórias. Sua aplica- tas virgens, onde o usuário colocaria dentro de-

ção atual é não


Cópia na eletrônica embarcada, Reservados
autorizada. ou seja, a las astodos os de
informações direitos autorais.
que precisasse e depois

parte eletrônica colocada em aparelhos que ori-


fizesse somente sua leitura (read).


○ ○ ○ ○ ○

133/19
Instituto Monitor

Cópia não
A figura autorizada.
a seguir Reservados
mostra uma memória do todos
As figurasos
4 e direitos autorais.
5 mostram uma memória



tipo PROM (Programable Read Only Memory), PROM com 9 endereços de 8 bits cada.



que se traduz como Memória Programável


Somente para Leitura. Isto significa que po- Na memória PROM virgem todos os diodos



demos gravar dados na memória uma única estão bons; assim, ao acessarmos uma linha



vez; depois disso, a memória não aceita re- de endereço qualquer, teremos na saída


gravação e se torna uma ROM normal. 11111111.


s.


i


Saída de Dados
a
Na memória PROM gravada alguns diodos


D0 D1 D2 D3 D4 D5 D6 D7
r


foram destruídos, aplicando a eles uma ten-
to



são reversa que rompeu sua estrutura crista-
u


a
lina. Esses diodos não existem mais e em seu


C


s
lugar ficou um circuito aberto. Agora, ao


1
o
it


acessarmos a linha 4, por exemplo, teremos nas
Linhas de Endereço


2
e
saídas 01111011. Cada diodo queimado força


r
di

3 sua saída para nível lógico zero.

os
4

As memórias PROMs comerciais chegam


5
s

a ter 2.048 endereços de 8 bits cada. Calcule


o

6
d

quantos diodos existem dentro delas. É por


o

7
t
este motivo que dizemos que as memórias

8
s PROM podem ser gravadas uma única vez. Um

o diodo queimado não pode ser recuperado.


R R R R R R Rd

a

v

r Vantagens:

Memória PROM virgem.


e

Todos os DIODOS estão OK. s


e • Flexibilidade na produção. Não é mais ne-


Figura 4
R

cessário encomendar milhares de memó-


.

Saída de Dados a rias ROM.


D0 D1 D2 D3 D4 D5dD6 D7

a

• Renovação do conteúdo. Poderia mudar o


z

ri conteúdo das memórias sem perder um


o

t grande lote.

au

1
Desvantagens:

o
Linhas de Endereço


2

3 • Investimentos em equipamentos de grava-


4ia ção de memória.


óp5

• Um bit gravado errado inutilizaria toda a


C 6

memória, pois não seria possível consertar



o diodo destruído.

7

• Tem preço maior se comparado com as


8

ROMs, devido à baixa produção.



R R R R R R R

• São aplicáveis em protótipos e projetos de


desenvolvimento, em que não compensa-


Memória PROM gravada.


ria produzir em grande escala algo que ain-


Alguns DIODOS foram “destruídos”.


Cópia não autorizada. Reservadosdatodos osdesenvolvido.
direitos autorais.

está sendo
Figura 5

○ ○ ○ ○ ○

133/20
Instituto Monitor

Cópia não3.autorizada. Reservados todos os direitos autorais.


Memórias EPROM
Continuando no processo de evolução, passaram a ser neces-
sárias memórias que permitissem a regravação e continuassem sen-
do ROMs depois disto. Surgiram então as memórias EPROM
(Erasable Programable Read Only Memory), que se traduz por Me-
mória Programável Apagável Somente para Leitura. Significa que
você pode gravar dados, apagar dados e depois disto ela é utilizada
is.
como memória somente para leitura.
r a
As memórias EPROM utilizam tecnologia opto-elétrica. Os da- to
au
dos são gravados por meio de tensão e corrente elétrica e apagados
por meio de luz ultravioleta (UV).
o s
As pastilhas de memórias EPROM vêm com uma janela e itde cris-
tal que permite visualizar a matriz de elementos queircompõem a
d ela atinge
memória. Aplicando radiação ultravioleta pela janela,
o s
todas as locações de memória, apagando seus conteúdos.
s
o totalmente, não
As memórias EPROM têm que ser apagadas
d
sendo possível apagar apenas um bit ouoendereço e deixar todo o
t
resto como estava.
o s
Após a gravação de uma EPROM d
a é aconselhável cobrir a jane-
la de cristal com uma etiquetavadesiva metalizada, para evitar que
r
radiação ultravioleta entreeacidentalmente e danifique as infor-
mações nela contidas. es
R
Veja na figuraa6. alguns exemplos comerciais de memórias
d
EPROM e como utilizá-las:
a
riz
t o
au
ã o
n
ia
óp
C

Figura 6

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/21
Instituto Monitor

Cópia
Note asnão autorizada.
janelas Reservados
de entrada de radiação todos
- Não osalteração
permitem direitos autorais.
de seu conteúdo.



UV para apagamento total, permitindo ver as


Memórias PROM


locações de memória.


- Encapsuladas no formato de um CI.



4. Memórias EEPROM


- Semelhantes às ROMs, só que permitem



Com a evolução chegamos às memórias a gravação de dados.


s.


EEPROM (Electricaly Erasable Programable - Têm custo unitário maior devido à baixa
i


Read Only Memory), que se traduz como Me-
a


produção.
r


mória Programável e Apagável Eletricamen-
to


- Exigem equipamentos de gravação e não


te Somente para Leitura. Isto significa que
u


toleram erros de gravação.
podemos gravar e apagar dados com sinais a



elétricos, não sendo mais necessária a radi- - Teoricamente são como s uma matriz de


o
t qual “queimamos” os


ação ultravioleta. Podemos apagar somente diodos todos OK, ina


1 bit, se for o caso, e deixar o resto como es- e

ir
diodos cuja informação a ser gravada seja


tava. o bit zero.
d

Você pode também encontrar referências


Memórias o

s
EPROM
s

2
desta memória como: E PROM, E PROM e
o

2
- Encapsuladas no formato de um CI.
d

E2PROM.
o

- tApresentam uma janela de cristal para



Vantagens: podemos gravar, apagar e regravar


s entrada de radiação ultravioleta para

utilizando apenas sinais elétricos. o


d apagamento total da memória.


a

Desvantagens: consome muita energia e tem v - Fabricadas com elementos opto-elétricos.


r

poucos endereços de memória, comparando- e


s - Gravam por meio de sinais elétricos.


se com a EPROM. e

R - Apagam por meio de radiação


.

a
São aplicáveis em sistemas eletrônicos que ultravioleta.

d

precisam de setup ou ajuste personalizado,


a

- Funcionam como ROMs após a gravação.


z

rietc.
como TVs, videocassetes, agendas eletrônicas,

- Permitem regravação.
o
câmaras fotográficas digitais,

t

u - Aplicáveis em sistemas que precisam de


5. Resumo a

update (renovação dos dados).


o

Memórias ROM ã

n Memórias EEPROM

- Encapsuladasia no formato de um CI.


- Encapsuladas no formato de um CI.


p

ó com as informações já dentro


- Fabricadas - Programáveis por meio de sinais elétricos


C

delas.

apenas.

- Produzidas aos milhares, têm custo - Têm quantidade de endereços menor se


reduzido.

comparadas com as EPROMs.



- Aplicadas na eletrônica embarcada em - Utilizadas em sistemas que precisam de



linhas de produção de aparelhos setup (ajuste ou calibração


eletroeletrônicos.

personalizada).

Cópia não autorizada. Reservados todos os direitos autorais.




○ ○ ○ ○ ○

133/22
Cópia não autorizada. Reservados todos os direitos autorais.

Exercícios Propostos is.


r a
1 - Qual a ordem do surgimento das memórias fixas?
uto
( ) a) PROM, ROM, EPROM e E2PROM
a
( ) b) ROM, PROM, EPROM E E2PROM
os
it
( ) c) E2PROM, PROM, EPROM E ROM
( ) d) EPROM, E2PROM, ROM E PROM
r e
di
( ) e) ROM, CDROM, MARROM E PROM

os
2 - As memórias PROM são gravadas uma única vez porque a gravação dos
dados é feita:
( ) a) por queima de diodos. os
( ) b) pela inclusão de diodos. od
( ) c) por luz ultravioleta. t
( ) d) por silk-screen. o s
( ) e) por fita magnética.
ad
r v
3 - ROM, PROM, EPROM e E2PROM e pertencem à categoria das ROMs porque:
( ) a) são utilizadas apenas para s
e a escrita de dados.
a leitura de dados.
R
( ) b) são utilizadas apenas para
( ) c) são utilizadas também. para a leitura de dados.
d a para a escrita de dados.
( ) d) são utilizadas também
za funcionam apenas para leitura de dados.
( ) e) após serem gravadas
i
tor
au
ã o
n
ia
ó p
C

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/23
Cópia não autorizada. Reservados todos os direitos autorais.
lição

Memórias Eletrônicas Reais


4 Parte II is.
r a
Introdução
u to
a
A sigla RAM vem de um tempo em que as memórias de arma-
s
zenamento de dados eram feitas por meio de cartões perfurados.
ito
rede arma-
Nessa época não eram disponíveis as memórias do tipo magnéticas
e as memórias eletrônicas tinham baixíssima capacidade i
d tinham que
zenar informações. Todos os acessos a essas memórias
ser no formato seqüencial ou linear. Perdia-se muito
o s tempo pas-
sando cartão por cartão até se chegar ao cartãosprocurado para ler a
informação.
d o
to
Deixando esse passado de lado, as memórias do tipo RAM são
memórias eletrônicas, fruto do avançoo s dos semicondutores e da
ad
miniaturização de circuitos lógicos, os chamados circuitos integra-
dos (CI).
r v
e
Memórias RAM (Random
es Access Memory) ou Memórias de Aces-

. R
so Aleatório, eram fabricadas inicialmente de flip-flops tipo data,
arranjadas em endereços com 1, 4 ou 8 flip-flops por endereço, re-
d a
presentando, respectivamente, 1 bit, 4 bits e 8 bits.
a
Chamamos riz de acesso aleatório porque nela podemos acessar
o
qualquer tendereço diretamente, sem ter que passar pela seqüência
de todosuos outros. Podemos ir direto do endereço 1000 para o ende-
a
o
reço 300, por exemplo, e depois para o endereço 2134. O endereça-


mento e a saída de dados são multiplexados.

ia As memórias RAM estão divididas em duas categorias básicas:


óp SRAM e DRAM.
C
1. Memórias SRAM
SRAM (Static RAM), traduzido como RAM Estática, é formada
por flip-flops com tecnologia MOS. É uma memória rápida, porém
com baixa capacidade de endereços e consumo de energia elevado.
Sem alimentação, perde as informações nela armazenadas devido aos
flip-flops precisarem de energia para manter seus estados lógicos.
Cópia não autorizada. Reservados todos os direitos autorais.
○ ○ ○ ○ ○

133/25
Instituto Monitor

Cópia não autorizada. Reservados


É chamada de memória todos
volátil, pois perde os direitos
seu conteúdo com a autorais.
menor variação da alimentação elétrica. Utilizada como memória de
trabalho para microprocessadores, é encapsulada no formato de CI.

D D D D D D D D

D D D D D D D D
is.
r a
to
D D D D D D D D
u
D D D D D D D Da
os
D D D D D D
eit D
D
r
di D D
DEMULTIPLEX DE ENDEREÇOS

D D D D D D

os D
A0
D D D D
os
D D D

D D D o
D d D D D D
A1 t
o s D D D D D D D D
A2 d
D Dva D D D D D D
A3
er
D s D
e D D D D D D

. R
da D D D D D D D D

a
riz D D D D D D D D

to
au D D D D D D D D

ão D D D D D D D D
n
ia D D D D D D D D

óp
C
CONTROLE
READ / WRITE DEMULTIPLEX DE DADOS
CHIP SELECT

R/W CS D0 D1 D2 D3 D4 D5 D6 D7
Cópia não autorizada. Reservados todos os direitos autorais.
Figura 7 - Exemplo de estrutura interna de uma memória SRAM 16 endereços - 8 BITS
○ ○ ○ ○ ○

133/26
Instituto Monitor

Cópia não autorizada.


Na figura 7, cadaReservados
bloco com a letra Dtodos osumdireitos
representa flip-flop autorais.
tipo data.

Expanda o exemplo imaginando 1.024 linhas com 8 flip-flops


tipo data cada uma. Você terá uma memória SRAM de 1 kbyte, com
linhas de endereçamento A0 até A9 e saída/entrada de dados de D0
até D7.

2. Memórias DRAM is.


r a
DRAM (Dynamic RAM) é traduzida como RAM Dinâmica.
uto
a
A idéia para fabricação desta memória teve origem no fato de os
os
transistores FET (efeito de campo elétrico) trabalharem por d.d.p.
(diferença de potencial) e não pela passagem de uma corrente elétri- eit
r
di
ca de controle. Assim, capacitores armazenam d.d.p. e memórias ar-
mazenam dados. Logo, armazenar d.d.p. é o mesmo que armazenar
dados. os
os
d
Capacitores seriam agora os substitutos dos flip-flops tipo data
o
t
e armazenariam d.d.p. O problema é que todo capacitor perde sua

os
carga naturalmente com o passar do tempo. Assim, as DRAMs tam-
bém são chamadas de voláteis, pois perdem suas informações com a
a d
menor variação da tensão de alimentação.
r v
A idéia é ótima, pois em eum CI cabem muito mais capacitores do
que flip-flops; o problema s
e a perda de carga elétrica (d.d.p.). Para
é
compensar este problema R é embutido um circuito de refresh, tradu-
zido como refresco aou. renovação dos dados. Este circuito tem a fun-
ção de olhar cadadum dos milhares de capacitores que compõem a
iza deles tiver d.d.p., ou seja, carga armazenada, dar a
memória e, se um
or mais de carga.
ele um pouco
t
auprocesso é repetido entre alguns milisegundos desde a li-
Este
o da memória até que seja desligada. O inconveniente é que,
gação
ã
nenquanto estiver sendo feito o refresh, ninguém pode acessar os da-
ia dos dentro da memória, fenômeno este chamado de wait state ou

óp
estado de espera, que é o tempo que se espera para poder trocar
informações com as memórias do tipo DRAM.
C

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/27
Instituto Monitor

Cópia não autorizada. Reservados


D0 D1 D2 todos
D3 D4 os
D5 direitos
D6 D7 autorais.

DEMULTIPLEX DE DADOS

is.
r a
uto
a
os
DEMULTIPLEX DE ENDEREÇOS

eit
A0
r
di
A1
os
os
A2
od
t
A3
os
a d
r v
se
e
. R
da
a
R/W CONTROLE
riz
o
READ / WRITE
CHIP tSELECT CIRCUITO REFRESH
CS
a u
o
nã Figura 8 - Exemplo de memória DRAM 16 endereços - 8 BITS
ia
óp Na figura 8, cada linha é composta de 8 capacitores que têm
C sua carga renovada pelo circuito de refresh, gerando um wait state
(período de espera) para que a memória possa ser acessada.

Atualmente, temos memórias DRAMs comerciais com 60 ns (na-


nosegundos) para acesso.

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/28
Instituto Monitor

Cópia não3.autorizada.
Resumo Reservados todos os direitos autorais.
As memórias RAM têm esse nome porque podem acessar qual-
quer endereço diretamente, sem passar pela seqüência dos demais.
São divididas em duas categorias: SRAM e DRAM. São conhecidas
como memórias voláteis porque perdem suas informações com a
menor variação da tensão de alimentação.

is.
As SRAMs são as estáticas, pois conservam seus dados na saída
enquanto houver alimentação. São basicamente formadas por flip- r a
flops tipo data.
uto
a
s
As DRAMs são memórias formadas basicamente por capacitores
o
para poder acessar este tipo de memória. e it
e precisam de circuito de refresh, o qual cria um tempo de espera

dir
As SRAMs têm uma quantidade de endereços menor se compa-
radas com as DRAMs, porém, são mais rápidas. os
SRAMs e DRAMs
têm características complementares.
os
od
t
o s
ad
r v
e
es
. R
d a
iza
tor
au
ão Anotações e Dicas
n
ia
óp
C

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/29
Cópia não autorizada. Reservados todos os direitos autorais.

Exercícios Propostos is.


r a
1 - Memórias RAM significam:
uto
( ) a) memórias de trabalho.
a
( ) b) memórias de rascunho.
os
it
( ) c) memórias de acesso seqüencial.
( ) d) memórias de acesso direto.
r e
di
( ) e) memórias de acesso aleatório.

2 - Memórias RAM são apagadas:


os
( ) a) jogando luz UV em sua janela de cristal.
( ) b) com borracha. os
( ) c) retirando a alimentação. od
( ) d) uma a uma. t
( ) e) destruindo seus diodos internos. os
ad
3 - SRAM é fabricada com:
r v
( ) a) silício.
se
( ) b) germânio.
e
( ) c) estática. R
( ) d) flip-flop tipo data. .
( ) e) capacitores. d a
za
i
or
4 - DRAM é fabricada com:
( ) a) silício. t
( ) b) germânio.
au
ã o tipo data.
( ) c) estática.
( ) d) flip-flop
n
( ) e) capacitores.
ia
5ó-pRefresh é o ato de:
C( ) a) refrescar.
( ) b) apagar.
( ) c) verificar a carga nos capacitores em cada endereço de memória.
( ) d) acrescentar carga nos capacitores carregados em cada endereço de me-
mória DRAM.
( ) e) reinicializar o computador.

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/30
Cópia não autorizada. Reservados todos os direitos autorais.
lição

Preparação para
5 Microprocessadores is.
r a
Introdução Barramento ou BUS – Dá-se o tnome o de barra-


u


a
mento ao conjunto de fios que transportam si-


s


Nesta lição iremos esclarecer os termos nais elétricos no formato digital e que exerçam


uma mesma função. Poroexemplo: uma memó-
técnicos utilizados no estudo dos microproces-
t


ria apresenta 10 linhasi de endereçamento; por-


sadores, indispensáveis para seu perfeito en-
e

r tem 2 endereços, que
di endereços; estas 10 linhas

10
tendimento. tanto, esta memória

corresponde a 1.024

1. Termos Técnicos e suas Explicações ○

o
têm a função de

s formar o endereço da memória
em binário,s sendo nomeadas e numeradas de A0

até A9. o

Alguns itens da eletrônica digital são uti- Este conjunto de 10 fios é entendido
d barramento ou, em Inglês, bus. Pode-

comooum

lizados para compor um microprocessador.


most ter barramentos de endereços de diferen-

Precisamos tê-los em mente:


s tamanhos. Exemplos:

o
tes

Clock – Sinal elétrico no formato de onda qua- d


drada. Apresenta período, freqüência e ape-va


• o microprocessador Z80 tem um

r barramento de endereços de 16 bits.


nas dois níveis (+Vcc e GND), compreendidos e


es
• o microprocessador 80386 tem barramento

como N.L. = 1 e N.L. = 0.


R de endereços de 32 bits.

.

Gerador de Clock – Trata-se de um circuito


a

d Assim, podemos ter:


eletrônico que gera essa onda quadrada.


a

z

ri • Barramento de endereços ou address bus.


Nível Lógico 1 - +Vcc.


o

• Barramento de dados ou data bus.


t

Nível Lógico 0 - GND. u


• Barramento de controle ou control bus.


a

o como o terceiro esta-


ã Exemplos:

Tri-state – É conhecido
n

do lógico. Não é nível lógico 1 e nem nível lógi-


ia de alta impedância ou HI-Z, • A memória SRAM 6116 tem 11 linhas de


co 0, mas trata-se
p endereço, ou seja, tem um barramento de

ó

em Inglês. Dizemos que uma pastilha está em endereços de 11 bits.


C quando seus terminais apresentam

tri-state

• A memória EPROM 2732 tem 12 linhas de


uma alta impedância com relação à placa a que


endereço, ou barramento de endereços de


estão soldados. Em alta impedância, é como se


a pastilha estivesse desconectada da placa, 12 bits.



como se ela fosse arrancada. O controle por


Contadores Binários – Circuitos lógicos digi-


tri-state é importantíssimo em sistemas


microprocessados, pois evita o curto-circuito tais que recebem pulsos de clock e realizam

uma contagem em binário. Podem ser progra-


entre saídas lógicas.


Cópia não autorizada. Reservados todos os direitos autorais.




○ ○ ○ ○ ○

133/31
Instituto Monitor

Cópia
mados paranãocomeçarautorizada. Reservados
a contar a partir de qual- todos os Programável
2. Controlador direitos autorais.



quer número binário, podendo ser resetados



para voltar a contagem a zero. Podem contar Vamos acrescentar à lista termos própri-


progressiva ou regressivamente a cada pulso os de microcomputadores.



de clock.



Controlador – Circuito lógico digital cuja fun-


Memórias – Circuitos lógicos digitais que ar- ção é controlar dispositivos externos por meio


s.


mazenam informação binária (binary digit). de uma seqüência lógica de acionamentos
i


Podem armazenar 1 bit, 4 bits, 8 bits, etc. Sua deste dispositivo.
a


r


capacidade é medida em função da quanti-
to



dade de endereços e de quantos bits cada en- Controlador Programável – É o controlador
u


dereço tem. Cada conjunto de 1.024 é cha- a
que permite ser programado. Podemos alte-



mado kilo e representado pela letra k. Cada s
rar a seqüência lógica dos acionamentos sem


o
it


1.024 conjuntos de 1.024, ou cada 1.024 con- alterar o circuito (hardware), apenas alteran-


juntos de kilo é chamado mega e representa- e
do a programação (software). Estes circuitos,


r
di

do pela letra M. Cada 1.024 conjuntos de mega por conseqüência, utilizam memórias.


é chamado giga e representado pela letra G.
os

1 bit é 1 bit. 4 bits é chamado nibble. 2 nibbles Mostramos em seguida um aplicativo sim-

s

é chamado byte. 8 bits é também chamado ples de um controlador programável. Trata-


o

d

byte. 16 bits é chamado word. 32 bits é cha- se de um cruzamento de vias com semáforos
o

mado double word.


t
sincronizados para automóveis e pedestres.

s
Os dispositivos externos a serem acionados

Assim, teremos memórias de: osão as lâmpadas dos semáforos. Um circuito


d

a gerador de clock é ajustado para 1 Hz (1 pul-


v

• 1 kbyte, que são compostas de 1.024


r so a cada segundo ou 1 pulso por segundo).

endereços de 8 bits cada; e Temos ainda:


s

• 1 kbit, que são compostas de 1.024 Re



• um circuito contador binário com


.

endereços de 1 bit cada;


a capacidade para contar até 2.048 pulsos;

• 1 Mbyte, que são compostas ded1.024


a

• um circuito de reset automático, para


kbytes ou 1.048.576 bytes. iz

iniciar a contagem a partir do zero assim


r

o

que o circuito for ligado;


t

u
O primeiro número refere-se à quanti-

• uma memória eletrônica com capacidade


dade de endereços ou a

locações de memórias;

de 2 kbytes;
o segundo número, o expresso em palavras bit,

byte ou word, dizãrespeito à quantidade de


n • circuitos driver de potência para acionar



ia
informação que cabe em cada endereço. as lâmpadas, uma vez que +5 volts vindos

p dos CIs não tem capacidade para acionar


ó sempre estes termos em caso de


Consulte lâmpadas de 110 V.


C

dúvidas.











Cópia não autorizada. Reservados todos os direitos autorais.




○ ○ ○ ○ ○

133/32
Instituto Monitor

Cópia não autorizada.


A figura mostra oReservados todos
555 na configuração geradoros direitos
de onda qua- autorais.
drada. Seus valores de R e C produzem uma oscilação de 1 Hz (um
pulso a cada segundo).

is.
r a
uto
a
os
eit
r
di
os
os
od
t
+ Vcc
os + Vcc D0
d A0 Q0

Q1va
GND D1
A1
r
eQ2
D2
s
e Q3
A2
D3
R A3
CONTADOR BINÁRIO

a. Q4 A4
D4

d
MEMÓRIA

D5
a
CLOCK

Q5 A5
z
ri
+5V D6
Q6 A6
to D7

au Q7 A7

ão R
Q8 A8

n Q9 A9

ia555 R Q10 A10 GND

óp
C RESET R/W CS
R

C C
+5V

Figura 9 - Controlador programável (CP)


Cópia não autorizada. Reservados todos os direitos autorais.
○ ○ ○ ○ ○

133/33
Instituto Monitor

Cópia não autorizada. Reservados


O gerador de clock todos
é ligado ao contador binárioos direitos
de 11 saídas, o autorais.
que permite a ele contar até 2.048 pulsos. Acompanha o contador
um circuito de reset automático. Ao ligarmos a alimentação a con-
tagem inicia no zero.

Cada saída do contador é conectada à correspondente entrada


de endereçamento da memória: LSb no LSb e segue a seqüência.

is.
As saídas da memória acionam as lâmpadas dos semáforos di-
retamente através de drivers de potência. Assim: r a
uto
• quando D0 for N.L. = 1, acende a lâmpada vermelha do a
semáforo 1;
o s
• quando D1 for N.L. = 1, acende a lâmpada amarela doei
t
emáforo 1;
dir
• quando D2 for N.L. = 1, acende a lâmpada verde
os do semáforo 1;
semáforo de pedestres; o s
• quando D3 for N.L. = 1, acende a lâmpada vermelha do

od
t verde do semáforo
• quando D4 for N.L. = 1, acende a lâmpada
de pedestres;
o s
• quando D5 for N.L. = 1, acended a lâmpada vermelha do
semáforo 2; va
r
e a lâmpada amarela do
• quando D6 for N.L. = 1, acende
semáforo 2; e s
• quando D7 for N.L. R
. = 1, acende a lâmpada verde do semáforo 2.
d a
Para que o acircuito funcione é preciso programar a memória.
riz a memória pelo empilhamento de locações e
Vamos representar
indicar seuoendereço e seu conteúdo em hexadecimal.
ut
a locação de memória é composta de 8 bits, e cada bit con-
Cada
o
nãqual lâmpada. Por isso, veja a tabela proposta:
trola uma lâmpada dos semáforos. Precisamos saber que bit acen-
de
ia
óp AMARELO
VERMELHO VERDE VERMELHO VERDE VERMELHO AMARELO VERDE
C1
SEMÁFORO SEMÁFORO
1
SEMÁFORO SEMÁFORO SEMÁFORO SEMÁFORO SEMÁFORO SEMÁFORO
1 1 2 2 2
D0 D1 D2 D3 D4 D5 D6 D7

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/34
Instituto Monitor

Cópia não
A tabela autorizada.
a seguir apresenta um Reservados
progra- todos
deria os com
o conteúdo direitos
qualquer autorais.
ausência da



ma de controle dos semáforos. Como o clock tensão de alimentação. Então, sobraram as



do circuito é de 1 Hz, o conteúdo de cada en- memórias do tipo EPROM e EEPROM.


dereço de memória ficará na saída por 1 se-



gundo. Assim, se desejarmos que uma lâm- Uma vez com o programa todo feito, uti-



pada fique acesa por 10 segundos, devemos lizamos os gravadores de EPROM e


repetir este conteúdo de memória por 10 en- EEPROM, conforme exemplos a seguir.


s.


dereços consecutivos.
i


a


r


ENDEREÇO CONTEÚDO
to


0000h 10001100


u


0001h 10001100
a


0002h 10001100


0003h 10001100
Inicia com os dois
s


faróis vermelhos e o
o
it


0004h 10001100 verde de pedestres


0005h 10001100 acesos.
e

r
di

0006h 10001100


0007h 10001100

os
0008h 10001100 ○

0009h 10001100
s

000Ah 10010100 O farol de pedestre


o

d

000Bh 10001100 verde se alterna com


o

000Ch 10010100 o vermelho, avisando


t

000Dh 00110100 que vai fechar.


s

000Eh 00110100 O farol verde do


o

semáforo 1 acende,
d

000Fh 00110100
a

enquanto os outros
0010h 00110100
v

ficam vermelho.
r

e

s

A programação que segue inicia com e os


R

dois faróis vermelhos e o verde de pedestres


. per-

a
aceso, por 13 segundos. Cada farol verde

d

dura por 13 segundos. Cada farol amarelo fica


a

iz

aceso por 2 segundos. Figura 10


r

o trabalhamos

t

Observe que neste exemplo Existem vários modelos e marcas no mer-


u

a

com o endereçamento em hexadecimal. O cado, a escolher. Com a memória gravada,


o
conteúdo foi colocado em binário para me- basta colocá-la no circuito e ligar.

ã

n
lhor visualização dos acontecimentos, mas

a
veremos ainda que esses binários deverão ser
convertidos ipara hexadecimal.
Ao nosso controlador programável falta

óp
poder receber informações externas. Um

exemplo seria o acionamento do semáforo de


C

Nosso exemplo não segue até o final, pois pedestre somente se existisse alguém para

ocuparia várias linhas de programação (en- atravessar. Nosso circuito teria que identifi-

dereços de memória). A pergunta é: como co- car o acionamento do botão. Essas e outras

locar essas informações dentro da memória? habilidades podem ser encontradas nos mi-

Não pode ser uma memória RAM, pois per- croprocessadores.







Cópia não autorizada. Reservados todos os direitos autorais.




○ ○ ○ ○ ○

133/35
Cópia não autorizada. Reservados todos os direitos autorais.

Exercícios Propostos is.


r a
1 - O que significa uma memória de 4 kbytes?
uto
( ) a) Memória com 4.096 endereços de 8 bits cada.
a
( ) b) Memória com 2.048 endereços de 1 bit cada.
os
it
( ) c) Memória com 4.000 endereços de 8 bits cada.
( ) d) Memória com 8.192 endereços de 16 bits cada.
r e
di
( ) e) Memória com 4.096 endereços de 1 bit cada.

2 - Defina barramento.
os
s
...................................................................................................................................
o
d
...................................................................................................................................
o
t
...................................................................................................................................

o s
...................................................................................................................................

ad
v
3 - Bit, nibble, byte e word são, respectivamente:
r
( ) a) 1, 2, 4 e 8 bits.
( ) b) 1, 4, 8 e 16 bits. se
e
( ) c) 2, 4, 8 e 16 bits.
( ) d) 1, 2, 3 e 4 bits. . R
( ) e) 1, 8, 4 e 2 bits. da
za
4 - Para representarrio endereço de memória, bem como seu conteúdo, utilizamos
números: to
( ) a) binários. u
( ) b) decimais.a
o

( ) c) trinários.
( ) d) hexadecimais.
i
( ) e)aoctais.
óp
C

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/36
Instituto Monitor

Cópia
5 -não autorizada.
Tri-state é: Reservados todos os direitos autorais.
( ) a) nível lógico 1.
( ) b) nível lógico 0.
( ) c) alta impedância.
( ) d) baixa impedância.
( ) e) três estados lógicos.

6 - Como transferimos o programa feito no papel para dentro da memória?


is.
( ) a) Por e-mail.
( ) b) Por um gravador de memórias. r a
( ) c) Por um gravador de CD.
uto
( ) d) Por um computador. a
( ) e) Não é possível a transferência.
os
eit
r
di
os
os
od
t
os
ad
r v
se
e
. R
da
a
riz
to
au
ão
n
ia
óp
C

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/37
Cópia não autorizada. Reservados todos os direitos autorais.
lição

6 Microprocessadores is.
r a
Introdução to


u


Processamento,
a “RASCUNHO”
Memória de


Interpretação e
s


Os microprocessadores podem ser compa- Cálculo


o
it
rados com o cérebro humano, apresentando fun-



ções análogas. Vamos, nesta lição, mostrar um
e

r
di

microprocessador por dentro, analisando sua

estrutura e funcionamento.

os

1. Cérebro Humano e s

o

Cérebro Eletrônico d

Memória de
o

“RETENÇÃO
t

FIXA”

Na busca pelas calculadoras, o homem re- s


correu ao que existia de melhor na natureza para o


d

fazer cálculos: o cérebro humano. Imitando por a


v

r
meio de circuitos elétricos, pois o cérebro tra-

balha por descargas elétricas, criou-se o e


s Figura 11 - Organização do cérebro humano usado


e
microprocessador. Semelhante ao cérebro hu- como base dos microprocessadores

R

mano, ele realiza as seguintes funções:


.

a

d

• interpreta informações codificadas; Quando alguém fala conosco, a informação


a

iz

nos chega pelos ouvidos e deve ser interpretada


• calcula;
r

o pelo cérebro. Quando lemos um texto, a infor-


t

• adverte sobre resultados; mação vem pelos olhos e deve ser interpretada
u

a

• memoriza temporariamente o que se deve pelo cérebro. Utilizamos o interpretador de nos-


o so cérebro.

ã
fazer, depois esquece;

n de retenção;

• acessa a memória

ia Quando calculamos quanto é 2 + 2, 7 x 5,


p etc., utilizamos nossa U.L.A. (Unidade Lógica


• acessa periféricos, buscando ou enviando


ó

informações; e Aritmética). Para calcular algo, nosso cére-


C

bro utiliza pequenas memórias para rascunho.


• é impulsionado a executar instruções pelos Lá guardamos os dois números envolvidos na


ciclos do clock.

primeira etapa do cálculo e o que devemos fa-



zer com eles: utilizamos nossos registradores.


Basicamente, é o mesmo que nosso cérebro Buscamos na memória fixa do nosso cérebro

faz o tempo todo enquanto estamos vivos. Veja


como executar aquele cálculo. Caso o resulta-


a figura 11:


Cópia não autorizada. Reservados todos os direitos autorais.




○ ○ ○ ○ ○

133/39
Instituto Monitor

Cópia
do não autorizada.
seja o esperado Reservados
ou não, rapidamente so- todos os direitos autorais.



mos advertidos: utilizamos nossas flags. Re-



cebemos informações pelos nossos cinco sen- A0 ~ An


tidos (olfato, tato, visão, paladar e audição) e



comandamos nossos músculos: utilizamos os



dispositivos de I/O (input/output) ou perifé-


ricos. Somos movidos pelos batimentos car-


s.


díacos: utilizamos nosso clock.
i


a


r


Como você pode perceber, os microproces-
to



sadores são muito semelhantes ao nosso cére-
u


bro. a


D0 ~ Dn


s


o
2. Microprocessadores Internamente
it



e

r
di

O termo “micro” se deve ao fato de serem


muito pequenos quando comparados com os
os

processadores de grande porte. Portanto,


s

processador ou microprocessador é apenas


o

d

uma questão de tamanho, não de funcionali-


o

dade.
t Figura 12 - Por dentro de uma C. P. U.

s

Também utilizamos o termo C.P.U., do In- o


d

glês Central Processing Unit, traduzido no a


v Vamos descrever seus pinos:


Brasil como U.C.P. ou Unidade Central de


r

Processamento. e

s PINO RESET – Quando ativado, reseta o con-


e

O termo “central” é devido ao fato R tador e em suas saídas forma-se o endereço


de que
.

o microprocessador centraliza todoao proces- zero, onde todas as linhas de endereçamento


samento; tudo o que acontece nodmicrocom- vão a nível lógico zero.


a

iz que passar

putador tem, necessariamente,


r

PINO CLOCK – Entrada de sinal de onda qua-


pela C.P.U.
o

t drada, às vezes vindo de um gerador externo,


u

Esta é a grande a às vezes interno ao próprio processador. Sua


questão dos sistemas


freqüência determina a velocidade com que


computacionais: parao processar dados mais

ã aumentar a velocida- são feitos os processamentos dos dados. Pode-


n
rapidamente, é preciso

mos aumentar a freqüência do sinal de clock,


a
de com que esse processamento é feito, ou seja,
i

mas o microprocessador não consegue respon-


p
fabricar microprocessadores que aceitem pul-

ó com freqüências cada vez maio- der com precisão a essa velocidade, calculan-

sos de clock
C

do de modo errado, ativando dispositivo de


res. O processador Intel Pentium III, por exem-


plo, aceita clock de 1.06 GHz, custando algo modo errado.



em torno de US$ 220 (duzentos e vinte dólares


PINOS DE ENDEREÇAMENTO – São as saí-


americanos).

das do bloco contador, nomeadas com a letra


A e numeradas a partir do zero. A quantidade


A figura 12 representa um microproce-


de linhas de endereçamento depende do que


ssador em seus principais blocos funcionais.



Cópia não autorizada. Reservados todos os direitos autorais.




○ ○ ○ ○ ○

133/40
Instituto Monitor

Cópia
cada não colocou
fabricante autorizada. Reservados todos
em seus micropro- osa tensão
Diminuindo direitos autorais.
de alimentação dos



cessadores. No Z80, por exemplo, são 16 li- processadores geramos menos calor e pode-



nhas de endereçamento (A0 até A15); no 80386 mos aumentar a freqüência do clock; porém,


são 32 linhas (A0 até A31). mesmo assim precisamos utilizar cooler.





PINOS DE DADOS – Ligados ao bloco con- Vamos descrever os blocos funcionais:


trolador de fluxo de dados, são nomeados com


s.


a letra D e numerados a partir do zero. A quan- BLOCO CONTADOR DE ENDEREÇOS –
i


tidade de linhas de dados indica a “potência”
a
Trata-se de um contador binário que tem sua


r


do processador e depende de quanto o fabri- contagem controlada pelas instruções do
to



cante colocou. No Z80, por exemplo, são 8 li- microprocessador. Pode ser zerado, ter alte-
u


nhas de dados (D0 até D7); já no 80386 são 32 rada sua contagem, etc. a



linhas de dados (D0 até D31). s


o
it


BLOCO CONTROLADOR DE FLUXO DE


PINO READ – Pino de saída de sinal elétrico. e
DADOS – Trata-se de um circuito formado por


r
di

Quanto ativo, o microprocessador informa aos flip-flops tipo data com características tri-


dispositivos externos que ele fará uma leitura. state e direcionais. Ele é controlado por ins-
os

truções do processador que indicam se os da-


s

PINO WRITE – Pino de saída de sinal elétri- dos devem sair do processador para a memó-
o

d

co. Quando ativo, o microprocessador infor- ria ou periférico ou vice-versa.


o

ma aos dispositivos que ele fará uma escrita.


t

sBLOCO INTERPRETADOR – Todo micropro-


PINO MEMORY – Pino de saída de sinal elé- o cessador é fabricado com um conjunto de ins-

trico. Quando ativo, o microprocessador in- ad truções que seu fabricante determinou. As ins-

forma que trabalhará com as pastilhas de me- v


r truções são as únicas “coisas” que o micro-


mória apenas, e não com os periféricos. e processador sabe fazer. Não existem instru-

s

e ções para cor, sons, etc. Estas instruções fo-


R

ram reservadas pelo fabricante e a cada uma


PINO I/O (INPUT/OUTPUT) – Pino de saída
.

de sinal elétrico. Quando ativo, o a delas foi associado um número binário que o

micropro-
dcom os pe-

processador interpreta. Para nossa facilida-


cessador informa que trabalhará a

izmemórias.

riféricos apenas, e não com as de, esses binários foram convertidos em có-
r

o digo hexadecimal e mais tarde foram nome-


t

ados.
u

PINO +Vcc – É a alimentação por tensão contí-


a é diminuir a ten-

nua. Atualmente a tendência


o BLOCOS REGISTRADORES – São pequenas


ã
são de alimentação. Para que você tenha uma

n com tensão de +5 volts, memórias do tipo SRAM de 8 bits, 16 bits ou


noção, o Z80 trabalha


enquanto que iaum 80486 trabalha com tensão 32 bits que funcionam como rascunho. Por

de 3,5 voltspou 3,3 volts de alimentação.


estes registradores passa tudo que o pro-

ó

cessador faz. Estão divididos em duas cate-


C

gorias: os de uso geral e os de uso específico.


Com clocks cada vez mais altos, a movi-

Vamos tomar como exemplo o processador


mentação dos dados e, portanto, de elétrons


Intel 80386. Ele tem 4 registradores de uso ge-


dentro do processador é muito intensa, geran-


ral de 16 bits cada, chamados de AX, BX, CX


do calor. A partir dos processadores Intel

e DX. Estes registradores podem ser dividi-


80486 é necessária a utilização de cooler (ven-


dos em duas partes de 8 bits chamadas de parte


tilador sobre uma peça de alumínio aletada),


alta ou high e parte baixa ou low. A parte alta


cuja função é dissipar o calor gerado no

contém os bits mais significativos; a parte bai-


Cópia não
processador. autorizada.
Assim, poderá funcionarReservados
por um todos os direitos autorais.

xa contém os bits menos significativos. Assim,


tempo maior sem que se “queime”.


○ ○ ○ ○ ○

133/41
Instituto Monitor

Cópia
AX é de 16não autorizada.
bits, mas Reservados
podemos utilizar o AH todos
méticas, os direitos
ela também consegue autorais.
executar to-



de 8 bits e o AL de 8 bits. O mesmo se aplica das as funções lógicas entre dois binários,



aos outros. Veja a figura: como AND, OR, NAND, EXAND, INVERSO-


RA, etc.



16 - bits


AX


REGISTRADOR FLAGS (BANDEIRINHAS)


AH AL – É um registrador especial em que cada um


s.


8 - bits 8 - bits de seus bits tem a função de advertir algum
i


16 - bits
a
resultado da U.L.A. Dentro dele temos:


r


BX
o


• flag de zero (flag Z ): é ativada sempre que
o resultado da U.L.A. sejauot binário zero;


BH BL


8 - bits 8 - bits
a



16 - bits • flag de carry (flag C): s é ativada sempre que


t
o resultado da U.L.A. o provocar o “vai um”


CX
i


CH CL ou carry; e

ir S): é ativada sempre que

8 - bits 8 - bits • flag de sinal d
(flag


16 - bits

s da U.L.A. for um número ne-
o resultado
gativo; o

DX
s

DH DL
• flag o

de paridade (flag P): é ativada sempre


d o resultado da U.L.A. apresentar um

8 - bits 8 - bits
o

que
tnúmero binário com quantidade par de bits

s

REGISTRADOR PC (PROGRAM COUNTER) o igual a 1.


d

- Ele armazena o endereço da próxima instru- a


v Existem outras flags, mas aplicam-se a um


ção a ser executada pelo microprocessador.


r

e estudo muito mais avançado.


s

REGISTRADOR SP (STACK POINTER e) –


R Veja a seguir um exemplo de registrador


Ele armazena o endereço da última locação


.

flag.
de memória RAM disponível no sistema. a

d

a

C
z AC P S Z

ri duas entradas,
BLOCO U.L.A. (UNIDADE LÓGICA E

8 - bits
ARITMÉTICA) – Tem apenas
o

t

pois assim como o ser humano, só consegue Basicamente, encontramos esta estrutu-
u

a dois. Para cada dois


calcular algo de dois em ra em todos os processadores. Estudaremos


números, um únicooresultado sai da U.L.A. e dois deles para dar a você uma boa base so-

ã

bre microprocessadores. Como todos tem pra-


n
é armazenado no registrador A. A U.L.A. só

ticamente a mesma construção interna, es-


a é somar algumas vezes o
consegue efetuar adição e subtração de bi-
i

p
nários (multiplicar tudar um deles deixa você apto a conhecer e

ó

mesmo número). Além destas operações arit- trabalhar com os demais.


C













Cópia não autorizada. Reservados todos os direitos autorais.




○ ○ ○ ○ ○

133/42
Cópia não autorizada. Reservados todos os direitos autorais.
lição

7 Microprocessador Z80 is.


r a
Introdução Identificamos os pinos básicosto de endere-


u


a
çamento, de dados, de clock, de memória, de


s


Agora que você já tem conhecimentos bá- I/O, de reset, de leitura (read) e de escrita


sicos sobre microprocessadores, vamos anali- (write).
to


i


reoutros pinos:
sar em detalhes dois diferentes:


i

Comentando os
d

• Microprocessador Zilog Z80

• Microprocessador Intel família 80X86 (8086,


o s
PINOS DE ALIMENTAÇÃO

- +Vcc de 5 volts
s
e GND referência zero volt.

80286, 80386, 80486, Pentium)


o

dM1 (MACHINE CYCLE ONE) – Ativo


o

PINO
em tnível lógico zero, indica aos periféricos que
1. Z80 Internamente

osprocessador está no primeiro ciclo de má-


o

d quina, em busca de instrução na memória.


a

v

r

Figura 13 e PINO RFSH (REFRESH) – Saída de sinal elé-


s

e
A figura 13 mostra o microprocessador
trico. Quando ativado vai a nível lógico zero,

R indicando por meio dos 7 bits menos significa-


.
Z80-CPU. Trata-se de um microprocessador

tivos a posição de memória dinâmica (DRAM)


a

num invólucro de 40 pinos (figura 14).


d

a ser restaurada.
a

iz

r

PINO WAIT (ESPERA) – Pino de entrada de


o

t

sinal elétrico vindo de periféricos lentos. Ati-


au

vo em nível lógico zero, indicando à CPU que



o seus dados ainda não podem ser lidos por ela.




PINO INT (INTERRUPT) – Entrada de sinal


ia

elétrico vindo de periféricos que precisam uti-


p

ó

lizar o bus de endereços e o bus de dados. É um


C

pedido de interrupção do programa por um



determinado momento para que o periférico



se utilize dos barramentos.




PINO HALT (PARADA) – Saída ativa em ní-



vel lógico zero, indicando que a CPU executou


uma instrução de software de parada (halt).



Para que a CPU volte a processar é necessário


Cópia não autorizada. Reservados todos osde direitos


hardware no autorais.

Figura 14
um sinal elétrico pino INT.

○ ○ ○ ○ ○

133/43
Instituto Monitor

Cópia
PINO NMI não autorizada.
(NON MASKABLE Reservados todos
INTERRUPT) Hardwareos é adireitos
parte física autorais.
do sistema,
– Semelhante ao INT, este pino de entrada sendo composto de fontes de alimentação
tem prioridade total sobre a CPU, fazendo de tensão contínua, circuitos integrados de
interromper a execução do programa no portas lógicas, memórias, MUX, DEMUX,
momento da NMI, diferentemente da entrada resistores, capacitores, placa de circuito im­
INT, na qual a CPU completa a instrução e presso, cristal oscilador e periféricos.
depois libera os barramentos.

PINO BUSREQ (BUS REQUEST) – Tradu­ i


pois são desenvolvidos circuitos chamados
s.
Os periféricos são um capítulo à parte,

zido como “requisição dos barramentos”, r a


de interface. Um circuito de interface é pro­
este pino de entrada, ativo em nível lógico to
jetado para adequar os sinais elétricos dos
u
zero, é ativado por periféricos que querem a
periféricos com os sinais elétricos da CPU.
utilizar os barramentos de endereço, dados s
Por exemplo, a CPU trabalha com +5 volts
o
e controle. Os periféricos que solicitam o
barramento (bus) esperam um sinal vindo eit
contínuos e deve controlar uma lâmpada de
110 volts alternada; o circuito de interface
r
da CPU, o BUSACK.
di
fará essa adequação. Outro exemplo é para
fazer com que o computador saiba que o céu
PINO BUSACK (BUS ACKNOWLEDGE) os
está claro ou escuro: um sensor de luminosi­
– Pino de saída que informa aos periféricos s
dade varia sua resistência elétrica conforme
o
que solicitaram os barramentos que eles ago­ a intensidade de luz; o circuito de interface
ra estão à sua disposição. A simples retirada od
fará a conversão de resistência para um nú­
do sinal BUSREQ faz a CPU voltar ao proce­
t
mero binário e este terá +5 volts reconhecido
ssa­mento normal. os como nível lógico 1. Por isso, periféricos não
ad são parte do microcom­putador.
v
Para que o microprocessador funcione,
r
e
ele precisa estar inserido em um sistema micro­
s
e
processado, comumente chamado microcom­
R
putador ou computador. Este sistema é com­
.
da
posto apenas da CPU, memória tipo ROM
onde estão os programas de inicialização
a
riz
e memórias RAM onde trabalharemos os
dados. Todo o resto é chamado periférico. A
to
figura 15 mostra um exemplo de sistema.
au
ão
n
pia Figura 16

ó
C A figura 16 mostra componentes do
hardware de um microcomputador pessoal
baseado na CPU Z80.

Agora, para fazer a CPU trabalhar como


queremos, é preciso programá-la. Como
dissemos, cada CPU tem um conjunto de
Figura 15
instruções determinado pelo fabricante no
Cópia não autorizada. Reservados todos os direitos autorais.
momento do projeto do microprocessador. A

133/44
Instituto Monitor

Cópia nãocada
autorizada. Reservados
instrução foi atribuído todos
um código que os direitos
será interpretado e exe- autorais.
cutado pela CPU.

Veja a seguir a lista de instruções e códigos da CPU Z80.

is.
r a
uto
a
os
eit
r
di
os
os
od
t
os
ad
r v
se
e
. R
da
a
riz
to
au
Mnemonic
ão SZHPNC Description Notes
ADC A,s n ***V0* Add with Carry A=A+s+CY
a
ADD iA,s
ADC HL,ss **?V0* Add with Carry HL=HL+ss+CY

óp HL,ss
ADD
***V0*
—?-0*
Add
Add
A=A+s
HL=HL+ss
CADD IX,pp —?-0* Add IX=IX+pp
ADD IY, rr —?-0* Add IY=IY+rr
AND s ***P00 Logical AND A=A&s
BIT b,m ?*1?0- Test Bit m&{2^b}
CALL cc,nn ——— Conditional Call If cc CALL
CALL nn ——— Unconditional Call -[SP] =PC, PC=nn
CCF —?-0* Complement Carry Flag CY=~CY
CP s ***V1* Compare A-s
CPD ****1- Compare and Decrement A-[HL], HL=HL-1, BC=BC-1
CPDR ****1- Compare, Dec., Repeat CPD till A=[HL]or BC=0
Cópia não autorizada. Reservados todos os direitos autorais.
CPI ****1- Compare and Increment A-[HL], HL=HL+1, BC=BC-1
○ ○ ○ ○ ○

133/45
Instituto Monitor

CópiaCPIR
não autorizada.
****1- Reservados
Compare, Inc., Repeat todos
CPIos direitos
till A=[HL]or BC=0 autorais.
CPL —1-1- Complement A=~A
DAA ***P-* Decimal Adjust Acc. A=BCD format
DEC s ***v1- Decrement s=s-1
DEC xx ——— Decrement xx=xx-
DEC ss ——— Decrement ss=ss-1
DI ——— Disable Interrupts
DJNZ e ——— Dec., Jump Non-Zero B=B-1 till B=0

s.
EI ——— Enable Interrupts
EX [SP], HL ——— Exchange [SP] <->HL
ai
EX [SP], xx ——— Exchange [SP] <->xx
r
to
EX AF, AF’ ——— Exchange AF<->AF’
EX DE, HL ——— Exchange DE<->HL
EXX ——— Exchange
au
qq<->qq’ (except AF)
HALT ——— Halt
IM n ——— Interrupt Mode (n=0, 1, 2)
os
IN A, [n]
IN r, [C]
———
***P0-
Input
Input
A=[n]
r=[C] eit
r
di
INC r ***V0- Increment r=r+1
INC [HL] ***V0- Increment [HL] = [HL]+1

os
INC xx ——— Increment xx=xx+1
INC [xx+d] ***V0- Increment [xx+d]=[xx+d]+1
INC ss Increment
os ss=ss+1
IND
INDR
?*??1-
?1??1-
Input and Decrement
Input, Dec., Repeat
od [HL] = [C], HL=HL-1, B=B-1
IND till B=0
INI ?*??1- Input and Increment t [HL] = [C], HL=HL+1, B=B-1
INIR ?1??1- s
Input, Inc., Repeat
o
INI till B=0
JP [HL]
JP [xx]
———
———
ad
Unconditional Jump
Unconditional Jump
PC=[HL]
PC=[xx]
JP nn ———
r v
Unconditional Jump PC=nn
JP cc, nn
JR e
———
——— se
Conditional Jump
Unconditional Jump
If cc JP
PC=PC+E
JR cc, e ——— e
Conditional Jump If cc JR (cc=C, NC, NZ, Z)
LD dst, src ———
. R
Load dst=src
LD A, i
LDD
**0*0-
—0*0- daLoad
Load and Decrement
A=i
[DE] = [HL], HL=HL-1, #
a
iz
LDDR —000- Load, Dec., Repeat LDD till BC=0
LDI
LDIR
or
—0*0-
—000-
Load and Increment
Load, Inc., Repeat
[DE] = [HL], HL=HL+1, #
LDI till BC=0
t
au
NEG ***V1* Negate A=-A
NOP ——— No Operation
OR s
OTDR
ão ***P00
?1??1-
Logical inclusive OR
Output, Dec., Repeat
A=Avs
OUTD till B=0
OTIR n ?1??1- Output, Inc., Repeat OUTI till B=0

ia
OUT [C], r ——— Output [C]=r

óp
OUT [n], A ——— Output [n]=A
OUTD ?*??1- Output and Decrement [C]=[HL], HL=HL-1, B=B-1
COUTI
POP xx
?*??1-
———
Output and Increment
Pop
[C]=[HL], HL=HL+1, B=B-1
xx=[SP]+
POP qq ——— Pop qq=[SP]+
PUSH xx ——— Push -[SP]=xx
PUSH qq ——— Push -[SP]=qq
RES b,m ——— Reset bit m=m&{~2^}
RET ——— Return PC=[SP]+
RET cc ——— Conditional Return If cc RET
RETI ——— Return from Interrupt PC=[SP]+
RETN ——— Return from NMI PC=[SP]+
Cópia não autorizada. Reservados todos os direitos autorais.
RL m **0P0* Rotate Left m={CY, M<-
○ ○ ○ ○ ○

133/46
Instituto Monitor

CópiaRLAnão autorizada.
—0-0*
Reservados todos
Rotate Left Acc.
os direitos autorais.
A={CY, a}<-
RLC m —0P0* Rotate Left Circular M=M<-
RLCA —0-0* Rotate Left Circular A=A<-
RLD **0P0- Rotate Left 4 bits {A,[HL]}={A,[HL]}< - # #
RR m **0P0* Rotate Right m= ->{CY,m}
RRA —0-0* Rotate Right Acc. A= ->{CY, A}
RRC m **0P0* Rotate Right Circular m= ->m
RRCA —0-0* Rotate Right Circular A= ->A

s.
RRD **0P0- Rotate Right 4 bits {A, [HL]}= ->{A,[HL]} # #
RST p ——— Restart (p=0H, 8H, 10H,...38H)
ai
SBC A, s ***V1* Subtract with Carry A=A-s-CY
r
to
SBC HL, ss **?V1* Subtract with Carry HL=HL-ss-CY
SCF
SET b, m
—0-01
———
Sei Carry Flag
Set bit
CY=1
m=mv{2^b}
au
SLA m
SRA m
**0P0*
**0P0*
Shift Left Arithmetic
Shift Right Arith.
m=m*2
m=m/2 os
SRL m **0P0* Shift Right Logical it
m= ->{0, m, CY}
e
SUB s ***V1* Subtract A=A-s
r
XOR s ***P00 Logical Exclusive OR A=Axs
di
os
F
S
-*01?
S Sign flag (Bit 7)
os
Flag unaffected/affected/reset/set/unknown

Z Z Zero flag (Bit 6)


od
HC H Half Carry flag (Bit 4)
t
P/V
N
P
N
o s
Parity/Overflow flag (Bit 2, V=overflow)
Add/Subtract flag (Bit 1)
CY C d
Carry flag (Bit 0)
a
r v
n Immediate
s e extended addressing
addressing
nn
e addressing (PC=PC+2+offset)
Immediate
e
[nn]
. R
Relative
Extended addressing
[xx+d]
da Register addressing
Indexed addressing

za Register
r
[rr] indirect addressing
i
or
Implied addressing
b
p
ut Bit addressing
Modified page zero addressing (see RST)
a
DEFB n(,...)ão Define Byte (s)
n
DEFB ‘srt’ (,...) Define Byte ASCII string (s)
ia
DEFS nn Define Storage Block

óp
DEFW nn(,...) Define Word (s)

C
A B C D E Registers (8-bit)
AF BC DE HL Register pairs (16-bit)
F Flag register (8-bit)
I Interrupt page address register (8-bit)
IX IY Index registers (16-bit)
PC Program Counter register (16 bit)
R Memory Refresh register
SP Stack Pointer register (16-bit)
Cópia não autorizada. Reservados todos os direitos autorais.
○ ○ ○ ○ ○

133/47
Instituto Monitor

Cópiab não autorizada. One


Reservados
bit (0 to 7)
todos os direitos autorais.
cc Condition (C, M, NC, NZ, P, PE, PO, Z)
d One-byte expression (-128 to +127)
dst Destination s, ss, [BC], [DE], [HL], [nn]
e One-byte expression (-126 to +129)
m Any register r, [HL] or [xx+d]
n One-byte expression (0 to 255)
nn Two-byte expression (0 to 65535)

s.
pp Register pair BC, DE, IX or SP
qq Register pair AF, BC, DE or HL
ai
qq’ Alternative register pair AF, BC, DE or HL
r
to
r Register A, B, C, D , E, H or L
rr
s
Register pair BC, DE, IY or SP
Any register r, value n, [HL] or [xx+d]
au
src
ss
Source s, ss, [BC], [DE], [HL], nn, [nn]
Register pair BC, DE, HL or SP os
xx Index register IX or IY
eit
r
+ - * / ^ Add/subtract/multiply/divide/exponent di
& ~ v x
os
Logical AND/NOT/inclusive OR/exclusive OR
<- ->
[ ]
Rotate left/right
Indirect addressing
os
[ ]+ -[ ] d
Indirect addressing auto-increment/decrement
o
{ } Combination of operands
t
#
##
o s
Also BC=BC-1, DE=DE-1
Only lower 4 bits of accumulator A used

ad
Veremos alguns exemplosr v
na parte de software, uma das pró-
ximas lições.
se
e
. R
da
a
r iz
to
au
ão Anotações e Dicas
n
ia
óp
C

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/48
Cópia não autorizada. Reservados todos os direitos autorais.
lição

Microprocessador
8 Intel 80x86 is.
r a
Introdução tem o 80286, também conhecido
uto como 286; o
80386, conhecido como 386, e o 80486, conhe-
cido como 486.
a
A Intel foi a primeira empresa a lançar s
no mercado o microprocessador de 4 bits, por
ito
Uma empresa concorrente patenteou os
intermédio de ex-funcionários da Fairchild. A e
nomes 586, 5X86,irantes que a Intel o fizesse.
Zilog, por sua vez, foi criada por ex-funcioná-
rios da Intel, que lançaram o Z80. A IBM, com Então, não podendod utilizar a nomenclatura
seu conceito de arquitetura aberta, escolheu 80586, que s
seria
o reconhecida como 586, a Intel
os microprocessadores da Intel para construir decidiu-se s pelo nome PENTA, já que era a 5ª
seu primeiro PC (Personal Computer). geração
d odos processadores da família 80X86.

to
O nome Pentium chegou ao mercado e foi pa-
tenteado, recebendo suas evoluções o sufixo I,
o s III e agora Pentium IV.
II,
ad
r v É incrível como o microcomputador da

se IBM, o IBM-PC, foi aceito no mercado e virou


padrão de computador pessoal. Tão bom que
e
. R foi adotado em escritórios e empresas que
impulsionaram seu crescimento. Isto forçou
d a as novas gerações dos microprocessadores
za a serem compatíveis com seus antecessores.
ri A cada novo processador lançado, tudo que
to funcionava com o processador antigo tinha
au que continuar funcionando, no mínimo de
maneira igual.
ã o
1. O Intel 80X86 e a História da
Computação n Pessoal Eletronicamente falando, não é possível
i a apenas retirar um processador antigo e colocar
A Intel
p
ó tinha vários modelos de micro- um processador novo. Toda a placa de circuito
C
processadores, cada um deles atendendo a impresso teria que ser trocada para absorver
um segmento do mercado. A IBM escolheu o a nova tecnologia. Desta forma, encontramos
8086 de 16 bits, depois este microprocessador placas no mercado que aceitam vários mode-
evoluiu, constituindo assim uma família de los de microprocessadores já existentes, mas
microprocessadores 80X86. A letra X indica não modelos que ainda estão por vir. É uma
um número que pode ser 2, 3 ou 4. Assim, questão óbvia.

Cópia não autorizada. Reservados todos os direitos autorais.

133/49
Instituto Monitor

Cópia
2. não
Do 80286 autorizada.
para Frente Reservados todosumos
• Permitia direitos
avanço autorais.
do MS-DOS e siste-



mas operacionais mais poderosos.



Observe as figuras a seguir e procure
• Foi pouco aproveitada; funcionou como um


identificar os elementos básicos dos micro-


8086 mais veloz.


processadores.



2.2 CPU Intel 80386


2.1 CPU Intel 80286


s.


i


a


r


to



u


a



s


o
it



e

r
di


os

s

o

d

o

t

s

o

d

a

v

r

e

s

e

R

.

a

d

a

iz

r

o

t

au


o

ã

n Figura 17

Figura 18

ia

• 24 linhaspde endereço; 16 MB de memória


• Endereços e dados de 32 bits; 4 GB (gigabyte)


ó

C A23).

(A0 até de memória (A0 até A31).



• Relógio mais rápido (atualmente, clock de • Novas instruções para dados de 32 bits, pon-

25 MHz). teiros maiores.



• Barramento de dados de 16 bits com 2 perío-


dos de relógio por ciclo (D0 até D15). • Gerenciador de memória ampliado:

- modo de endereçamento linear de 32 bits


• Modo real = 8086 e modo protegido = 286. (D0 até D31);



• Registradores idênticos aos do 8086 (com- - modo 8086 (real e virtual).


Cópia não autorizada. Reservados todos os direitos autorais.


patibilidade).

○ ○ ○ ○ ○

133/50
Instituto Monitor

•Cópia
Aumentonão autorizada.
de desempenho provocado Reservados
por: • Usatodos os direitos
1,2 milhões autorais.
de transistores para inte-



- barramento de 32 bits (D0 até D31); grar:



- fila de instruções de 16 bytes (fetch ou - uma CPU 386 (32 linhas de endereçamen-


busca de instruções); to e 32 linhas de dados);



- menor quantidade de períodos de relógio - uma unidade de gerenciamento de me-



por instrução; mória;


- relógio mais veloz (clock de 16 a 33 MHz). - um cache de 8 kB (com controlador);


s.


- uma unidade de ponto flutuante.
i


• Totalmente compatível com software do
a


• Compatível com o 386 e apresenta apenas 6
r


8086 e 286.
to


novas instruções.


u


2.3 CPU Intel 80486
a


Ao olharmos para um processador deve-


s


o
mos procurar primeiro as linhas de dados (D0
it


até D...) que indicam a sua “potência”. De-


e

r
pois, procuramos as linhas de endereçamento
di


(A0 até A...), que indicam o quanto de memó-

os
ria o processador pode acessar diretamente.

s

o

Nos exemplos dados você nota que todos


d

os elementos básicos estão presentes em to-


o

t

dos os microprocessadores. Porém, nos 386 e


s

486 aumentaram os pinos do bus de controle.


o

d Desenvolvidas para IBM-PC compatíveis,


a

v estas linhas são uma tentativa engenhosa de


r driblar as limitações do sistema desenvolvi-


e

s do na década de 80, diferentemente do Z80,


e

que parou no tempo, sendo reconhecidamente


R

. um bom processador de 8 bits.


a

d

a

A linha Intel 80X86 tem avançado e se


z

ri multiplicado de 8 bits para 16 bits e atual-


o

t mente 32 bits. Apesar de ter no mercado con-


au

correntes com microprocessadores similares


a baixo custo (AMD e CYRIX), ainda é o IBM-


o

ã PC compatível e a Microsoft que impulsio-


n

nam o desenvolvimento dos processadores


ia Intel.

óp

C

A compatibilidade com o IBM-PC de 1980


e com os micros de hoje é uma barreira no



desenvolvimento de hardwares e softwares



muito mais avançados, rápidos e econômicos.




Vale aqui a ressalva de que um computa-



dor é feito de microprocessador + memória


ROM + memória RAM.



Cópia não autorizada. Reservados todos os direitos autorais.


Figura 19

○ ○ ○ ○ ○

133/51
Instituto Monitor

Cópia não autorizada. Reservados todos os direitos autorais.


ADDRESS BUS

R.O.M.

RAM

RAM

RAM

RAM
CPU

is.
r a
to
CONTROL BUS

au
DATA BUS
os
eit
r
di
Figura 20 - Microcomputador

Mas só isto é muito simples! Queremos que esse computador os


s
tenha um teclado. Então, teremos que ter um circuito eletrônico
o
para controlar o teclado e enviar as informações das teclas pressi-
od
onadas para a CPU. Gostaríamos de ver imagens, na tela de uma
t
TV ou monitor colorido. Então, teremos que ter um circuito eletrô-
o s
nico que controle o monitor ou a TV para que neles apareçam as
ad
imagens desejadas. A CPU enviará números binários e o circuito
v
interface fará a adequação para que apareça uma imagem na tela.
r
s e
e
Estas necessidades constituem os periféricos, de todos os ti-
R Para cada um deles haverá um circuito
pos e para todas as funções.
elétrico (interface) .ligado ao microprocessador por meio dos
da endereços e controle. Veja o exemplo na
barramentos de dados,
figura 21.
iza
o r
ut
a
o

Anotações e Dicas

ia
óp
C

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/52
Instituto Monitor

Cópia não autorizada. Reservados todos eos


de hardware direitos
algumas autorais.
vezes podem ser re-


Monitor SVGA


solvidos por software (sem que se abra o com-



CONTROLADORA DE VÍDEO putador).


CPU


Teclado


+ CONTROLADORA DE TECLA- Vamos conhecer como são estas placas de


MEMÒRIAS DO


Disk Drive 3 1/2” circuito impresso e identificar onde estão os


CONTROLADORA DE DISK DRIVE
elementos principais.


s.
Hard Disk


i


CONTROLADORA DE HDD

a
A figura 22 mostra a placa-mãe (mother


CD-ROM / DVD
r


board) para Intel 80486 – ano 1996. Nessa épo-
to



CONTROLADORA DE CD-ROM
ca começaram a surgir periféricos que tra-
Mouse
u


a
balhavam com os 32 bits da CPU. Ainda exis-



s
CONTROLADORA DE MOUSE SERIAL
Gravador de CD tiam periféricos de 8 bits (conector 5), sendo


o
it


a maioria de 16 bits.


BARRAMENTOS

e
CONTROLADORA DE DRIVE CD-R


r
di

Impressora


os
CONTROLADORA DE IMPRESSORA

Scanner

s

CONTROLADORA DE SCANNER

o

Web Câmera
d

o

t
CONTROLADORA DE CÂMERA

Joystick

s

CONTROLADORA DE JOYSTICK
o

Modem d

a

Microcomputador v
PLACA DE MODEM

r

e

es

R

.
PLACA DE REDE

a

d

a

zFAX

i 3

or Som

PLACA DE FAX 5

t

2 2

au
4

PLACA DE SOM

o 7 6

ã

n Figura 21

1

ia
Pela figura você percebe a importância

óp

dos barramentos e a razão da existência dos


C

circuitos tri-state. Os barramentos são como


avenidas, onde você pode entrar a qualquer



momento para trocar dados com a CPU, des-


Figura 22 Localização:

de que ninguém esteja passando por ali; caso 1 - soquete da CPU (80486)

contrário, haverá conflito (momento em que 2 - memória EPROM (BIOS)



dois periféricos querem se comunicar com a 3 - memória DRAM (trabalho)


4 - memória SRAM (cache)


CPU e fazem isto ao mesmo tempo). A CPU


5 - BARRAMENTO 8-bits

não entende nada e a máquina trava, perma-


6 - BARRAMENTO 16-bits

Cópiainoperante
necendo não autorizada.
até que se desfaçaReservados
o con- todos os direitos autorais.
7 - BARRAMENTO 32-bits

flito. Geralmente os conflitos são problemas


○ ○ ○ ○ ○

133/53
Instituto Monitor

Cópia não autorizada.


A placa-mãe paraReservados todos
Intel Pentium 100 MHz – anoos direitos
1997, não tem autorais.
mais slot (conector) para periféricos de 8 bits; os slots de 16 bits
suportavam os periféricos de 8 bits e 16 bits.

Surge um novo padrão de barramentos, o PCI para 32 bits. A


figura 23 mostra a placa-mãe com controladoras de periféricos on-
board (embutido na placa-mãe) para processador AMD – DUROM
700 MHz, 800 MHz e 900 MHz (concorrente do Intel Celeron 733
is.
MHz) – ano 2001. Somente dois slots PCI para periféricos, uma vez
que as placas controladoras de vídeo, som, impressora, drives 3 ½”, r a
drives CD-ROM/DVD, hard disk, comunicação serial, porta USB,
uto
rede e teclado já vêm on-board. a
os
eit
dir
Barramento
32-bits s
Memória
oDRAM
os
od
t
os
Memória
ad
EPROM
(BIOS) r v
se
e
. R
da
a
riz Soquete de CPU

to DURON 700

Figura u
a 23
ã o
n
ia
óp 3. Resumo
C
Internamente, todo microprocessador apresenta um inter-
pretador de códigos de instrução, memórias de rascunho chama-
das de registradores e uma Unidade Lógica e Aritmética (U.L.A.),
pois o que o microcomputador sabe fazer é calcular e manipular
números binários. Ele precisa de uma memória fixa que, ao ligar-
mos a máquina, encontre seu programa (software) de inicialização,
que geralmente é a memória EPROM. Por fim, precisa de memória
Cópia nãopara
autorizada. Reservados todos os direitos
trabalhar programas, que é a memória RAM.
autorais.
○ ○ ○ ○ ○

133/54
Cópia não autorizada. Reservados todos os direitos autorais.

Exercícios Propostos is.


r a
1 - Quais são os elementos comuns a todos os microprocessadores e qual étaofun-
ção de cada um?
a u
s
..................................................................................................................................
o
it
..................................................................................................................................
e
r
..................................................................................................................................
di
..................................................................................................................................

os
..................................................................................................................................
s
..................................................................................................................................
o
d
..................................................................................................................................
o
t
..................................................................................................................................

o s
..................................................................................................................................

a d
..................................................................................................................................
r v
2 - A interface: e
selétricos entre CPU e periférico.
( ) a) faz a adequação dos sinais e
( ) b) fica entre as faces.
. R
( ) c) armazena informações.
( ) d) serve para conectar d ao computador.
( ) e) é um software que
i za aciona periféricos.
3 - Quanto de memória t or eletrônica a CPU 80386 pode acessar diretamente?
( ) a) 4 Gbytes a ude memória.
( ) b) 2 Gbytes o de memória.
( ) c) 4 ×ã1.024 × 1.024 × 1.024 endereços de memória.
( ) d) 1nMbit.
( ) e) ia1 mega endereços de memória.
óp
C4 - Qual é a importância dos barramentos?
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
Cópia não autorizada. Reservados todos os direitos autorais.
○ ○ ○ ○ ○

133/55
Instituto Monitor

Cópia
5 -não
O que autorizada. Reservados
significa placa-mãe ou mother-board? todos os direitos autorais.
( ) a) Placa de circuito impresso onde está o processador e as memórias.
( ) b) Placa de modem.
( ) c) Placa que originou o computador.
( ) d) Placa de circuito integrado.
( ) e) Nenhuma das alternativas anteriores.

is.
r a
uto
a
os
eit
r
di
os
os
od
t
os
ad
r v
se
e
. R
da
a
riz
to
au
ão
n
ia
óp
C

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/56
Cópia não autorizada. Reservados todos os direitos autorais.
lição

9 Software is.
r a
Introdução de computadores de grande porte
uto da época e
poderia retomar seus clientes com um micro­
a
computador pessoal com a marca IBM.
IBM, Intel e Microsoft começaram, na s
década de 80, uma revolução em termos de to
Veja que somenteia máquina não bastava.
re para oferecer. É aqui
computação pessoal. Muitos computadores
pessoais existiam no mercado, mas nenhum
d i
Era preciso ter softwares
deles era padrão. A maioria utilizava o que entra a Microsoft, oferecendo softwares
micropro­cessador Zilog Z80 em uma linha de para os
o s
IBM-PC. Começou com o sistema
micros chamada TRS-80. operacional
s –chamado D.O.S. (Disk Operatio-
o
nal System Sistema Operacional em Disco),
dveio o editor de textos, a planilha de
Vale o comentário que o grande motivador o
depois
t jogos, etc.
cálculos,
dos micros pessoais foi o Apple II. A Apple,
empresa criada por Steve Jobs e Steve Wor-
s
o O IBM-PC e seus clones só dominaram o
niaks na garagem de suas casas, foi a grande d
motivadora para o usuário de classe média terv
a mercado porque existia uma fatia para o pro-
um microcomputador pessoal em sua casa.e
r cessamento de dados em escritórios e empresas
e s de pequeno porte. Não foi, de forma alguma,
1. História do Software do IBM-PC
. R o uso doméstico do IBM-PC que gerou esta
“onda” tecnológica. É claro que muitos usu-
Muitos aficionados correram para
a
d comprar o ários se beneficiaram deste avanço.
Apple II, um microcomputador z a
Motorola 6800, com teclado do ri com pro­ce­ssa­­­dor
tipo máquina de Para se ter uma idéia, no mundo todo
o
escrever e saída para que ta imagem aparecesse existe a pirataria de software. A empresa
a u
na tela de qualquer televisor colorido ou preto mais prejudicada com a pirataria é,
de longe, a Microsoft. Para
ã o foi o software desenvol-
e branco. Entretanto,
cada clone de IBM-PC
vido num Apple II que mudou a computação.
n
Tratava-se de uma planilha de cálculo, a funcionar é preciso um
a
i utilizada por contadores de
Visicalc, muito sistema operacional
p
empresasóem seu gerenciamento financeiro. criado pela Microsoft.
C Seja MS-DOS
Todas as pequenas empresas queriam ter ou Windows, o
um computador rodando um software desses. IBM-PC e seus
E foi aí que a IBM, uma empresa que prestava compatíveis
serviços de processamento de dados para pe- precisam deles
quenas, médias e grandes empresas, sentiu-se para funcionar.
incomodada e atraída. Incomodada, porque A Microsoft ganha mui-
perdia seus clientes para computadores pes- to dinheiro vendendo
Cópia não autorizada. Reservados
soais. Atraída, porque era a maior empresa seus todos
programasospara
direitos autorais.

133/57
Instituto Monitor

Cópia pois
empresas, nãoestas
autorizada.
estão sujeitas a Reservados
vistori- todos os direitos
Cada instrução cumpre umaautorais.
finalidade e



as e fiscalização. Já os usuários domésticos, a ela é dado um nome, que às vezes é extenso.



apesar de serem milhões, não há como pegá- Então, decidiu-se substituir os nomes por


los em seus lares. mnemônicos (forma simples de representar



uma palavra extensa). Foram os engenheiros



Em se tratando de IBM-PC, o software americanos da Intel que criaram este concei-


que garantia à IBM o domínio dos PCs era a to, portanto todos os mnemônicos que se re-


s.


BIOS, que roda quando a máquina é ligada. ferem a cada uma das instruções são de pala-
i


A BIOS fica em uma memória não-volátil do vras em Inglês.
a


r


tipo EPROM e sua função é reconhecer e sa-
to



ber como trocar dados entre os periféricos e Exemplo:
u


a CPU. É um software bastante simples e pe- a



queno e a IBM ganhou muito dinheiro ven- Instrução do Z80: carregue o registrador A s


o
it


dendo apenas ele, uma vez que todas as ou- com o conteúdo do registrador B.


tras partes do IBM-PC eram fabricadas por e

LD A, B r
di

outras empresas para a IBM.

LD é o mnemônico de LOAD, que, em

os

A Compaq foi a empresa que pirateou Inglês, significa carregar.

este software e, através de procedimentos ju-


s

o
Instrução do 80X86: carregue o registrador

rídicos não previstos em lei, criou sua pró-


d

AX com o conteúdo do registrador DX.


o

pria BIOS, que funcionava de maneira idên-


t

tica à BIOS da IBM, com algumas melhorias.


s
MOV AX, DX

Hoje, a Compaq é uma grande empresa devi-


o

d

do à clonagem da BIOS da IBM. Outras em-


a

MOV é o mnemônico de MOVE, que, em


presas sucederam a Compaq, como a AMI e a v

rInglês, significa mover.


Award, fabricantes de BIOS.


e

s

e
A partir desse ponto, os negócios come- No entanto, a máquina não interpreta tex-

R

çaram a cair para a IBM e ela deixou . o mer- to, somente números binários. No projeto do

cado de PCs, voltando ao que era:auma em-


microprocessador, cada instrução é associa-


d porte.

presa de computadores de grande a da a um número binário e, como ficar escre-


z

i vendo binários é muito difícil para o ser hu-


2. O Que é Software or

mano, é utilizada a representação em


t

au
hexadecimal.

Software é uma seqüência de instruções


o para que o processa-


ordenadas logicamente Exemplo:


ã

n
dor possa executá-las. Como vimos, o

ia
microprocessador só trabalha com binários. Instrução dos 80X86: MOV AX , DX está as-

p

O que são essas instruções? Como o micropro- sociada ao binário 100010011101000 . Para
cessador ó

C trabalha? facilitar, utilizamos a representação em



hexadecimal, que fica 89D0h. É uma instru-


No processo de criação dos microproces-


ção de 16 bits.

sadores, seus fabricantes escolhem quais ins-



truções o processador deverá saber executar. O microprocessador sabe interpretar



Os elementos de trabalho são: memórias, 1000100111010002 e, ao executar esta instru-


ção, copia os 16 bits do registrador DX no


registradores e operações lógicas ou aritmé-


registrador AX.

ticas.

Cópia não autorizada. Reservados todos os direitos autorais.




○ ○ ○ ○ ○

133/58
Instituto Monitor

Cópia não autorizada. Reservados


Você deve estar percebendo todosdeos
uma dificuldade direitos
linguagem en- autorais.
tre o homem e a máquina. Ao programar microprocessadores, o ho-
mem deve pensar em letras, palavras e números decimais. Ciente
dos elementos e conhecedor das instruções que o microprocessador
sabe executar, o homem monta uma seqüência lógica de instruções.

Resumindo:
• Programamos utilizando mnemônicos e pensando em decimal.
is.
• Compilamos o programa para os códigos hexadecimais. r a
• Gravamos memórias fixas do tipo ROM com estes binários.
u to
• Colocamos esta memória no sistema microprocessado e execu- a
s
to
tamos o programa ligando a máquina.
i
Todos perceberam que, desta forma, os computadores
i renão avan-
çariam muito. O sistema operacional é um programadque tenta fa-

os dispunha de
cilitar a comunicação do usuário com a máquina. O primeiro siste-
ma operacional utilizava-se de palavras. O usuário
os
um teclado para enviar sua mensagem ao microprocessador e uma
tela de monitor ou TV para receber a respostad do microprocessador,
completando o que se chama de comunicação.to O usuário deveria
s reconhecia e, ao pressio-
digitar no teclado palavras que o sistema
o
nar a tecla ENTER, ele buscaria qual
la palavra, executando-o. a d programa está associado àque-

r v
Sempre que um IBM-PC s eera ligado rodava-se o software BIOS,
e
testando a máquina e definindo como ela deve funcionar. Depois,
.
procurava-se um software R chamado DOS em uma unidade de dis-

armazenar um a
da não existiam os HD (hard disk) e a maneira de
co flexível. Na época
programa, além de escrever em memórias do tipo
riz
EPROM, era utilizar a mídia magnética, no formato de disco.
to
u operacional, que é um software, era copiado do disco
O sistema
para aamemória RAM do computador. Quando o processo termina-
ã o
va aparecia na tela uma letra seguida de dois pontos e um sinal de
n
“maior” com uma barrinha piscando ao lado. Isto indicava que o
ia processo de cópia do sistema operacional para a memória RAM
óp digitado corretamente um dos comandos que ele sabia executar.
ocorreu satisfatoriamente e que o computador esperava que fosse
C Note a diferença entre instrução e comando: um comando é com-
posto por uma série de instruções.

3. Software em Linguagem de Máquina


Linguagem de máquina é a linguagem que a máquina entende:
binários ou hexadecimais. Em Inglês ela se chama Assembly, se-
Cópia nãoguida
autorizada. Reservados
do nome do processador. Exemplos:todos os direitos autorais.
○ ○ ○ ○ ○

133/59
Instituto Monitor

Cópia não• autorizada. Reservados


Assembly Z80: linguagem de máquina todos os direitos
para o processador Z80. autorais.
• Assembly 80X86: linguagem de máquina para os processadores
80X86.
• Assembly 6800: linguagem de máquina para os processadores
Motorola 6800.

s.
Cada Assembly é composta dos mnemônicos e códigos hexa-
decimais para cada processador.
a i
r
Existem programas (softwares) que rodam no PC e são cha- to
mados Assembler seguido do nome do processador. Neles você
au
digita os mnemônicos e ele compila para os códigos da linguagem
de máquina. os
eit
ir
Para criar programas em linguagem de máquina utilizamos uma
tabela de programação como essa: d
o s
Endereço Endereço Códigos
Decimal Hexadecimal Hexadecimal o s
Mnemônicos Comentários

o d
t
o s
ad
r v
e
es
. R
da
i za
tor
au
ão Anotações e Dicas
n
ia
óp
C

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/60
Instituto Monitor

Cópia não autorizada. Reservados


Aprender a programar todostorna
um microprocessador osvocê
direitos
apto a autorais.
programar qualquer outro. Basicamente, o processo é o mesmo,
mudando apenas um pouco os mnemônicos e instruções existen-
tes. Basta consultar o manual do fabricante e sair programando.

Vimos os mnemônicos do Z80; veremos agora os mnemônicos


da família 80X86.

is.
r a
uto
a
os
eit
r
di
os
os
od
t
os
ad
r v
se
e
. R
da
a
riz
to
au
ão
n
ia
óp
C Figura 24

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/61
Instituto Monitor

Cópia nãoMnemonic
autorizada.ODITSZAPC
Reservados
Description todos os direitos autorais.
AAA ?—??*?* ASCII Adjust for Add in AX
AAD ?—**?*? ASCII Adjust for Divide in AX
AAM ?—**?*? ASCII Adjust for Multiply in AX
AAS ?—??*?* ASCII Adjust for Subtract in AX
ADC d,s *—***** Add with Carry
ADD d,s *—***** Add
AND d,s *—**?** Logical AND
CALL a ————- Call
is.
CBW
CLC
————-
————0
Convert Byte to Word in AX
Clear Carry r a
CLD
CLI
-0———-
—0———
Clear Direction
Clear Interrupt uto
CMC ————* Complement Carry a
CMP d,s *—***** Compare
os
it
CMPS *—***** Compare memory at SI and DI
CWD ————-
e
Convert Word to Double in AX,DX
r
di
DAA ?—***** Decimal Adjust for Add in AX
DAS ?—***** Decimal Adjust for Subtract in AX

os
DEC d *—****- Decrement
DIV s ?—????? Divide (unsigned) in AX (,DX)
ESC s
HLT
————-
————- Halt os
Escape (to external device)

IDIV s ?—????? d
Divide (signed)in AX (,DX)
o
IMUL s *—????*
t
Multiply (signed) in AX (,DX)
IN d,p
INC d
————-
*—****- os Input
Increment
INT —00——-
ad Interrupt
INTO
IRET
—**——-
r v
*********
Interrupt on Overflow
Interrupt Return
JB/JNAE a
se
————- Jump on Below/Not Above or Equal
JBE/JNA a
e
————- Jump on Below or Equal/Not Above
JCXZ a
JE/JZ a . R
————-
————-
Jump on CX Zero
Jump on Equal/Zero
JL/JNGE a
da ————- Jump on Less/Not Greater or Equal
JLE/JNG a
a ————- Jump on Less or Equal/Not Greater
JMP a
JNB/JAE a riz ————-
————-
Unconditional Jump
Jump on Not Below/Above or Equal
t
JNBE/JA ao ————- Jump on Not Below or Equal/Above

au
JNE/JNZ a ————- Jump on Not Equal/Not Zero
JNL/JGE a ————- Jump on Not Less/Greater or Equal

ão
JNLE/JG a ————- Jump on Not Less or Equal/Greater

n
JNO a
JNP/JPO a
————-
————-
Jump on Not Overflow
Jump on Not Parity/Parity Odd
ia JNS a ————- Jump on Not Sign

óp
JO a ————- Jump on Overflow

C JP/JPE a
JS a
————-
————-
Jump on Parity/Parity Even
Jump on Sign
LAHF ————- Load AH with 8080 Flags
LDS r,s ————- Load pointer to DS
LEA r,s ————- Load EA to register
LES r,s ————- Load pointer to ES
LOCK ————- Bus Lock prefix
LODS ————- Load memory at SI into AX
LOOP a ————- Loop CX times
LOOPNZ/LOOPNE a ————- Loop while Not Zero/\Not Equal
Cópia não autorizada. Reservados todos os direitos autorais.
LOOPZ/LOOPE a ————- Loop while Zero/Equal
MOV d,s ————- Move
○ ○ ○ ○ ○

133/62
Instituto Monitor

Cópia nãoMOVS
autorizada. ————-
Reservados todos
Move memory os direitos autorais.
at SI to DI
MUL s *—????* Multiply (unsigned) in AX (,DX)
NEG d *—***** Negate
NOP ————- No Operation (= XCHG AX,AX)
NOT d ————- Logical NOT
OR d,s *—**?** Logical inclusive OR
OUT p,s ————- Output
POP d ————- Pop

s.
POPF ********* Pop Flags
PUSH s
PUSHF
————-
————-
Push
Push Flags ai
r
to
RCL d, c *———* Rotate through Carry Left
RCR d, c *———* Rotate through Carry Right
REP/REPNE/REPNZ ————- Repeat/Repeat Not Equal/Not Zero
au
REPE/REPZ ————- Repeat Equal/Zero
RET (s) ————- Return from call
os
ROL d,c
ROR d,c
————-
*———*
Rotate Left
Rotate Right eit
r
di
SAHF ——***** Store AH into 8080 Flags

os
SAR d,c *—**?** s
Shift Arithmetic Right
o
SBB d,s
SCAS
*—*****
*—*****
od
Subtract with Borrow
Scan memory at DI compared to AX
SEG r ————- t
Segment register
SHL/SAL d,c *—**?**
o s Shift logical/Arithmetic Left
SHR d,c
STC
*—**?**
————1
ad Shift logical Right
Set Carry
STD
r v
-0———- Set Direction
STI
STOS se
—0———
————-
Set Interrupt
Store AX into memory at DI
SUB d,s e*—***** subtract
TEST d,s
. R *—**?** AND function to flags
WAIT
XCHG r (,d) da ————-
————-
Wait
Exchange
a
iz
XLAT ————- Translate byte to AL
XOR d,s
or *—**?** Logical Exclusive OR

t
au -*01? Unaff/affected/reset/set/unknow
OF
ã
DFo 0
D
Overflow Flag (Bit 11)
Direction Flag (Bit 10)
n
IF I Interrupt enable Flag (Bit 9)

ia TF T Trap Flag (Bit 8)

óp
SF S Sign Flag (Bit 7)
ZF Z Zero Flag (Bit 6)
C AF
PF
A
P
Auxilary carry Flag (Bit 4)
Parity Flag (Bit 2)
CF C Carry Flag (Bit 0)

ALIGN Align to word boundary


ASSUME sr:sy (,...) Assume segment register name(s)/
ASSUME NOTHING Remove all former assumptions
DB e (,...) Define Byte (s)
Cópia não autorizada. Reservados todos os direitos autorais.
DBS e Define Byte Storage
○ ○ ○ ○ ○

133/63
Instituto Monitor

Cópia nãoDDautorizada.
e (,...)
Reservados todos os direitos autorais.
Define Double Word (s)
DDS e Define Double Word Storage
DW e (,...) Define Word (s)
DWS e Define Word Storage
EXT (sr: )sy (t) External (s) (t = ABS/BYTE/DWORD/FAR/NEAR/WORD)
LABEL t Label (t = BYTE/DWORD/FAR/NEAR/WORD)
PROC t Procedure (t = FAR/NEAR, default NEAR)

is.
ABS Absolute value of operand
r a
to
BYTE Byte type operation
DWORD
FAR
Double Word operation
IP and CS registers altered
au
HIGH
LENGHT
High – order 8 bits of 16-bit value
Number of basic units os
LOW Low – order 8 bit of 16-bit value
eit
NEAR Only IP register need be altered
r
OFFSET
PTR
Offset portion of an address
Create a variable or label di
SEG
SHORT
Segment of address
One byte for a JMP operation os
SIZE Number of bytes defined by statement
os
THIS
d
Create a variable/label of specified type
o
TYPE
WORD t
Number of bytes in the unit defined
Word operation
AX BX CX DX
os
Accumulator/Base/Count/Data registers
AL BL CL DL
AH BH CH DH a d
Low byte of general registers
High byte of general registers
SP BP
r v
Stack/Base Pointer registers
SI DI e
Source/Destination Index registers
s
CS DS SS ES
e
Code/Data/Stack/Extra Segment registers
IP
. R
Instruction Pointer register

da
a a
z Address
c
ri Count
d
to Destination
e
p au Expression or string
I/O port
r
são Register
Source
n
sr Segment register (CS,DS,SS,ES)
ia sy Symbol

óp
t Type of symbol

C
Estas são as instruções para o 8086, microprocessador de 16
bits compatível com 8080 de 8 bits. Todas estas instruções ainda
são reconhecidas pelos Pentium e pelos concorrentes da Intel, como
o AMD K6-II, Durom e Athlon.

Antes de programarmos algo, vamos definir alguns termos:


Cópia não autorizada. Reservados todos os direitos autorais.
○ ○ ○ ○ ○

133/64
Instituto Monitor

Cópia não
PROGRAMA autorizada.
– Seqüência lógica deReservados
instru- todosem
é executado osumdireitos autorais.
microcomputador IBM-



ções (ou comandos) que o microprocessador PC compatível que utiliza microprocessador



sabe executar. Intel. Apesar de o disco ser o mesmo utiliza-


do no drive de ambos, seu conteúdo, que é o



ROTINA – Programa que se repete continua- programa objeto, só é interpretado pelo



mente. Machintosh, e vice-versa.



s.


SUB-ROTINA – Programa que é executado 4. Fluxograma
i


somente se for chamado. Fica fora do pro-
a


r


grama principal, em algum lugar na memória Quando trabalhamos com programas cur-
o nossa men-


tos, as coisas ficam bem clarastem


RAM. Tem começo e fim.
au se estende de-


te. Porém, quando o programa



PROGRAMA FONTE – É a idéia do progra- s
mais ou utiliza muitas sub-rotinas, a tendên-


cia é “perder o fio dato


mador expressa em seqüência de mnemô- meada”. Para que isso
i


nicos. e
não ocorra, foi introduzido na programação o


r
i o nome diz, é um diagra-

fluxograma. Como
PROGRAMA OBJETO – É o programa fonte ma que utilizadfiguras geométricas e setas

oso fluxo que o programa deve se-


após ser compilado, ou seja, são os códigos para indicar


s

hexadecimais. guir.
o

d

o

Obs.: você pode levar seu programa fonte


t Assim, temos:

para qualquer microprocessador, desde que


s

faça as equivalências entre os mnemônicos. o  Representa INÍCIO ou FINAL.


d

Já o programa objeto só pode ser levado a


para outro microprocessador igual ou equi- v  Representa qualquer operação.


r

valente. e

s

e  Representa COMPARAÇÃO e

R

Tudo o que está armazenado no disco fle- DECISÃO.


.

a progra-
xível, CD-ROM, HD, etc., são programas ob-

d

jeto. Por exemplo, um disquete com  Representa EMENDA.


a

izMotorola, não

ma para o microcomputador Machintosh da


r

 Representa o sentido do FLUXO.


o
Apple, que utiliza processador

t

au


o

ã Anotações e Dicas

n

ia

óp

C













Cópia não autorizada. Reservados todos os direitos autorais.




○ ○ ○ ○ ○

133/65
Cópia não autorizada. Reservados todos os direitos autorais.
lição

Noções de
10 Programação Assembly is.
r a
Introdução Lembramos que para os 80X86 to os regis-


u


a
tradores são de 16 bits, assim 1111 1111 1111


s


Faremos um breve estudo da programação 1111 corresponde a FFFFh.


2
Assembly para 80X86, comentando como seria
to


As instruções quei carregam registradores


re (veja tabela da lição 9).
em Assembly Z80. Vamos utilizar o fluxogra-


i

ma, que nos auxiliará a entender o processa- são as instruções MOV
d

mento das instruções. Utilizamos as seguintes:


MOV AX , FFFFh o s
1. Fluxograma s

o , FFFFh

MOV BX
d

MOVoCX , FFFFh

O fluxograma é utilizado para organizar o


t

andamento do programa e para que o progra-


s

MOV DX , FFFFh
mador não se perca no meio do caminho. o

d

PROGRAMA 1 - Carregando todos os regis-va


O Z80 apresenta registradores de 8 bits


r conforme mostra a figura 26.


tradores de uso geral com 11111111 . e


es
2

R Início

. Registradores do Z80 (8-bits)


Início
a

d

A
a LD A, FFh

iz

r

B C
o

AX = FFFFh
t LD BC, FFFFh

au
D E


o H L LD DE, FFFFh

ã

n BX = FFFFh

Os registradores A, B, C, D, E, H e L

ia são de 8 bits. Podemos associar em


LD HL, FFFFh

óp

pares somente os seguintes


registradores: BC, DE e HL. Cada par


C

CX = FFFFh

forma um registrador de 16 bits. Fim



Figura 26


DX = FFFFh Programas em Assembly são compostos de



binários representados por códigos hexade-



cimais. São gravados na memória, portanto


cada código ocupa um endereço de memória.


Fim

Cópia não autorizada. Reservados todos os direitos autorais.



Figura 25

○ ○ ○ ○ ○

133/67
Instituto Monitor

Cópia não
Ao rodar autorizada.
o programa Reservados
(do Inglês run, que todos
reset os O
automático. direitos autorais.
processamento aconte-



significa correr – no Brasil foi traduzido como ce assim:



rodar), devemos dizer ao processador onde se
• Liga o computador.


encontra a primeira instrução do programa.



Esse endereço deverá então ser carregado no • Microprocessador é resetado automatica-


mente.


registrador PC (Program Counter) e o micro-


processador executará o programa que estiver


• As linhas de endereçamento são todas co-
s.


na memória, a partir daquele endereço. locadas em nível lógico zero, formando o
i


a


endereço zero. Ativam-se os pinos MEM e
r


2. Como um Programa “Roda”
to


RD, indicando que o processador fará uma


u
leitura de memória.


Em outras palavras: como é feito o a



processamento das instruções? s
• No primeiro pulso de clock o microproces-


too ciclo
sador irá procurar pela primeira instrução


1º) Devemos conhecer o sistema micropro- i


e
a ser executada. É de fetch (busca


cessado. Onde está o microprocessador? de instrução nair memória).

d

2º) O que podemos fazer? Quanto de memó-

ria ele tem? Quais os periféricos e como o


uma memória

s não-volátil (ROM, PROM,
• A primeira instrução deverá estar em

s E2PROM), cujo endereço zero


se comunicar com eles? EPROM,


o

d

3º) Fazer um fluxograma para organizar as da memória conterá o código da primei-


o

tra instrução.

idéias.

s• Os próximos pulsos de clock copiarão o con-


4º) Montar a tabela de programação, indican- o


d teúdo daquele endereço para o interpreta-


do o endereço da memória a partir do qual


a

estará gravado o programa. v dor de instrução da CPU.


r

e • Interpretada a instrução, mais alguns pul-


5º) Compilar os mnemônicos para os códigos


s

e
hexadecimais e criar o programa objeto. sos de clock para que ela seja executada.

R

. Co- • Ao terminar a execução da primeira ins-


6º) Gravar na memória o programa criado.


locar a memória no sistema. da

trução o registrador PC terá o endereço da


a o regis-

próxima instrução.
z

ri da memória
7º) Executar o programa, carregando

• Copia-se o conteúdo do Program Counter


o
trador PC com o endereço

t

onde se inicia o programa. para as linhas de endereçamento. Ativan-


u

a do os pinos MEM e RD, buscará na memó-



o
Pronto! Automaticamente, o registrador ria, naquele endereço, a próxima instrução.

ã

n
PC vai sendo incrementado à medida que as • A partir daí o ciclo se repete até o término

ia
instruções são executadas. do programa ou desligamento da máquina.

óp o Microcomputador

3. Ligando • Assim, busca instrução na memória (ciclo


C

de fetch, interpreta instrução, executa ins-



Ao ligarmos a alimentação, todo micro- trução, o registrador PC aponta para o en-



processador deve ser resetado. No pino reset dereço da próxima instrução, busca

instrução, interpreta, ...). Representando


do microprocessador deve ter um circuito de


em um fluxograma, seria:





Cópia não autorizada. Reservados todos os direitos autorais.




○ ○ ○ ○ ○

133/68
Instituto Monitor

Cópia não autorizada. Reservados


Liga
todos os direitos autorais.

RESETA µP

PC = 0000h

MEM e RD is.
são ativados
r a
Busca uto
Instrução a
os
Interpreta
eit
r
di
os
Executa

PC = endereço os
próxima instrução
od
t
N
o s Acabou?

a
S
d
r v Fim
se
e
. R Figura 27

d a
iza
o r de loop quando um programa volta ao começo. Te-
Chamamos
ut tomar cuidado com o loop infinito, pois, se ocorrer, o
remos que
a nunca termina, sempre voltando ao início.
programa

ão Anotações e Dicas
n
ia
óp
C

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/69
Cópia não autorizada. Reservados todos os direitos autorais.
lição

Debug da Microsoft
11 Software Assembler 80X86 is.
r a
Introdução to pressio-
Caso não apareça em tela inteira,


u


a
ne ALT e ENTER e o prompt do MS-DOS ocu-


s


Para treinarmos um pouco a parte prática, pará a tela inteira.


teríamos que montar um sistema com micro-
to


i


re
processador e memórias, criar circuitos de Digite: DEBUG [ENTER]


i

interface para entrada de dados no processador
Você já está d

e recebimento de dados do processador. rodando o programa DEBUG,

cujo cursor ésum sinal de menos com uma


o ao lado.

Qualquer computador compatível com s


barrinha piscando

o

IBM-PC e que tenha sistema operacional MS-


d

o

DOS ou Windows, tem um programa chamado Digite: ? [ENTER]


t

DEBUG. Este programa acompanha todos os


s Aparecerá na tela todas as “chaves” do pro-


pacotes Windows. o

d grama.

O DEBUG foi criado e incluso no Windowsva



r

para auxiliar programadores experientes. Utili-e A chave “?” é o help (ajuda) do programa,

zaremos como única fonte fácil e viável paras


ee da-
trei- auxiliando você a utilizá-lo.

nar a programação de microprocessadores R


. utilizar

remos aqui algumas indicações de como -?


a

o DEBUG em seu aprendizado. d


assemble A [endereço]
a

z compare C intervalo endereço


i
A partir de qualquer rcomputador com

dump D [intervalo]
o  “Programas”

t

Windows, clique em “Iniciar” enter E endereço [lista]


au

 “Prompt do MS-DOS”. fill F intervalo lista



o go G [=endereço] [endereços]

ã

hex H valor1 valor2


n

input I porta

ia

load L [endereço] [unidade]


p

ó

[primeiro-setor] [número]
C

move M intervalo endereço



name
N [caminho]

[lista-de-parâmetros]

output O porta byte



proceed P [=endereço] [número]


Figura 28

quit Q

register R [registrador]

search S intervalo lista


Cópia não autorizada. Reservados


tracetodosTos direitos autorais.

[=endereço] [valor]

○ ○ ○ ○ ○

133/71
Instituto Monitor

Cópia nãounassemble
autorizada. Reservados todos os direitos autorais.
U [intervalo]
write W [endereço] [unidade] [primeiro-setor]
[número]
allocate
expanded XA [#páginas]
memory
deallocate
expanded XD [identificador]
is.
memory
map expanded XM [páginaL] [páginaP] memory pages r a
[identificador]
uto
display a
expanded XS
o s
memory status
- e it
dir
Desta lista de “chaves” utilizaremos apenas as seguintes:
os
COMENTÁRIOS s
CHAVE
do
to
A ASSEMBLE, seguida do número do endereço de memória, onde se
iniciará o programa.
UNASSEMBLE, seguida do endereço
o s de memória que se deseja
U
“DESASSEMBLAR”. Na tela
mnemônicos do programa.a
d aparecem os endereços, códigos e

r v o qual se deseja ver o conteúdo em


D
s
códigos hexadecimais. e
DUMP, seguido do endereço

NAME, seguido e
N .COM, nomeia . Rseude programa
uma palavra com até 8 caracteres e terminação
para armazenar em DISCO.

d
REGISTER, a mostra o STATUS de todos os registradores do IBM-PC,
R bem
z a as FLAGs.
como Quando seguido pelo nome do registrador, per-

r i
mite visualizar seu conteúdo atual e abre espaço para que você o

toaltere.

W u
WRITE, salva em disco seu programa FONTE e OBJETO.
a Permite que você execute seu programa sem o DEBUG.
ãoG GO, executa o programa a partir do endereço de memória apontado
n pelos registradores CS e IP.

ia TRACE, executa as instruções de um programa, uma a uma, mostran-

óp
T do com ficam os registradores após cada instrução.

C P
PROCEED, prossegue a execução das instruções de um programa, só
parando em pontos de decisão.

O OUTPORT, envia DADOS para um periférico.

I INPORT, recebe DADOS de um periférico.

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/72
Instituto Monitor

Cópia
1. nãodoautorizada.
Restrições DEBUG Reservados todos osoudireitos
Temporizar autorais.
fazer uma pausa é muito



utilizado em softwares de controle. Lembra



Ao executarmos o DEBUG em qualquer dos semáforos?


máquina, primeiro devemos digitar: R [EN-



TER]. No DEBUG digite:




Anote o valor do registrador CS. A100 [ENTER]


s.


MOV BX , 0FFF [ENTER]
i


Quando da criação do sistema IBM-PC, MOV CX , 0002 [ENTER]
a


r


decidiu-se dividir a memória em páginas de DEC CX [ENTER]
to



64 kbytes cada uma. Assim, o registrador CS JNZ 106 [ENTER]
u


tem um número hexadecimal que corres- DEC BX a
[ENTER]



ponde à página. O registrador IP contém o s
JNZ 103 [ENTER]


o
it


endereço inicial livre dessa página para pro- INT 20 [ENTER]


gramação, que é sempre 0100h. e [ENTER]


ir

d


Com o DEBUG não podemos criar pro-
osé? O sinal de menos e uma bar-
Você estará

no cursor do DEBUG. Lem-
gramas maiores que 64 kbytes, pois não po-

bra como ele


s

demos mudar de página. rinha piscando ao lado.


o

d

o

Exemplo:
t U100 [ENTER]

Digite:

s

-R o

AX=0000 BX=0000 CX=0000 DX=0000 ad


Aparecerá na tela algo assim:

v

-U100
SP=FFEE BP=0000 SI=0000 DI=0000
r

DS=166F ES=166F SS=166F CS=166F e 166F:0100 BBFF0F MOV BX,0FFF


s

IP=0100 NV UP EI PL NZ NA PO NC e 166F:0103 B90200 MOV CX,0002


R 166F:0106 49 DEC CX

166F:0100 BBFF0F MOV BX,0FFF


.

a 166F:0107 75FD JNZ 0106


d

Aqui observamos os registradores: 166F:0109 4B DEC BX


a

izuso geral com 166F:010A 75F7 JNZ 0103


r

166F:010C CD20 INT 20


o
AX, BX, CX e DX, que são de

t

seus conteúdos.
au

CS=166F Esta é a listagem completa do programa


IP=0100 o

que acabamos de digitar. No lado esquerdo


ã

n temos o valor de CS (que não se altera) sepa-



ia Isto não é importante, mas


O valor de CS pode mudar de uma má- rado por dois pontos do valor do IP. Só IP

p
quina para outra.

muda, pois se refere aos endereços de me-


devemos ó

anotar o valor de CS que aparecer.


C mória daquela página.


PROGRAMA 2 - TEMPORIZADOR

Você nota que a instrução MOV BX,0FFF


ocupa três endereços de memória, que o có-



Se fizermos um programa que mande o digo da instrução MOV BX (número de 16


processador contar de um determinado núme-


bits) é BB e que o código da instrução MOV


ro até chegar a zero, ele não executará nada, a CX (número de 16 bits) é B9. Em cada ende-

não ser a contagem. Isso deixa a máquina numa reço de IP cabem somente 8 bits.

espera até que a contagem termine.


Cópia não autorizada. Reservados todos os direitos autorais.




○ ○ ○ ○ ○

133/73
Instituto Monitor

Cópia nãoMOV
A instrução autorizada. Reservados
carrega os registrado- dicatodos os
o endereço dadireitos autorais.
próxima instrução. No fi-



res com número ou copia o conteúdo de ou- nal da tela vemos a instrução a ser executada.



tro registrador. Vamos executar esse progra-


ma passo-a-passo. Digite:




T [ENTER], para executar esta nova instru-


Digite:
ção.



s.
RIP [ENTER]


i


100 [ENTER] Resultado:
AX=0000 BX=0FFF CX=0002raDX=0000


R [ENTER]


o


SP=FFEE BP=0000 SI=0000 tDI=0000


Na tela aparecerá o STATUS dos regis- u


a
DS=166F ES=166F SS=166F CS=166F


tradores e no final a primeira instrução do


IP=0106 NV UP EI PL s NZ NA PO NC


programa digitado.
166F:0106 49
t
DECo CX


i


re
-


Exemplo:
i

CX teve seudvalor alterado conforme a ins-

-rip

IP 0100

trução, IP o

s indica o endereço da próxi-
agora
s e no final da tela vemos esta nova

:100 ma instrução
o

-r instrução.
d

o

AX=0000 BX=0000 CX=0000 DX=0000


t Ao digitar T [ENTER] o processador esta-

SP=FFEE BP=0000 SI=0000 DI=0000


s

DS=166F ES=166F SS=166F CS=166F o rá executando a instrução DEC CX. O resul-


d

IP=0100 NV UP EI PL NZ NA PO NC
a tado:

166F:0100 BBFF0F MOV BX,0FFF v


r

e AX=0000 BX=0FFF CX=0001 DX=0000


CS e IP juntos compõem o registrador s


e PC SP=FFEE BP=0000 SI=0000 DI=0000


R você
(Program Counter). Para efeitos didáticos DS=166F ES=166F SS=166F CS=166F

.

a
pode considerar IP = PC já que o CS não muda. IP=0107 NV UP EI PL NZ NA PO NC

d

Assim, IP está com o endereço da instrução 166F:0107 75FD JNZ 0106


a

que vai ser executada.


iz -

r

o

t

Digite: T [ENTER] CX passou de 0002 para 0001, significan-


u

a do que a instrução DEC CX subtraiu uma uni-



A chave “T” faz o com que o processador dade do valor do registrador CX.

ã

execute somente esta instrução.


n

DEC é o mnemônico de DECREMENT,


a
i seria:

O resultado traduzido como decrementar ou subtrair uma


p

ó

unidade. A instrução contrária ao DEC é INC,


C BX=0FFF CX=0000 DX=0000

AX=0000 de INCREMENT ou incrementar, somar uma



SP=FFEE BP=0000 SI=0000 DI=0000 unidade ao conteúdo.



DS=166F ES=166F SS=166F CS=166F


IP=0103 NV UP EI PL NZ NA PO NC Além disso, IP indica agora o endereço da



166F:0103 B9FFFF MOV CX,0002 próxima instrução e no final da tela vemos a



- próxima instrução.


Note que o valor de BX foi mudado para JNZ é o mnemônico de JUMP if NOT

Cópiacomonão autorizada. Reservados todos os direitos autorais.


0FFF, mandava a instrução. IP agora in- ZERO para endereço.



○ ○ ○ ○ ○

133/74
Instituto Monitor

Cópia
Quandonão autorizada.
decrementou Reservados
o registrador CX, todos
0000. osque
Notaremos direitos
a FLAG deautorais.
zero se ma-



o processador utilizou a ULA e as FLAGS nifestará indicando que houve resultado da



observaram o resultado. As FLAGS são mos- ULA igual a zero.


tradas no lado direito da tela: NV UP EI PL



NZ NA PO NC. Vejamos, digite T [ENTER]:




Observe a FLAG de ZERO indicando NZ AX=0000 BX=0FFF CX=0000 DX=0000


s.


(NOT ZERO): o resultado não foi o número SP=FFEE BP=0000 SI=0000 DI=0000
i


zero. É verdade: CX era 0002 e passou para DS=166F ES=166F SS=166F CS=166F
a


r


0001, que não é zero. IP=0107 NV UP EI PL ZR NA PE NC
to



166F:0107 75FD JNZ 0106
u


A instrução JUMP significa saltar para um - a



endereço; seu mnemônico é JMP endereço. Este s


o
it


salto para endereço pode ser condicionado ao CX foi para zero ao ser decrementado e a


apontamento das FLAGS. e
FLAG de zero mostra agora “ZR”, indicando


r
di

que houve um resultado nulo pela ULA.


SALTE SE a FLAG DE ZERO for ATIVA. (ZR)
os

SALTE SE a FLAG de ZERO NÃO for ATI- IP aponta para a próxima instrução, que é

s

VA. (NZ) JNZ 0106. Esta instrução será ignorada, pois


o

d

Se houver CARRY. não irá saltar; o resultado é zero. Veja:


o

Se NÃO houver CARRY. etc.


t Digite T [ENTER]:

s

Voltando ao programa, a instrução seguin- o


d AX=0000 BX=0FFF CX=0000 DX=0000


te é JNZ 0106. SALTE se NÃO for ZERO para a


v

o endereço 0106.
r SP=FFEE BP=0000 SI=0000 DI=0000

se DS=166F ES=166F SS=166F CS=166F



Observando as FLAGS vemos o NZ. e Por- IP=0109 NV UP EI PL ZR NA PE NC


R

tanto, deverá ocorrer o salto para o endereço 166F:0109 4B DEC BX


.

0106. a -

d

za

ri
Conferindo após digitar T [ENTER]: IP aponta agora para o endereço 0109 e

o não 0106. Significa que ignorou a instrução


t

AX=0000 BX=0FFF CX=0001 DX=0000 JNZ 0106 e deverá executar a instrução do


u

a

SP=FFEE BP=0000 SI=0000 DI=0000 endereço 0109, que é DEC BX.


DS=166F ES=166F o SS=166F CS=166F


ã

IP=0106 NV UP EI
n DEC
PL NZ NA PO NC O valor de BX é 0FFF, que decrementado

166F:0106 49
ia CX irá para 0FFE (número hexadecimal). Isto

-
p muda a FLAG de zero para NZ, pois o resul-

ó

tado do decremento NÃO foi ZERO.


C

Realmente, IP aponta agora para o ende-


reço 0106, onde estará a próxima instrução DEC Digite T [ENTER] e veja:

CX. Acabamos de ver um LOOP, ou seja, o pro-



grama volta para executar novamente um tre- AX=0000 BX=0FFE CX=0000 DX=0000

cho do programa já executado anteriormente. SP=FFEE BP=0000 SI=0000 DI=0000



DS=166F ES=166F SS=166F CS=166F



Executando a próxima instrução DEC CX, IP=010A NV UP EI PL NZ NA PO NC


o valor de CX será zero, pois 0001 menos 1 é 166F:010A 75F7 JNZ 0103

Cópia não autorizada. Reservados todos os direitos autorais.


-

○ ○ ○ ○ ○

133/75
Instituto Monitor

Cópia não
IP aponta autorizada.
para o endereço 010A Reservados
da pró- todos os
Verifique a direitos
alteração autorais.
na listagem. Vamos



xima instrução, que é JNZ 0103. executar.




SALTE se NÃO for ZERO para o ende- Digite:



reço 0103.


RIP [ENTER]


100 [ENTER]


Portanto, haverá o salto para o endereço


s.
R [ENTER]


0103, pois vemos a FLAG indicar NZ. Este
i


G [ENTER]
será o segundo LOOP deste programa.
a


r


o


Utilizando um microprocessador AMD
t


O programa seguirá assim até que o con-
u
K6 II – 500 MHz, levou aproximadamente 1


teúdo dos registradores BX e CX seja zero. a


segundo para aparecer a frase: Programa ter-


Quando isto ocorrer, a instrução JNZ 0103 s Utilizando um


minado normalmente.
o
it - SX 33 MHz, levou


será ignorada e a próxima instrução a ser exe-
microprocessador 80386


cutada será a INT 20. INT 20 é uma interrup- e

aproximadamente
ir 10 segundos para apare-

ção por software que executará um progra-
d este tempo varia de má-

cer a frase. Portanto,

ma da BIOS, finalizando o programa e vol-
tando ao prompt do DOS ou do DEBUG.Use

o s
quina para máquina. Mas podemos ajustar o
tempo que quisermos por tentativa e erro, dei-
s com FFFF e aumentando BX para

INT 20 para terminar seus programas no


xando o

CX
d

DEBUG.
um número hexadecimal maior que 0FFF.
o

t

Vamos executar este programa direta-


s

Experimentando BX=1FFF, a frase apa-


mente sem interrupções. o

d receu após 2 segundos. Com BX=2FFF a fra-


a

v se apareceu após 3 segundos.


Digite:
r

e

RIP [ENTER] s Para sair do DEBUG digite no prompt (si-


e

100 [ENTER] nal de menos com a barrinha piscando) Q


R

R [ENTER] . [ENTER].

a

G [ENTER]
d

a Vimos que no DEBUG você digita os


iz

mnemônicos e o software busca os códigos de


Aparecerá a frase:
r

o cada instrução montando assim seu progra-


t

Programa terminado normalmente


u ma objeto. Para finalizar esta parte, o pro-

- a

grama objeto do Programa 2 é:


o rápido! Depende do

ã PROGRAMA OBJETO

Mas foi muito


n

CS IP código HEX BINÁRIO


processador utilizado e dos valores de BX e

a
CX. Quanto imaiores forem os valores, maior

166F:0100 BB 10111011
p

166F:0101 FF 11111111
ó gasto para a contagem.

será o tempo 166F:0102 2F 00101111


C

166F:0103 B9 10111001

Vamos editar o programa e alterar somen- 166F:0104 FF 11111111



te o endereço 0103. 166F:0105 FF 11111111


166F:0106 49 00101001

166F:0107 75 01110101

Digite:

166F:0108 FD 11111101

166F:0109 4B 01011011
A0103 [ENTER]

166F:010A 75 01110101

MOV CX , FFFF [ENTER]


166F:010B F7 11110111

[ENTER]
Cópia não autorizada. Reservados todos os direitos autorais.
166F:010C CD 11001101

U100 [ENTER] 166F:010D 20 00100000



○ ○ ○ ○ ○

133/76
Instituto Monitor

Cópia não autorizada. Reservados todos os direitos autorais.


PROGRAMA FONTE
166F:0100 MOV BX,2FFF
166F:0103 MOV CX,FFFF
166F:0106 DEC CX
166F:0107 JNZ 0106
166F:0109 DEC BX
166F:010A JNZ 0103
166F:010C INT 20

PROGRAMA 3 - COMPARANDO is.


r a
Faremos um fluxograma para executar o seguinte:
uto
1) Carregar AX = 0023h a
os
it
2) Carregar BX = 0077h
3) Somar AX com BX e o resultado ficar em AX r e
4) Comparar AX com 0100h di
5) Se for igual carregar CX = FFFFh os
6) Se for diferente carregar CX = 0000h os
od
t
os Início
ad
r v
se AX = 0023H
e
. R
da
a BX = 0077H

riz
to
au AX = AX + BX

ão
n
ia
óp
CX = 0000H AX = 0100H?

C
CX = FFFFH

FIM

Cópia não autorizada. Reservados todos os direitos autorais.


Figura 29
○ ○ ○ ○ ○

133/77
Instituto Monitor

Cópia não autorizada. Reservados


Escrevendo o programa todos
fonte, consultando os direitos
a Tabela de Instru- autorais.
ções dos 80X86:
MOV  carrega registradores.
ADD  soma registradores.
CMP  compara registradores, se os conteúdos forem iguais, ativa
a FLAG de zero.
JMP  salta para endereço incondicionalmente.
is.
r a
to
Assim:

ENDEREÇO CÓDIGO au
COMENTÁRIOS
HEXADECIMAL HEXADECIMAL
MNEMÔMICOS
o s
MOV AX , 0023 Carrega AX com 0023h
MOV BX , 0077 Carrega BX come0077h
it
r
Soma Ax comiBX e resultado
ADD AX , BX d
osse o valor de AX é
fica em AX
Compara
CMP AX , 0100
s
0100h
o
JNZ XUXA
odse AXpara
Salta o endereço XUXA
for diferente de 0100h
t
o s
MOV CX , FFFF Carrega CX com FFFFh
JMP XAXA Salta para endereço XAXA
XUXA: d
aINT 20
MOV CX , 0000 Carrega CX com 0000h
XAXA:
r v Finaliza o programa

s e
e a técnica do LABEL, que em Inglês
Neste exemplo, utilizamos
significa rótulo. Aqui R
entendemos como ETIQUETA de MARCA-
ÇÃO ou simplesmente a. REFERÊNCIA.
a d
Quando nãoiz sabemos exatamente a partir de qual endereço se
r
o por um LABEL; uma referência para mais tarde ser
iniciará nosso programa, substituímos os endereços relativos a sal-
t
au por um número de endereço de memória.
tos (JUMP)
substituída

ã o
n No exemplo, o endereço XUXA não existe. XUXA é a referên-
ia cia de um endereço, o endereço da instrução MOV CX , 0000. XAXA

óp será substituído pelo endereço da instrução INT 20.

C Este tipo de técnica permite a você ter uma coletânea de pro-


gramas em ASSEMBLY, podendo ser utilizada em qualquer pro-
grama que se venha a fazer.

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/78
Cópia não autorizada. Reservados todos os direitos autorais.

Exercícios Propostos is.


r a
1 - Faça um fluxograma para que se execute o seguinte:
uto
a) Carregar o registrador AX com 1234h a
b) Carregar o registrador BX com 0234h os
c) Carregar o registrador CX com 0034h eit
r
d) Carregar o registrador DX com 0004h di
os
e) Subtrair um registrador do outro de modo que SE a FLAG de ZERO for ATIVADA
encerre o programa.
os
od
t
os
ad
r v
se
e
. R
da
a
riz
to
au
ão
n
ia
óp
C

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/79
Instituto Monitor

Cópia
2 -não autorizada.
Utilizando as instruções: Reservados todos os direitos autorais.

MOV registrador, número


SUB registrador, registrador
JZ endereço

Escreva o programa fonte para a questão 1.

is.
r a
uto
a
os
eit
r
di
os
os
od
t
os
ad
r v
se
e
. R
da
a
riz
to
au
ão
n
ia
óp
C

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/80
Cópia não autorizada. Reservados todos os direitos autorais.
lição

Dispositivos de I/O
12 (Entrada e Saída) i s.
r a
Introdução 1. Canais de I/O to


u


a


s


Vimos que um microcomputador só preci- Quando queremos assistir a um programa


sa de CPU, memória ROM e memória RAM. En-
továriosnocanais,
na TV, colocamos a televisão canal deseja-


i


tretanto, queremos que ele atue sobre disposi- do e pronto. A TV tem
e mas so-


r em cada canal.
di

tivos para receber ou enviar dados. Os micro- mente uma emissora

processadores só sabem lidar com números bi-

nários. Os programas estão nas memórias e os ○


o s o computador seja a sua TV


Imagine que
dispositivos externos são periféricos de I/O. s
e cada periférico seja uma emissora. Se o com-

putadoro quiser trocar informações com o


d ele tem que colocar os barramentos


o

Você lembra dos pinos RD, WR, MEM e mouse,


no tcanal do mouse. Se quiser acessar a im-

IO? Com eles temos as seguintes combinações:


s

opressora, tem que colocar os barramentos no


d

canal da impressora.
RD MEM Leitura da memória
a

v

WR MEM Escrita na memória


r

RD IO Leitura de periférico e Cada periférico precisa ter o seu próprio


s

WR IO Escrita no periférico
e canal de comunicação, senão ocorre o confli-

R to. A CPU Z80 dispõe de 256 canais de I/O (do


.

O processador fica o tempo todo nos pro- canal 0 até o 255). Ela indica o número do ca-
a

d

gramas fazendo somente estas quatro ativida- nal através das 8 primeiras linhas de endere-
a

des. Já vimos como ele endereça z a memória, lê çamento (A0 até A7) e ativa o pino IO.

i
or

e escreve seus dados. Mas agora, como fazer


t

isto com periféricos? Nas CPUs 80X86 temos 16 linhas de ende-


u

a reços para I/O (A0 - A15) 64 k dispositivos. O



o


Anotações e Dicas


ia

óp

C













Cópia não autorizada. Reservados todos os direitos autorais.




○ ○ ○ ○ ○

133/81
Instituto Monitor

Cópia nãoIBM-PC
autorizada. Reservados
faz uso apenas todos
dos 10 primeiros osaté
bits (A0 direitos
A9) de autorais.
endereçamento. Os bits de A10 até A15 são ignorados e o bit A9
indica se o periférico está on-board ou via slot de expansão (conector
de barramentos). Portanto, podemos ter 512 dispositivos em 512
canais de I/O.

A figura 30 mostra como as linhas de endereçamento formam o


número do canal de I/O desejado.
is.
r a
Bits de Endereço
uto
a
19 18 17 16 15 14 13 12 11 10 9
o s
8 7 6 5 4 3 2 1 0

e it
ir Espaço de I/O com
d 512 endereços
os Indica se o endereço

os é para a placa do
sistema ou para os slots de

od expansão
t (A9 = 0) - placa do sistema

o s (A9 = 1) - slots de expansão

a d Gerado pelas

r v instruções IN e OUT,
mas ignorado no

s e caso do PC XT
e
. R Não são usados pelas

da instruções IN e OUT

iza
r
Instrução
o IN
A9 = 0 A9 = 1

t Placa do Sistema Slots de Expansão

au OUT Placa do Sistema e Slots de Expansão

ão Figura 30
n Antes de tudo, o periférico é um hardware, mas para funcionar
ia com a CPU é preciso um programa (software) de controle. Este
óp software ensina o computador como usar o periférico. Estes pro-
C gramas geralmente são pequenos e chamados de driver, funcio-
nando como sub-rotinas e ficando alocados em endereços reserva-
dos da memória RAM; são chamados (CALL) somente quando ne-
cessário.

O processo de ligar um periférico à CPU chama-se interfa-


ceamento. Além do hardware do periférico, outro circuito chama-
do interface deve ser desenvolvido.
Cópia não autorizada. Reservados todos os direitos autorais.
○ ○ ○ ○ ○

133/82
Instituto Monitor

Cópia não autorizada. Reservados


A figura 31 mostra todos
um exemplo para os odireitos
interfacear IBM-PC autorais.
utilizando seus barramentos que estão disponíveis através dos slots
(conectores) de expansão.

GND 1 I/O CH CK
RESET DRV 2 D7

s.
+5V 3 D6
IRQ9 4 D5
ai
r
to
-5V 5 D4
DRQ2
-12V
6
7
D3
D2 au
0WS 8 D1
os
+12V 9 D0
eit
GND I/O CH RDY r
di
10
MEMW 11 AEN
MEMR 12 A19 s
IOW A18 o
IOR
13
14 o
A17
s
dA16

(component side)
DACK3
DRQ3
15
o
t A15
DACK1
os 16
17
DRQ1
a d
18
A14
A13
REFRESH
r v 19 A12
CLOCK
se 20 A11
IRQ7e 21 A10
. R
IRQ6 22 A9

d aIRQ5 23 A8

za IRQ4 24 A7

ori IRQ3 25 A6
t DACK2 26 A5

au T/C 27 A4

ão ALE
+5 V
28 A3

n 29 A2

ia OSC 30 A1

óp
GND 31 A0

C
Figura 31

A figura mostra um slot ISA de 8-bits encontrado em algumas


placas-mãe para INTEL 80486. Deste slot, para criar uma inter-
face, precisamos:

• D0 até D7, que é o barramento de dados.


Cópia não autorizada. Reservados todos os direitos autorais.
○ ○ ○ ○ ○

133/83
Instituto Monitor

Cópia não• autorizada.


A0 até A9, que é o Reservados todos
barramento de endereço os direitos autorais.
de I/O.
• +5 V para alimentar os CIs da interface.
• GND, que é a referência 0 volt.
• IORD sinal da CPU, indicando que fará leitura no dispositivo
de I/O.

s.
• IOWR sinal da CPU, indicando que fará uma escrita no
dispositivo de I/O.
ai
r
to
• ALE (AEN) sinal ADDRESS LATCH ENABLE, utilizado para
fixar um endereço de I/O, desabilitando as demais linhas.
a u
O circuito lógico seria parecido com este: s
74LC32 ito
74LS04
Seletor de canais
ire
A0
IORD
d
A1
os
D0
A2
A3
os D1
D3
A4
o d D4
A5 t 74LS244 D5
D6
A6 74HC38
o s D7
A7
A8 a d 74LS373
A9
r v
AEN
se D0
D1
IORD
74LS08
e D3
IOWR
. R
74LS32
D4
D5
D6
Direção da
Habilitado D7

a
iz
D0
D1
D3
o r
D4
D5 t
au
D6
D7

ã o 74LS245 74LS32
n
ia 74LS04

óp
C Figura 32

Do lado esquerdo da figura vemos os sinais do slot e do lado


direito os sinais do periférico.

Explicando o circuito lógico, este circuito prevê o acesso a um


dos 8 endereços disponíveis. Note as chaves nas linhas A0, A1 e A2.
Existem 8 combinações possíveis entre elas. Cada combinação gera
Cópia nãoumautorizada.
número de canal de I/O diferente. A saída
Reservados da porta
todos osNAND de 8
direitos autorais.
○ ○ ○ ○ ○

133/84
Instituto Monitor

Cópia nãoentradas
autorizada.
fica o tempoReservados todos
todo em nível lógico 1, indo aos direitos
nível lógico 0 autorais.
quando todas as suas entradas estiverem em nível lógico 1. Isto só
ocorre quando no barramento de endereços temos o número do
canal selecionado.

Assim, os endereços disponíveis são:

AEN A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
is.
1 1 1 1 1 1 0 0 r a
Para que a porta NAND possa ir a nível lógico Podem variar de t
o
ZERO estas linhas obrigatoriamente têm que estar
Por estarem
ligadas a a
000 até 111 u
em nível lógico 1. INVERSORES s
8 combinações
o
Convertendo para hexadecimal, temos os números edos it ende-
r
reços de I/O possíveis:
di
A2 A1 A0 CANAL os
0 0 0 3E0h s
0 0 1 d
3E1ho
0 1 0 o
t3E2h
0 1 1 s 3E3h
1 0 0 do 3E4h
1 0 v1a 3E5h
1 1 er 0 3E6h
1
e1 s 1 3E7h

. R das chaves, somente um canal será re-


Dependendo daaposição
conhecido.
a d
r iz é um direcionador tri-state de fluxo de dados (8
o
O CI 74LS245
bits) entret a CPU e o periférico. O CI 74LS373 é um LATCH para
fixar os audados enviados da CPU para o periférico. O LATCH so-
mente
ã o é ativado quando a porta NAND reconhecer o canal e for a
n
nível lógico 0 e a CPU enviar os sinais IOW de escrita no periférico
a de I/O. O CI 74LS244 é um tri-state para permitir a entrada de
i dados do periférico para a CPU. O tri-state somente é ativado quan-
p
ó do a porta NAND reconhecer o canal e for a nível lógico 0 e a CPU
C enviar os sinais IOR de leitura do periférico de I/O.

Este circuito pode ser expandido para 16 bits, bastando man-


ter a porta NAND e acrescentando em paralelo mais um CI de cada.

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/85
Instituto Monitor

Cópia
Modo não
Operante: autorizada. Reservados
sui todos os direitos
em seu interior. autorais.
É a placa controladora



de impressora ou porta de comunicação pa-



Quando o software pede o acesso a um ralela LPT1. Ela disponibiliza na parte tra-


periférico: seira do micro um conector DB-25 pinos fê-



mea com a seguinte configuração:


• a CPU ativa a linha I/O;



• ativa a linha AEN, indicando que no bar-


s.


ramento de endereços terá o número de um
i


canal de I/O;
a


r


to


• coloca no barramento de endereço o nú-


mero do canal de I/O; u


a



• ativa a linha RD ou WR, dependendo da ins-
s


trução do software. o
it



e

As instruções de software que acessam r
di Figura 34


periféricos são:

os

PINO 2 ao PINO 9 - Na seqüência, são D0 até


• “IN” para entrada de dados do periférico


s

D7, saídas de dados da CPU (8 bits) através


para a CPU.
o

d

do canal de I/O 378h nos micros modernos.


o

• “OUT” para saída de dados da CPU para o


t
Para micros antigos pode ser os canais 278h

periférico.

s ou 3BCh.

o

d D0 é o bit menos significativo (vale 1 em


Montado em uma placa de circuito im-


a

presso e seguindo os padrões de interface v decimal).


para o IBM-PC, ficaríamos com algo assim:er


D7 é o bit mais significativo (vale 128 em


s

e decimal).

Lâmina de apoio ao
R

Placa de Circuito
Gabinete
. PINOS de 10 a 13 e PINO 15 - Pertencem ao

Impresso
a

d canal de I/O 379h e a CPU os utiliza para re-


a

ceber dados do periférico.


z

ri

S7 é o bit mais significativo, mas, por es-


o

t

tar barrado, a CPU entende seu comple-


u

a

Conector do
mento. Exemplo: se S7 for conectado ao

o GND, a CPU entenderá S7 como nível ló-


Periférico
ã

gico 1 e vice-versa. Na leitura do canal


n

379 são ignorados os bits S2, S1 e S0 (os


iaEncaixe padrão para

p três bits menos significativos).


ó

SLOT
C

PINO 1, PINO 14, PINO 16 e PINO 17 - Na


Figura 33

seqüência, são os 4 bits menos significativos


2. Porta de Comunicação do canal 37Ah. O canal 37Ah é bi-direcional,



Paralela do IBM-PC Compatível ou seja, os dados podem entrar ou sair por



ele. É óbvio que se deve “avisar” a este canal


com antecedência o que se deseja fazer (via


Para podermos treinar microprocessado-


res, continuamos a utilizar o IBM-PC. Em vez software).



de construir uma placa de interface, vamos


Cópia não autorizada. PINOS 18 a 25


os- direitos
São todos conectados ao
que o computadorReservados todos autorais.

utilizar a interface já pos-


GND.

○ ○ ○ ○ ○

133/86
Instituto Monitor

Cópia nãoTabela
autorizada.
dos Canais daReservados
LPT1 todos os direitos autorais.
Porta BIT Direção Pinos Nome
7 OUT 9 D7
3 6 OUT 8 D6
7 5 OUT 7 D5
8 4 OUT 6 D4
h 3
2
OUT
OUT
5
4
D3
D2 is.
1 OUT 3 D1 r a
0 OUT 2 D0
uto
3
7 IN 11(L) BUSY a
7
6 IN 10 *ACKNLG
os
it
5 IN 12 PAPER OUT
9
h
4 IN 13 SELECT
r e
di
3 IN 15 *ERROR
4 - Hab IRQ 7 -
3
7
3 IN/OUT 17(L) os *SLCT IN
A
2 IN/OUT 16
os *INIT
h
1
0
IN/OUT
IN/OUT
14(L)
1(L) od *AUTO FEED
* STROBE
t
(L) Indica que o bit é invertido
os
3. Periféricos Simples ad
r v
e saída de dados da CPU.
• Acender LEDs para visualizar
s
e dados à CPU.
• Apertar botões para enviar
. R
Damos a seguiraum periférico didático, fácil de montar, barato
d
e que possibilitaaexpandir sua imaginação para “vôos” mais altos.
riz
to
1KΩ

1KΩ

1KΩ

1KΩ

1KΩ

1KΩ

1KΩ

1KΩ

au
ão
n LEDs 5mm
ia Vermelhos D7 D6 D5 D4 D3 D2 D1 D0

óp
C 13 12 11 10 9 8 7 6 5 4 3 2 1

25 24 23 22 21 20 19 18 17 16 15 14

DB-25 Fêmea
D7 D6 D5 D4 D3

Cópia não autorizada. Reservados


Chaves de Pressão Tipo A todosFigura
os35direitos autorais.
○ ○ ○ ○ ○

133/87
Instituto Monitor

Cópia não autorizada.


Este periférico Reservados
trabalha como qualquer ou- todos os direitos
Todos os periféricos autorais.
de saída:



tro, recebendo da CPU dados que no conector



aparecem como níveis de tensão +5 volts e 0 volt, • Recebem os sinais digitais vindos da CPU


respectivamente N.L. = 1 e N.L. = 0. de acordo com o software de controle.




• Convertem estes sinais digitais para


A cada bit igual a 1 na saída acenderá um
sinais analógicos, utilizando os


LED. A cada bit igual a 0 na saída o LED fi-


s.
conversores D/A (Digital/Analógico).


cará apagado.
i


• Processam estes sinais, tranformando em
a


r


Com relação às entradas canal 379h in- grandezas físicas.
to



ternamente estão conectadas a N.L. = 1, ou
u


seja, +5 volts via resistor de PULL-UP. Ao 4. Testes a



acionarmos qualquer uma das chaves de s


o
it
Testando o nosso periférico: o DEBUG


pressão NA (normalmente aberta), colocamos


N.L. = 0 no respectivo pino. e
tem chaves de acesso direto aos canais de I/


r
di

O. A chave “I” seguida do número do canal

de I/O retorna na tela um número hexade-

Se você montar este periférico e ligar ao
os

computador via cabo paralelo (ou cabo para cimal que corresponde ao que foi lido neste

s

chaveador de impressoras), nada acontece a canal. A chave “O” seguida do número do


o

canal de I/O vírgula um número hexadecimal


d

menos que exista um software para contro-


o

envia este número ao periférico ligado nes-


lar este periférico. Isto acontece com todos
t

te canal.
os dispositivos ligados ao computador.
s

o

A tecnologia tem criado circuitos que, tra- ad


A partir do prompt do MS-DEBUG digite:


balhando com estes dados binários no formato v


r

de tensão, nos proporcionam: e O378, 0 [ENTER]


s

e

R Todos os LEDs devem se apagar, pois 0h


• gravar e reproduzir sons;


.

a preto e corresponde a 00000000 , ou seja, todos os pi-


2
d
• visualizar imagens coloridas e em

nos de saída estarão em N.L. = 0. Digite:


a

branco na tela de um monitor;


iz binários

r

• transformar imagens em números O378,1 [ENTER]


omagnética;

t

e armazená-los em mídia
au computadores

O primeiro LED deve se acender, pois 1h


• comunicar-se com outros


o corresponde a 00000001 , ou seja, somente o


por linha telefônica.


ã
2

pino D0 estará com +5 volts. Digite:


n

ia os periféricos de entrada:
Enfim, todos

O378,2 [ENTER]
p

ó grandezas físicas, convertendo-


C
• Processam

O segundo LED deve se acender, pois 2h


as em sinais elétricos analógicos.


corresponde a 000000102, ou seja, somente o



• Convertem estes sinais elétricos em sinais pino D1 estará com +5 volts. Digite:

digitais, utilizando os conversores A/D



(Analógico/ Digital). O378,4 [ENTER]



• Comunicam com a CPU, que reconhece


O terceiro LED deve se acender, pois 4h


estes sinais digitais e, de acordo com o


corresponde a 000001002, ou seja, somente o


Cópia manipulam
software,não estes DADOS.
autorizada. Reservados
pino D2 estaráos
todos comdireitos autorais.

+5 volts. Digite:

○ ○ ○ ○ ○

133/88
Instituto Monitor

Cópia
O378,8 não
[ENTER] autorizada. Reservados todos
Testado o os
canaldireitos autorais.
de saída 378h, vamos tes-



tar o canal de entrada 379h.



O quarto LED deve se acender, pois 8h


corresponde a 000010002, ou seja, somente o


Lembre-se que pelo hardware de nosso


pino D3 estará com +5 volts. Digite: periférico, ao pressionarmos a chave, colo-



camos N.L. = 0 no pino correspondente.


O378,10 [ENTER]


s.


i


Com TODAS as chaves NA soltas, digite:
O quinto LED deve se acender, pois 10h
a


I379 [ENTER].
r


corresponde a 000100002, ou seja, somente o
to na tela.



pino D4 estará com +5 volts. Digite:
u


Anote o número que aparecerá
a e digite: I379


Aperte a primeira chave


O378,20 [ENTER] s


[ENTER].
to


i


re que aparecerá na tela.
O sexto LED deve se acender, pois 20h


i
Anote o número


corresponde a 00100000 , ou seja, somente o
d chave e digite: I379 [ENTER].

2
Aperte a segunda

pino D5 estará com +5 volts. Digite: ○

o s
s
Anote o número que aparecerá na tela.

O378,40 [ENTER]
Aperteoa terceira chave e digite: I379 [ENTER].

d

o

O sétimo LED deve se acender, pois 40h


t Anote o número que aparecerá na tela.

corresponde a 01000000 , ou seja, somente o


s

o
2
pino D6 estará com +5 volts. Digite: Aperte a quarta chave e digite: I379 [ENTER].

d

a

v Anote o número que aparecerá na tela.


O378,80 [ENTER]
r

se
Aperte a quinta chave e digite: I379 [ENTER].

O oitavo LED deve se acender, poise80h


R o Anote o número que aparecerá na tela e


corresponde a 10000000 , ou seja, somente


.

2
preencha a tabela abaixo:
pino D7 estará com +5 volts. a

d

a

iz

r

o

t

Número na
u
CHAVE PRESSIONADA CONVERSÃO PARA BINÁRIO

a

tela em

o Hexadecimal

ã D7 D6 D5 D4 D3 D7 D6 D5 D4 D3 D2 D1 D0

n

i
NENHUMAa

óp 1

CHAVE X
C


CHAVE 2 X


CHAVE 3 X


CHAVE 4 X

X

CHAVE 5

Cópia não autorizada. Reservados todos os direitos autorais.




○ ○ ○ ○ ○

133/89
Instituto Monitor

Cópia não autorizada.


Lembre-se que a Reservados
entrada D7 é lida detodos os direitos
modo inverso. A corres- autorais.
pondente chave, quando solta, corresponde à entrada de N.L. = 0 e,
pressionada, corresponde à entrada de N.L. = 1. Estes números
podem variar de computador para computador.

O exemplo a seguir foi realizado em um computador nas se-


guintes condições:
• nenhuma chave pressionada retornou 7E;
is.
• chave presa ao pino D4 pressionada retornou 6E. r a
uto
Nossa tabela ficaria:
a
o s
CHAVE PRESSIONADA Número na CONVERSÃO eit PARA BINÁRIO
tela em
Hexadecimal dir
D7 D6 D5 D4 D3 D7 D6
o s D5 D4 D3 D2 D1 D0

NENHUMA 7E
o s
d
to
CHAVE 1 X

CHAVE 2 X 6E s
d o
CHAVE 3 X
va
CHAVE 4 X e r
es
CHAVE 5 X
. R
da
za com essas duas verificações, já podemos concluir
Desta tabela,
i
que:
tor
• o pinouD7 é realmente invertido na leitura da porta;
a
o
• D0, D1 e D2 têm seus valores fixados pelo fabricante que, neste

n• ãas 5 chaves nos permitem entrar com 32 combinações entre


caso, corresponde a 0, 1 e 1, respectivamente;

ia elas (2 combinações);
óp • podemos combinar duas ou mais chaves pressionadas que
5

C
saberemos o valor lido pela CPU.

De posse dessas informações já podemos criar softwares para


controlar nosso periférico.

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/90
Cópia não autorizada. Reservados todos os direitos autorais.

Exercícios Propostos i s.
r a
1 - Por que a CPU tem seus canais de I/O numerados?
u to
( ) a) Porque se não, dois ou mais periféricos tentariam se comunicar com a CPU ao
a
mesmo tempo.
s
( ) b) Para evitar a memória.
ito
re
( ) c) Porque não são soletrados.
( ) d) Para provocar conflito.
d i
( ) e) Porque os periféricos são numerados.
o s
2 - O que é conflito?
o s
d
............................................................................................................................................
to
............................................................................................................................................
s
............................................................................................................................................
o
d
............................................................................................................................................
a
v
............................................................................................................................................
r
e
............................................................................................................................................
s
e
............................................................................................................................................
R
. produzidos pela CPU quando acessa um canal de I/O?
3 - Quais são os sinais elétricos a
dRD ou WR e DATA BUS na escrita.
( ) a) ADDRESS BUS, IO, a
( ) b) DATA BUS, MEM,
r iz IO, RD e DATA BUS na leitura.
( ) c) ADDRESS BUS,
t o MEM, RD ou WR e DATA BUS na escrita.
( ) d) ADDRESS u BUS, IO, MEM e WR.
( ) e) DATA BUS, a ADDRESS BUS, WR, RD, IO, MEM.
o
4 - Qual énaãimportância dos circuitos tri-state em um computador?
ia
( ) a) Permitem
( ) b)pNenhuma.
que os barramentos sejam utilizados somente por um dispositivo a cada vez.

( )ó c) Permitem saídas analógicas.


C
( ) d) Permitem três saídas por vez.
( ) e) Periféricos com três estados.

5 - No periférico didático proposto na lição, qual canal de I/O ele utiliza?


( ) a) 378h para receber dados da CPU e 379h para enviar dados à CPU.
( ) b) O mesmo do mouse.
( ) c) O mesmo do teclado.
( ) d)não
Cópia 278h para receber dados eReservados
autorizada. 279h para enviar dados
todosà CPU.os direitos autorais.
( ) e) Nenhum das alternativas anteriores.
○ ○ ○ ○ ○

133/91
Cópia não autorizada. Reservados todos os direitos autorais.
lição

Programas para
13 Periférico Didático is.
r a
Introdução
u to
a
Como vimos, uma sub-rotina é um programa que só é chamado
s
quando necessário. Ela fica em algum lugar na memória disponível.
ito
Toda sub-rotina é chamada pela instrução CALLirseguida do
e
número do endereço de memória onde ela começa. Termina d com a
instrução RET, para indicar à CPU a volta ao endereço
os do programa
que a chamou.
o s
d
to
1. Sub-Rotinas
A figura 36 exemplifica o processo: o s
a d
r v
XXXXH MOV AH, 09 se MOV BX, FF
e
XXXXH
PC →
0155H
MOV DX, 378
CALL 0200
. R DEC BX
CMP BX, 00
0158H ADD AX, DX
d a JNZ 0203
CMP AX, FF
a RET
JZ 0300
riz
t o
au
ã o SP → FFFFH

n TRECHO FINAL DA

ia PC 0155H MEMÓRIA

óp SP FFFFH

C Figura 36 - SUB-ROTINA - parte 1 - Antes da CHAMADA

O programa vem sendo executado instrução por instrução.

PC (Program Counter) é o contador de endereços do programa.


Nos 80X86 ele é uma composição dos registradores CS e IP, apon-
tando para o endereço da próxima instrução 0155H.
Cópia não autorizada. Reservados todos os direitos autorais.
○ ○ ○ ○ ○

133/93
Instituto Monitor

Cópia não autorizada. Reservados


SP (Stack Pointer) todos
aponta para o final os direitos
livre da memória RAM. autorais.

XXXXH MOV AH, 09 0200H MOV BX, FF


MOV DX, 378 DEC BX
PC → 0155H CALL 0200 CMP BX, 00

s.
0158H ADD AX, DX JNZ 0203
CMP AX, FF
JZ 0300
RET
ai
r
uto
a
SP → FFFFH
os
TRECHO
eit FINAL DA
PC 0158H
ir MEMÓRIA

SP FFFFH d
os
Figura 37 - SUB-ROTINA - parte 2 - Durante instrução CALL

os
o d PC (Program Counter)
Ao encontrar a instrução CALL endereço:
t
Pointer) continua o mesmo. o s
está apontando para o endereço da próxima instrução 0158H. SP (Stack

a d
A instrução CALL tem que v
e r
tro endereço, mas precisa “lembrar”
desviar o fluxo do programa para ou-
qual o endereço de retorno ao
e s
programa. Para isso, a instrução CALL, ao ser executada, copia o con-
teúdo de PC (Program R Counter) no final da memória RAM, fazendo
com que o SP (Stack a.Pointer) aponte para o endereço anterior.
ad
riz
to
XXXXH MOVa
u
AH, 09 PC → 0200H MOV BX, FF
o
MOV DX, 378 DEC BX
0155H ãCALL 0200
0203H

0158Hn ADD AX, DX


CMP BX, 00

ia JNZ 0203

p
CMP AX, FF RET

ó JZ 0300

C
SP → FFFEH
SP → FFFFH 0158H

TRECHO FINAL DA
PC 0200H MEMÓRIA

SP FFFEH

Cópia não autorizada. Reservados


Figura 38 - SUB-ROTINA todos
- parte 3 - Apó executar os
CALL direitos autorais.
○ ○ ○ ○ ○

133/94
Instituto Monitor

Cópia não autorizada. Reservados


Assim, PC (Program todos
Counter) aponta os odireitos
agora para endereço autorais.
0200H, onde está a próxima instrução a ser executada. SP (Stack
Pointer) aponta para FFFEH, endereço anterior ao que estava.

XXXXH MOV AH, 09 PC → 0200H MOV BX, FF

s.
MOV DX, 378 0203H DEC BX
0155H CALL 0200 CMP BX, 00
ai
0158H ADD AX, DX JNZ 0203
r
to
CMP AX, FF RET
JZ 0300
au
os
it 0158H
SP → FFFEH
e
r
SP → FFFFH

TRECHO di FINAL DA
0203H s MEMÓRIA
PC
o
SP
s
FFFEH

o SUB-ROTINA
d
to
Figura 39 - SUB-ROTINA - parte 4 - Executando

o s
O programa segue agora pela sub-rotina. PC (Program Counter)
aponta para o endereço da próxima a d instrução, 0203H. SP (Stack
Pointer) não se altera.
r v
e
es
. R
XXXXH MOV AH, 09
da 0200H MOV BX, FF
MOV DX, 378
a DEC BX
0155H CALL 0200
ADD AX, DX r
iz CMP BX, 00
0158H
CMP AX, to PC → 02??H
FF
JNZ 0203
RET

a u
JZ 0300

o
nã SP → FFFEH

ia SP → FFFFH 0158H

óp TRECHO FINAL DA
C PC 0158H MEMÓRIA

SP FFFFH

Figura 40 - SUB-ROTINA - parte 5 - Executando RET

Ao encontrar a instrução RET (Return), o fluxo do programa


Cópia nãodeve
autorizada. Reservados todos os direitos autorais.
voltar a partir do ponto em que saiu. A instrução RET, ao ser
○ ○ ○ ○ ○

133/95
Instituto Monitor

Cópia nãoexecutada,
autorizada. Reservados
retira do final todos
da memória o antigo os
valor de PCdireitos
(Program autorais.
Counter), devolvendo-o ao registrador PC (Program Counter).

PC (Program Counter) aponta para o endereço da próxima ins-


trução, 0158H. SP (Stack Pointer) volta a apontar para o final da
memória, FFFFH.

is.
r a
to
XXXXH MOV AH, 09 0200H MOV BX, FF

0155H
MOV DX, 378
CALL 0200
DEC BX
CMP BX, 00
au
PC → 0158H ADD AX, DX JNZ 0203
os
it
015AH CMP AX, FF RET

e
JZ 0300
r
di
os
SP → FFFFH 0158H

o s
TRECHO
od015AH FINAL DA
MEMÓRIA
PC
t
o s SP
FFFFH

Figura 41 - SUB-ROTINA - parted


v a 6 - Continuando o PROGRAMA

O programa volta a correre r normalmente após ter sido desvia-


do. PC (Program Counter) esaponta para o endereço da próxima ins-
R aponta para o final da memória.
trução. SP (Stack Pointer)
.
a
2. PUSH e POPdSalvando Conteúdos na Pilha (Stack)
iza
o
Existe umar instrução muito útil que usa a pilha através do SP
t
(Stack Pointer), para salvar momentaneamente o conteúdo de um
au Como temos apenas quatro registradores e são apenas
registrador.
elesoque operam as instruções, às vezes precisamos de mais alguns;
ndoãe depois
como isso não é possível, podemos salvar um determinado conteú-

ia recuperá-lo.

óp A instrução PUSH registrador coloca o conteúdo do registrador


C mencionado na pilha (stack). A instrução POP registrador retira do
topo da pilha o conteúdo e coloca no registrador mencionado.

Cuidado ao utilizar vários PUSH no mesmo programa ou PUSH


e CALL juntos, pois ambos colocam seus dados na pilha. Assim, o
primeiro POP deve ser referente ao último PUSH executado.

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/96
Instituto Monitor

Cópia1:não
Exemplo autorizada. Reservados todos
Instruções os direitos autorais.
utilizadas:




PUSH AX MOV registrador , conteúdo


PUSH BX


CALL endereço


PUSH CX


RET



Na pilha (stack) teremos no topo o valor


DEC registrador


s.
de CX. Ao recuperar os dados, o primeiro


JNZ endereço
i


POP deve ser POP CX, depois POP BX e por
a


fim POP AX. Os POP seguem a ordem inver- OUT DX, AX r


to


sa dos PUSH.


u


Fluxograma
a


Exemplo 2:
s



o
it


INÍCIO A SUB-ROTINA
PUSH AX


e

PUSH BX r
di

MOV DX, 378 MOV AX, 10 MOV BX, 3FFF


CALL 0200

os


MOV AX, 00 OUT DX, AX MOV CX, 3FFF
Na pilha (stack) teremos no topo o valor
s

o

de PC (Program Counter) devido ao CALL. OUT DX, AX


CALL
DEC CX
d

SUB-ROTINA
Não podemos executar nenhum POP antes de
o

t

executar o RET, caso contrário os dados se- CALL NÃO


MOV AX, 20
s SUB-ROTINA CX = 0 ?

guirão para registradores errados. Assim:


o

RET, depois um POP BX e por fim um POP d


a
MOV AX, 01 OUT DX, AX

AX.
v DEC BX

r

3. Saída de Dados em Canal de I/O se


OUT DX, AX CALL

SUB-ROTINA
NÃO

e BX = 0 ?

R CALL

MOV AX, 40
Para enviar dados a um canal de.I/O uti- SUB-ROTINA SIM

lizamos a instrução OUT DX, AX, a


RET
d que signi-

MOV AX, 02 OUT DX, AX


fica “saia no canal de I/O cujoanúmero está

iz do regis-

r
no registrador DX com o conteúdo

OUT DX, AX CALL


o

SUB-ROTINA
trador AX”.
t

aude programar a ins-


CALL

MOV AX, 80
Significa que antes SUB-ROTINA

o devemos carregar DX

trução OUT DX, AX


ã

com o endereçondo canal de I/O e carregar


MOV AX, 04 OUT DX, AX

AX com o que ia se deseja enviar.


CALL

óp

OUT DX, AX
SUB-ROTINA

C

Exemplo: CALL

INT 20
SUB-ROTINA

MOV DX, número do canal de I/O (em hexa-



decimal) MOV AX, 08



MOV AX, valor desejado (em hexadecimal)


PROGRAMA 1

OUT DX, AX
ACENDIMENTO DOS LEDs

OUT DX, AX VAI-VEM



CALL
PROGRAMA 1 - Acender os LEDs na se-

SUB-ROTINA

qüência
Cópiaemnão
vai-vem.
autorizada. Reservados todos os direitos autorais.

A Figura 42

○ ○ ○ ○ ○

133/97
Instituto Monitor

Cópia Fonte
Programa não autorizada. Reservados todos
Programa 2 os direitos autorais.




Este programa foi criado no MS-DEBUG


Ao pressionar um botão, os LEDs vão


a partir do endereço 0100H para a parte prin- acendendo na seqüência vai-vem. O botão es-



cipal e 0200H para a sub-rotina. colhido é o que está ligado ao pino 13 do



conector DB-25 fêmea. Ele equivale ao bit D4.



PROGRAMA PRINCIPAL (endereço IP = 0100H)
s.


A leitura da porta paralela (LPT1) canal
i


166F:0100 BA7803 MOV DX,0378
a
de I/O 379H retorna 7EH quando todas as cha-


r


166F:0103 B80000 MOV AX,0000 ves estão soltas. Retorna 6EH quando a chave
to


166F:0106 EF OUT DX,AX


em questão é pressionada.
u


166F:0107 E8F600 CALL 0200
a



166F:010A B80100 MOV AX,0001
s
Estas são as informações de hardware;


166F:010D EF OUT DX,AX o
it


agora já podemos fazer o software. Utilizare-


166F:010E E8EF00 CALL 0200
e
mos a técnica das sub-rotinas, desta forma


r
di
166F:0111 B80200 MOV AX,0002


nosso programa principal fica mais flexível.

166F:0114 EF OUT DX,AX

os

166F:0115 E8E800 CALL 0200 ○

• Programa Principal a partir do endereço


166F:0118 B80400 MOV AX,0004
s

0100H.
o

166F:011B EF OUT DX,AX


d

• Sub-Rotina 1 a partir do endereço 0200H.


o

166F:011C E8E100 CALL 0200


• tSub-Rotina 2 a partir do endereço 0250H.

166F:011F B80800 MOV AX,0008


s

166F:0122 EF OUT DX,AX


o

d

166F:0123 E8DA00 CALL 0200 4. Entrada de Dados em Canal de I/O


a

166F:0126 B81000 MOV v


AX,0010

r

166F:0129 EF OUT
e
DX,AX Para receber dado de um canal de I/O uti-

166F:012A E8D300 CALL s


0200

e lizamos a instrução IN AX, DX, que significa


166F:012D B82000 MOV R


AX,0020 “leia o canal de I/O cujo número está no re-

.

166F:0130 EF OUT DX,AX


a gistrador DX e coloque o conteúdo no regis-

166F:0131 E8CC00 CALL d 0200


trador AX”.
a

iz
166F:0134 B84000 MOV AX,0040

r

166F:0137 EF OUT DX,AX Significa que antes de programar a ins-


o

166F:0138 E8C500 t
CALL 0200

trução IN AX, DX devemos carregar DX com


au

166F:013B B88000 MOV AX,0080 o endereço do canal de I/O.



166F:013E EF
o OUT DX,AX

166F:013F E8BE00ã CALL 0200


Exemplo:
n

166F:0142 CD20 INT 20


ia MOV DX, número do canal de I/O (em


óp

SUB-ROTINA (endereço IP = 0200H) hexadecimal)


C

IN AX, DX

166F:0200 BBFF3F MOV BX,3FFF


166F:0203 B9FFFF MOV CX,FFFF


Instruções utilizadas:

166F:0206 49 DEC CX

MOV registrador , conteúdo


166F:0207 75FD JNZ 0206


166F:0209 4B DEC BX CALL endereço



166F:020A 75F7 JNZ 0203


RET

166F:020C C3 RET

-Cópia não autorizada. Reservados todos os direitos autorais.




○ ○ ○ ○ ○

133/98
Instituto Monitor

Cópia nãoDEC
autorizada.
registrador Reservados todos os direitos autorais.
JNZ endereço
OUT DX, AX
IN AX, DX
CMP registrador, conteúdo
PUSH registrador
is.
POP registrador r a
Fluxograma: uto
a
os
INÍCIO A SUB - 1

eit SUB - 2

r
MOV AX, 00 MOV AX, 10 PUSH AX di MOV DX, 378

os
CALL SUB - 1 CALL SUB - 1 s
MOV DX, 379
o
OUT DX, AX

od
MOV AX, 01 MOV AX, 20 tIN AX, DX MOV BX, 3FFF

os
CALL SUB - 1 CALL SUB - 1
ad NÃO MOV CX, FFFF

r v AX = 6E

e
es
SIM
MOV AX, 02 MOV AX, 40 DEC CX

. R POP AX

CALL SUB - 1
da
CALL SUB - 1 NÃO
CX = O ?

za
CALL SUB - 2

i
or
SIM
MOV AX, 04 MOV AX, 80

t IN AX, DX DEC BX

CALL SUB - 1 au CALL SUB - 1

ão NÃO
AX = 7E ?
NÃO
BX = O ?
n INT 20

ia
MOV AX, 08
SIM SIM

óp
RET MOV DX, 379

CCALL SUB - 1

RET
A Figura 43

Explicando o fluxo do programa:

• Carregamos AX com o valor de acordo com os LEDs que quere-


Cópia não autorizada.
mos acender. Reservados todos os direitos autorais.
○ ○ ○ ○ ○

133/99
Instituto Monitor

•Cópia
Chamamos não autorizada.
a sub-rotina Reservados
1. Ela serve para ve- CALLtodos
0200 os direitos autorais.



rificar se o botão preso a D4 foi pressionado. MOV AX, 40



CALL 0200
• Esta sub-rotina lê o canal de I/O, que é a


MOV AX, 80


porta paralela (LPT1) do IBM-PC e com-


CALL 0200


para o conteúdo com o valor da chave pres-


INT 20
sionada. Como a instrução de leitura



s.
também utiliza o registrador AX, salvamos


SUB-ROTINA 1 (IP = 0200H)
i


o conteúdo de AX na pilha (stack).
a


PUSH AX
r


• Se este valor não for o exato, formamos um
to


MOV DX, 379


LOOP (lê canal e compara) e só sairemos
FURA: IN AX, DX u


dele se a chave for pressionada.
a


CMP AX, 6E


s


• Sendo a chave pressionada, a sub-rotina se- JNZ FURA
o
it


gue e chama uma segunda sub-rotina, mas POP AX


e

antes disso recupera o valor de AX. CALL 0250 r
di


• A segunda sub-rotina envia para a saída o BOLO: IN AX, DX

os
valor de AX e na seqüência faz uma pausa ○
○ CMP AX, 7E
JNZ BOLO
antes de retornar à primeira sub-rotina.
s

o

RET
d

• Terminada a pausa colocamos em DX o nú-


o

mero do canal entrada. t


SUB-ROTINA 2 (IP = 0250H)


s

• Voltando à primeira sub-rotina, ela testa


o

se a chave já foi solta comparando AX com d MOV DX, 378


a

o valor da chave solta. Caso contrário, en- v OUT DX, AX


r MOV BX, 3FFF


tra em LOOP aguardando até que se solte


e

es
a chave. FOGO: MOV CX, FFFF

VIRA: DEC CX
R

• Voltando ao programa principal, um novo


. o ci- JNZ VIRA

a
valor de AX é carregado e repete-se

d DEC BX

clo até que não haja mais valores de AX a


serem enviados para a portaza

JNZ FOGO

ri (LPT1).
MOV DX, 379

o

t RET

u

PROGRAMA FONTE (IP = 0100H)


a

Este exemplo é um pouco mais complexo


MOV AX, 00 o

ã que o primeiro e você percebe que, com o flu-


CALL 0200
n

xograma, fica mais fácil acompanhar o pro-


MOV AX, 01

CALL 0200 i a grama sem se perder.


02p

MOV AX, ó

C

Muitos outros programas são possíveis


CALL 0200

com este periférico didático. À medida que


MOV AX, 04

você incrementa o hardware do periférico,


CALL 0200

mais simples fica o programa de controle.


MOV AX, 08

CALL 0200

Podemos dizer:

MOV AX, 10

CALL 0200 Hardware simples  software complexo



MOV AX, 20  softwareautorais.


Hardware
Cópia não autorizada. Reservados todos complexo
os direitos simples


○ ○ ○ ○ ○

133/100
Instituto Monitor

Cópia não autorizada. Reservados


Estude os programas anteriores e crietodos os direitos
novas aplicações para o autorais.
seu periférico didático.

Alguns exemplos simples que podem incrementar seu perifé-


rico didático. O motor de passo pode ser substituído por relés que
acionarão cargas AC, etc.

is.
r a
to
Motor de Passo
4 Bobinas

au
os
Saída Analógica
eit
r
di
os
1KΩ

s
1KΩ

1KΩ

1KΩ

1KΩ

TRANSISTORES POTENCIAIS
od
t
s
1KΩ

1KΩ

1KΩ

1KΩ

FONTE EXTERNA
D7 D6 D5 D4 D3 D2
ad D1 D0
13 12 11 10 9 8 7 6 5 rv 4 3 2 1
e
24 23 22 21 20 19 18s 17 16 15 14
25
e
D7 D6 D5 D4 D3 . R DB-25 Fêmea
da
a
riz
NTC ou PTC

o
Chave NA
Chave NF

t
REED SWITCH

au
LDR

ã o
n
ia
ó p Figura 44
C

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/101
Cópia não autorizada. Reservados todos os direitos autorais.

Exercícios Propostos i s.
r a
1 - Como é executada a instrução CALL?
u to
a
............................................................................................................................................
s
............................................................................................................................................
ito
............................................................................................................................................

ire
............................................................................................................................................
d
............................................................................................................................................
o s
2 - Stack significa:
( ) a) Bastão de endereços de memória. o s
( ) b) Empilhamento de dados no final da memória.od
( ) c) Derramamento de dados no início da memória. t
( ) d) Bateria de dados na memória. o s
( ) e) Estaca de dados na memória.
a d
r v
3 - Quais os cuidados ao utilizar PUSHeregistrador e POP registrador em seus programas
Assembly?
e s
( ) a) Nunca utilizar PUSH ou POP. R
. é inversa ao comando PUSH.
( ) b) A ordem dos comandos POP
( ) c) Nenhum cuidado é necessário. d a
( ) d) Só não podemos utilizar z a PUSH junto do CALL.
i
or
( ) e) Executar primeiro POP depois PUSH.
t
u chaves NA por L.D.R., pois:
4 - Podemos substituir a
( ) a) Não fazodiferença alguma.
( ) b) L.D.R. ãe chave NA são a mesma coisa.
( ) c) Nãonpodemos substituir.
i
( ) d) Quandoa o L.D.R. está iluminado funciona como chave fechada e vice-versa.
( )ó e)pNenhuma das alternativas anteriores.
C
5 - Quando queremos comparar um valor lido pelo canal com um número conhecido
utilizamos a instrução:
( ) a) PUSH endereço.
( ) b) POP endereço.
( ) c) CALL endereço.
( ) d) CMP registrador, número.
( ) e) JNZ endereço.
Cópia não autorizada. Reservados todos os direitos autorais.
○ ○ ○ ○ ○

133/102
Cópia não autorizada. Reservados todos os direitos autorais.

Noções para Montagem


lição

de um Microcomputador
14 IBM-PC Compatível is.
r a
Introdução
u to
a
s
Nesta lição você irá se familiarizar com todos os dispositivos
necessários à montagem de um microcomputador IBM-PC
ito com-
re
patível.

di
1. Escolha seu Microprocessador
os
As opções que o mercado oferece são:
os
d
• CPU Intel Pentium 4 de 1.7 GHz de
clock
to
o s
• Intel Celeron
a d
• AMD Duron com clock de v 700 MHz,
800 MHz ou 900 MHz er
es
. R
d a
iza
or
ut
a
o

pia
ó
C

Cópia não autorizada. Reservados todos os direitos autorais.

133/103
Instituto Monitor

Cópia não2.autorizada. Reservados todos os direitos autorais.


Chipset e Motherboard
Chipset significa conjunto de CIs numa tradução literal. Todo
microprocessador, como já dissemos, precisa de periféricos. O con-
trole destes periféricos e o controle dos barramentos tem sido ob-
jeto de desenvolvimentos tecnológicos para tornar o IBM-PC me-
lhor e mais rápido, isto falando somente em hardware.

is.
A figura 45 mostra o que um chipset Intel faz para o Intel
Pentium 4. r a
uto
a
Intel® Pentium® 4
Processador
os
eit
r
di
osRDRAM
RDRAM
Dual

s
>1 MCH Cannel
AGP4X
o
GB/s 3.2 GB/s

od RDRAM

t RDRAM

Intel® Hub
o s Architecture

a d 6 Channel
ATA 100 MB/s
r v Audio
2 IDE Channels
se ICH2 133
PCI
LAN e MB/s

Interface
. R 4 USB ports

d a
a
r iz
to Flash BIOS

au Figura 45

ão
n
• Controla o vídeo através do barramento AGP 4X.

ia • Controla dois canais IDE para HDD e CD-ROM Master e Slave


óp cada um.
C • Aceita memórias RAM do tipo RDRAM.
• Controla o som digital.
• Controla 4 portas USB.
• Trabalha com barramento PCI.
• Controla flash BIOS.

Cópia não• Tem placa de rede interna.


autorizada. Reservados todos os direitos autorais.
○ ○ ○ ○ ○

133/104
Instituto Monitor

Cópia não autorizada.


As mother-boardsReservados todostêm
(figura 46) ou placas-mãe os direitos
inúmeros fa- autorais.
bricantes asiáticos a preços e performances para todos os bolsos.
Quanto você agüenta pagar para ter um computador PC? Existe
tecnologia para todo o seu dinheiro e um pouco mais.

is.
r a
uto
a
os
eit
r
di
os
os
od
t
o s
ad
Figura 46
r v
s e
e
R
. placa-mãe você pode escolher o CHIPSET
Ao escolher uma a
ad
para que seu processador
neira possível.zDependendo
funcione da melhor ou mais barata ma-
i da aplicação que se deseja dar ao micro-
computador,r investir muito dinheiro é totalmente desnecessário,
t
pois a cada
o meio ano seu microcomputador perde 50% do valor
au devido ao surgimento de novas tecnologias e
comercial,

ão
processadores mais rápidos.
n Placas-mãe com tudo on-board é uma opção barata para uso
ia doméstico sem grandes necessidades de hardware. Estas necessi-
óp dades acontecem em aplicações comerciais de áudio, vídeo. médi-
C ca, etc.

Ah! A BIOS, aquela memória do tipo EPROM, já vem na placa.


Seus fabricantes são Award BIOS ou AMI BIOS.

3. Cooler
À medida que a freqüência do clock aumenta, a temperatura
Cópia nãodosautorizada. Reservados todos os direitos autorais.
processadores aumenta muito. São utilizados coolers (do In-
○ ○ ○ ○ ○

133/105
Instituto Monitor

Cópia
glês cooler:não
aqueleautorizada. Reservados
que esfria ou torna frio). todos os direitos
O termo “pente” autorais.
é usado porque a memó-
Estes dispositivos são compostos de uma peça ria vem em uma placa de circuito impresso
em alumínio aletada e uma ventoinha ligada com terminais banhados a ouro e o conjunto
o tempo todo sobre o conjunto (figura 47). se parece com um pente de cabelo.

5. Gabinetes

is.
As figuras 49 e 50 mostram o gabinete,
que é onde você colocará a placa-mãe com
suas partes. r a
uto
a
os
eit
Figura 47 r
di
A figura mostra a ventoinha do cooler e a os
parte em que entra em contato com a CPU.
os
Recomenda-se o uso de pasta térmica od
entre a CPU e o cooler para melhorar a trans-
t
ferência de calor entre as partes e manter a os
CPU na temperatura ideal. ad
r v
4. Memórias RAM - Pente
se
e
Você já tem um processador, uma Rplaca-
mãe e o cooler, mas, sem memória a. RAM o
computador nem liga. Escolha um
ad pente de
memória entre:
riz
• 32 Mbytes por pente; t
o
u
• 64 Mbyte por pente;a
ão ou
• 128 Mbyte por pente
n
• 256 Mbyte a por pente.
p i
ó 48 mostra um pente de memória
A figura
C
DDR SDRAM

Cópia não autorizada. Reservados todos os direitos autorais.


Figura 48

133/106
Instituto Monitor

Cópia nãovem
O gabinete autorizada.
com uma fonteReservados
de ali- todos os direitos autorais.
6.3 Mouse
mentação do tipo chaveada, com potência
recomendada de 300 W. É feito em chapa Dispositivo apontador. Criado nos Labo-
dobrada e soldada, tendo pintura externa ratórios da Xerox e copiado por Steve Jobs da
resistente e tampo de plástico com design Apple, virou o periférico mais necessário no
moderno e cores a escolher. mundo GUI (Graphic User Interface), traduzi-
do como “Interface Gráfica com o Usuário”.
6. Periféricos Comuns
is.
Arrastando e clicando sobre ícones, você
Os periféricos que não são mais opcio- r a
é dispensado de digitar comandos do antigo
nais são: MS-DOS.
uto
a
6.1 DRIVE de Disquete de 3½”
os
Com ele você inicializa a máquina, desde eit
r
que seja com o disco de BOOT ou disco de
sistema. Utilizado quando seu HardDisk é di
não-formatado, para que você inicialize a os
máquina e possa rodar o software de insta-
os
lação do Windows, por exemplo.
od
t
os
ad
r v 6.4 Estabilizador de Tensão da Rede

se
e Trata-se de um produto 100% brasileiro,

. R necessário porque a rede elétrica não é confiá-


Figura 51
da vel, havendo instabilidades; portanto, é neces-
sário estabilizar a rede elétrica em 110 volts
a
6.2 Teclado
riz para que seu computador não estrague.

to comandos digi-
Através dele você envia
tados. Por exemplo, aoauligar o computador,
para que você acesse
ão o SETUP da BIOS tem
que apertar a tecla DEL durante a iniciali-
zação.
n
p ia
ó
C

Figura 52

Cópia não autorizada. Reservados todos os direitos autorais.

133/107
Instituto Monitor

Cópia
6.5 não
Caixas de Somautorizada.
Amplificadas Reservados todos
6.7 Hard os direitos autorais.
Disk Drive

A multimídia, com som e vídeo, é o que É um dispositivo de armazenamento de


há de mais moderno em termos de comuni- dados em mídia magnética, sobre um disco de
cação. Antigamente, só se liam textos, depois alumínio rodando em alta velocidade. Com ele
começaram a surgir as figuras coloridas. você tem o sistema operacional sempre dispo-
Agora as figuras se movem e têm som. nível a cada vez que liga seu computador.

Caixas acústicas com amplificadores is.


Atualmente, a capacidade destes discos
embutidos são ligadas à rede elétrica e am- r
chega perto de 100 gigabytes.
a
plificam o som que vem do computador.
u to
a de trás para
Existem jumpers na parte
que você configure seu s
HD como master ou
o
it
slave. As modernas placas-mãe
HDs, sendo: mastereprimário,
aceitam até 4
slave primário,
r
di e slave secundário.
master secundário

os
os
o d
t
os
ad
r v
e
es
. R
6.6 CD-ROM Player a
d
A quantidade de memória
iza ocupada
por um programa ultrapassou
o r a barreira
dos discos flexíveis, quetera de 1.4 Mbyte.
Os leitores de CD-ROM au são fundamentais
hoje; sem um deles
ã o você não instala um Os drives de CD-ROM vêm no padrão
sistema operacional como o Windows XP, IDE, o mesmo do HD. Portanto, eles ocupam
por exemplo.
n uma destas quatro posições.
ia
óp Comumente é recomendado que você te-
C nha um HD com master primário, os demais
não importando a ordem.

Cópia não autorizada. Reservados todos os direitos autorais.

133/108
Instituto Monitor

Cópia não autorizada. Reservados


A figura 58 mostra como colocar ostodos
JUMPs os
paradireitos
torná-los autorais.
MASTER ou SLAVE. Vale a pena traduzir as instruções do fabri-
cante, a fim de evitar que você tenha prejuízos desnecessários:

Master Slave

is.
J50 J48 J46 J44 J42 J50 J48 J46 J44 J42

r a
Cable Select
uto
a
os
it
J50 J48 J46 J44 J42

e
ir
Figura 58 - Exemplo de jumper na parte traseira do HD
d
Ao manusear um HD:
os
• Manuseie com cuidado, mesmo quando forsdevolvê-lo ao fabri-
cante.
d o
• Abra a embalagem cuidadosamente. Ela to é difícil de abrir.
• Não empilhe HDs. o s
• Não o deixe cair. ad
r v
• Sempre coloque o HD sobre
s e superfícies cobertas e macias.
• Monte-o no gabinete com e cuidado para não bater, chacoalhar ou
forçar.
. R
• Use equipamento d ade proteção eletrostática durante todo o tempo
da montagem.a
riz
to Para HD Slave
a u
o
Conector do

nã(largo)
cabo de HD

ia
óp Placa-mãe Para HD Master
Fio pintado indica o
C pino 1 do conector

Figura 59

A figura 59 mostra o cabo de ligação com a controladora IDE


de HD e CD-ROM drive. É chamado flat cable e é composto de
vários fios grudados uns aos outros no formato flat (plano). Um destes

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/109
Instituto Monitor

Cópia nãofiosautorizada.
vem marcado emReservados todos
vermelho (ou outra os direitos
cor) indicando que se autorais.
trata do fio do terminal número 1 do conector. Na hora de colocar,
alinhe este fio com o terminal número 1.

6.8 Monitor de Vídeo Svga-Colorido

Por ele saem as imagens coloridas. É


diferente de uma TV comum devido à sua
resolução. O padrão mais utilizado é de 800 is.
x 600 pontos de imagem em uma tela. r a
u to
Não existe espaço para adivinhação. a
Todos os terminais e conectores foram s
to
padronizados; parafusos do tipo PHILIPS,
i
etc. E ainda: todo produto é vendido
r e com o
manual de instalação. Exija o iseu! Siga as
instruções e pronto. d
o s
os
Junte os cabos, aperte parafusos, faça ligações, pronto! Você
montou um microcom­putador!
od
t
O microcomputador montado como explicamos
s
terá o aspecto mostrado na figura 61.oPorém, falta co-
a d para nada.
locar o software, senão ele não servirá
r v
Atualmente, o Windows
s e XP é o padrão do
mercado. O pacote OFFICE e XP da MICROSOFT é
. R
utilizado na maioria das instituições.

d a
iza
o r
ut
a
o

pia
ó
C

Cópia não autorizada. Reservados todos os direitos autorais.

133/110
Cópia não autorizada. Reservados todos os direitos autorais.

Respostas dos Exercícios Propostos is.


r a
Lição 1 to informa-
2 - Conjunto de fios que transportam


u


a
ções no formato binário e que tem a mesma


s


1-A função no sistema.


2-D 3-B
to


i


re
3-A 4-D


i

4-C 5-C
d

5-C 6-B


o s
Lição 2 s

Lição 8o

d

o

1-C
1 - tLinhas de endereçamento ou address bus:

2-C

s sua função é gerar o endereço de


3 - Indicar qual a pastilha, indicar o endereço e o


o que fazer naquele endereço (ler ou escre- d


memória no qual a CPU buscará


a

ver). v instruções de um programa.


r

4-A e Linha de dados ou data bus: sua função é


s

e
10
5 - A – pois 2 = 1.024 combinações possíveis, transportar os dados para dentro da CPU

uma para cada endereço da memória. R ou da CPU para a memória ou periférico.


.

Clock: sinal de onda quadrada. A CPU


a

Lição 3 d

utiliza cada pulso para executar um


a

z programa.

i
or

1-B Interpretador: cada instrução está


t

2-A associada a um código binário. O circuito


u

3-E
a interpretador identifica a qual instrução

o pertence o código binário lido da



Lição 4

memória.

Registradores: pequenas memórias de 8


ia

1-E bits ou 16 bits feitas de flip-flops. Sua


p

ó

2-C função é armazenar momentaneamente


3-D C

dados do programa em execução.



4-E U.L.A.: Unidade Lógica e Aritmética. É



5-D responsável pelos cálculos de adição e


subtração de binários, bem como todas as



Lição 5 funções lógicas entre dois números



binários.

1 - A – pois 4 k é 4 x 1.024 = 4.096 e byte Flags: registrador onde cada um de seus



corresponde a 8 bits. bits se ativa, dependendo do resultado de


Cópia não autorizada. Reservadosuma todos osdadireitos autorais.


operação U.L.A.

○ ○ ○ ○ ○

133/111
Instituto Monitor

Cópia não2 -autorizada.


A Reservados todos os direitos autorais.
3-C
4 - São como avenidas para enviar dados à CPU ou receber dados
dela. Somente um periférico pode utilizar o barramento por
vez. Sem eles a CPU teria milhares de fios e circuitos internos
para se comunicar com os periféricos.
5-A

Lição 11 is.
r a
1-
uto
a
Início
os
eit
r
di
AX = 1234H

BX = 0234H
os
os
d
CX = 0034H
o
t
s
DX = 0004H

do
CXa= CX - DX
r v
se FLAG Z ?
e
. R
da CX = CX - DX

iza
or SIM
FLAG Z ?

ut NÃO
a BX = BX - CX

ão
n SIM

ia FLAG Z ?

óp
NÃO

C AX = AX - BX

NÃO
FLAG Z ?
SIM
FIM

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/112
Instituto Monitor

Cópia não
Convém autorizada.
lembrar Reservados
que em programação todos
Lição 12 os direitos autorais.



existem inúmeras maneiras de fazer o mes-



mo programa. Portanto, aqui é somente uma 1-A


sugestão de resposta. 2 - É a utilização dos barramentos por dois ou



mais periféricos ao mesmo tempo.



2 - Exemplo digitado no Debug da Microsoft, 3-A


a partir do endereço IP = 500. 4-A


s.


5-A
i


PROGRAMA FONTE NO MODO
a


r


ENDEREÇADO Lição 13
to



u


166F:0500 MOV AX,1234 1 - Copia o conteúdo de PC a (Program Counter)



os o registrador SP
166F:0503 MOV BX,0234 na stack (pilha), carrega PC com o endere-


ço mencionado emtCALL,


166F:0506 MOV CX,0034
i anterior no final da


166F:0509 MOV DX,0004 e
aponta para endereço


ir a instrução do endereço

166F:050C SUB CX,DX memória. Executa
d


166F:050E JZ 0518 apontado por CALL.
os

166F:0510 SUB BX,CX 2-B


3-B s

166F:0512 JZ 0518
4-D o

d

166F:0514 SUB AX,BX


5 -o

166F:0516 JZ 0518
t D

166F:0518 INT 20
s

o

d

PROGRAMA FONTE NO MODO LABEL a


v

r

MOV AX,1234 e

es

MOV BX,0234

R

MOV CX,0034
DX,0004 a.

MOV

CX,DX d

SUB
AZUL za

ri
JZ

SUB
o
BX,CX

t

JZ AZUL
u

a AX,BX

SUB

JZ o AZUL

ã

AZUL:
n
INT 20

ia

óp

C













Cópia não autorizada. Reservados todos os direitos autorais.




○ ○ ○ ○ ○

133/113
Cópia não autorizada. Reservados todos os direitos autorais.

Bibliografia is.
r a
VISCONTI, Antonio Carlos J. Franceschini
uto
Microprocessadores 8080 e 8085 - 3ª edição
a
São Paulo: Editora Érica 1983
os
BRAGA, Newton C.
eit
r
di
Manutenção de Microprocessadores -
Guia para futuros profissionais - 3ª edição
São Paulo: Editora Saber 1999
os
os
od
t
os
ad
r v
se
e
. R
da
a
riz
to
au
ão
n
ia
óp
C

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○

133/114
Pesquisa de Avaliação
Cópia não autorizada. Reservados todos os direitos autorais.
133 - Microprocessadores

Caro Aluno:

Queremos saber a sua opinião a respeito deste fascículo que você acaba de estudar.
s.
Para que possamos aprimorar cada vez mais os nossos serviços, oferecendo um
a i
r
to
material didático de qualidade e eficiente, é muito importante a sua avaliação.

Sua identificação não é obrigatória. Responda as perguntas a seguir assinalandou


a
a alternativa que melhor corresponda à sua opinião (assinale apenas UMA
s
to
alternativa). Você também pode fazer sugestões e comentários por escrito no
i
re
verso desta folha.

Na próxima correspondência que enviar à Escola, lembre-se deijuntar sua(s)


d
pesquisa(s) respondida(s).
o s
O Instituto Monitor agradece a sua colaboração.
os
o d A Editora.

t
s
Nome (campo não obrigatório): _______________________________________________________________
o
o
d
N de matrícula (campo não obrigatório): _____________________
a
Curso Técnico em:
r v
Eletrônica
s eSecretariado Gestão de Negócios
Transações Imobiliárias
e Informática Telecomunicações
Contabilidade
. R
QUANTO AO CONTEÚDO
d a
a
iz muito a compreensão da matéria estudada.
1) A linguagem dos textos é:
r
a) sempre clara e precisa, facilitando
o e precisa, ajudando na compreensão da matéria estudada.
t
b) na maioria das vezes clara

au
c) um pouco difícil, dificultando a compreensão da matéria estudada.

ã o
d) muito difícil, dificultando muito a compreensão da matéria estudada.
e) outros: ______________________________________________________
n
a
2) Os temas abordados nas lições são:
a) atuais eiimportantes para a formação do profissional.
ópmas sua importância nem sempre fica clara para o profissional.
b) atuais,
C mas sem importância para o profissional.
c) atuais,
d) ultrapassados e sem nenhuma importância para o profissional.
e) outros: ______________________________________________________

3) As lições são:
a) muito extensas, dificultando a compreensão do conteúdo.
b) bem divididas, permitindo que o conteúdo seja assimilado pouco a pouco.
c) a divisão das lições não influencia Na compreensão do conteúdo.
Cópia não autorizada. Reservados todos os direitos autorais.
d) muito curtas e pouco aprofundadas.
e) outros: ______________________________________________________
QUANTO AOS EXERCÍCIOS PROPOSTOS
Cópia não
4) Os exercícios autorizada.
propostos são: Reservados todos os direitos autorais.
a) muito simples, exigindo apenas que se decore o conteúdo.
b) bem elaborados, misturando assuntos simples e complexos.
c) um pouco difíceis, mas abordando o que se viu na lição.
d) muito difíceis, uma vez que não abordam o que foi visto na lição.
e) outros: ______________________________________________________

s.
5) A linguagem dos exercícios propostos é:
a) bastante clara e precisa.
ai
b) algumas vezes um pouco complexa, dificultando a resolução do problema proposto.
r
c) difícil, tornando mais difícil compreender a pergunta do que respondê-la.
d) muito complexa, nunca consigo resolver os exercícios. uto
e) outros: ______________________________________________________ a
os
QUANTO À APRESENTAÇÃO GRÁFICA
eit
r
di o estudo bastante agradável.
6) O material é:
a) bem cuidado, o texto e as imagens são de fácil leitura e visualização, tornando

os
b) a letra é muito pequena, dificultando a visualização.
c) bem cuidado, mas a disposição das imagens e do texto dificulta a compreensão do mesmo.

o s
d) confuso e mal distribuído, as informações não seguem uma seqüência lógica.
e) outros: ______________________________________________________ d
to
7) As ilustrações são:
o
a) bonitas e bem feitas, auxiliando na compreensão e fixação
s do texto.
c) malfeitas, mas necessárias para a compreensão v
ad do texto.
b) bonitas, mas sem nenhuma utilidade para a compreensão
e fixação do texto.
d) malfeitas e totalmente inúteis. e r
es
e) outros: ______________________________________________________

. R seus comentários e sugestões, bem como apontar


Lembre-se: você pode fazer
a encontrado no fascículo. Sinta-se à vontade!
algum problema específico
d
iza
o r PAMD1

Sugestões e comentáriosut
a
o

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

a
○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

i
óp
○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

○ ○
C
○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

Cópia não autorizada. Reservados todos os direitos autorais.


○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

Você também pode gostar