Vous êtes sur la page 1sur 117

ARQUITETURA E ORGANIZAO

DE COMPUTADORES

MSc. Carlos D. G. Euzebio


Durao - 80 horas

Aulas semanais 4
Horrio
Manh Sexta-feira
Noite Quinta-feira

ARQUITETURA E ORGANIZAO DE
COMPUTADORES
Ementa Previso de aulas - Noite
SEMANA DATA CONTEDO
1 06/08 Apresentao da disciplina. Caractersticas do desenvolvimento e introduo
2 13/08 Bases numricas e codificao de dados
3 20/08 Bases numricas e codificao de dados
4 27/08 Introduo lgica digital
5 03/09 Introduo lgica digital
6 10/09 Modo de Endereamento, Tipo de Dados, Conjunto de Instrues, interrupes
7 17/09 Modo de Endereamento, Tipo de Dados, Conjunto de Instrues, interrupes
8 24/09 Conceitos bsicos :1, 2, 3 e 4 gerao de computadores, processador, canais, perifricos
9 01/10 Sistemas paralelos
10 08/10 Avaliao P1
11 15/10 Resoluo da P1
12 22/10 Sistemas Operacionais: conceitos e funes.
13 29/10 Linguagens e ferramentas
14 05/11 Organizao de arquivos
15 12/11 Bancos de Dados: Conceitos e tipos de organizao
16 19/11 Teleprocessamento e Redes: Conceitos
17 26/11 Apresentao de trabalhos
18 03/12 Apresentao de trabalhos
19 10/12 Avaliao P2
20 17/12 Encerramento das atividades

ARQUITETURA E ORGANIZAO DE
COMPUTADORES
Ementa
SEMANA DATA CONTEDO
1 07/08 Apresentao da disciplina. Caractersticas do desenvolvimento e introduo
2 14/08 Bases numricas e codificao de dados
3 21/08 Bases numricas e codificao de dados
4 28/08 Introduo lgica digital
5 04/09 Introduo lgica digital
6 11/09 Modo de Endereamento, Tipo de Dados, Conjunto de Instrues, interrupes
7 18/09 Modo de Endereamento, Tipo de Dados, Conjunto de Instrues, interrupes
8 25/09 Conceitos bsicos :1, 2, 3 e 4 gerao de computadores, processador, canais, perifricos
9 02/10 Sistemas paralelos
10 09/10 Avaliao P1
11 16/10 Resoluo da P1
12 23/10 Sistemas Operacionais: conceitos e funes.
13 30/10 Linguagens e ferramentas
14 06/11 Organizao de arquivos
15 13/11 Bancos de Dados: Conceitos e tipos de organizao
16 20/11 Teleprocessamento e Redes: Conceitos
17 27/11 Apresentao de trabalhos
18 04/12 Apresentao de trabalhos
19 11/12 Avaliao P2
20 18/12 Encerramento das atividades

ARQUITETURA E ORGANIZAO DE
COMPUTADORES
Composio da mdia final
N1 = Nota da primeira avaliao.
N2 = Nota da segunda avaliao.
P = Nota de participao nas atividades.

1 + 2
= . 0,7 + 0,3
2
Sendo Aprovao se MF >= 6,0 e Frequncia >= 75%.

Bibliografia Bsica
STALLINGS, W. Arquitetura e Organizao de Computadores. 5.ed. Prentice-Hall Brasil, 2008.
TANENBAUM, A. S. Organizao Estruturada de Computadores, 5 Ed. Prentice Hall, 2007. TOCCI,
R. J. Sistemas Digitais: princpios e aplicaes. 10.ed. Pearson Brasil, 2007

Bibliografia Complementar

ARQUITETURA E ORGANIZAO DE
COMPUTADORES
Semana 1

ARQUITETURA E ORGANIZAO DE
COMPUTADORES
Apresentao Individual
Expectativa sobre o curso
Experincia profissional e na rea
Introduo informtica
Motivao
Atravs do estudo da arquitetura e organizacional dos computadores, o aluno ser
capaz de identificar seus componentes e suas funes.

Todas as reas da Computao baseiam-se no processamento de dados /


informaes, que so realizados atravs de operaes bsicas.
Todo sistema de computao constitudo, ao menos, pelos seguintes componentes:

Um mdulo que realize as operaes necessrias para a execuo dos programas, a


unidade central de processamento;

Uma rea de trabalho para o armazenamento das informaes que sero


processadas, a memria principal;

Dispositivos para o recebimento de informaes e retorno / armazenamento dos


resultados, os dispositivos de entrada e sada de dados;

E finalmente, um meio atravs do qual os dispositivos possam se comunicar e transmitir


dados, os barramentos de comunicao.
Abstraes

Um exemplo de abstrao cotidiano e presente na vida de grande parte das


pessoas a TV. Todos sabem como utiliz-la, mas como ela funciona?

E os computadores? A Internet? Editores de texto, jogos, etc. Estes so recursos que


muitos dominam bem, mas no fazem ideia do que existe no interior do gabinete
de seu computador. Este conhecimento o que diferencia o especialista em
computao do usurio comum.
ULSI(Ultra Large Scale Integration)

VLSI(Very Large Scale Integration)

LSI(Large Scale Integration)


Semana 2 e 3

ARQUITETURA E ORGANIZAO DE
COMPUTADORES
SISTEMAS DE NUMERAO
O objetivo principal de qualquer base numrica a de representar
nmeros
A formao dos nmeros depende da quantidade de algarismos
disponveis no referido sistema (chamado Base)
Ex: Base decimal => 10 algarismos (0,1,2,...,8,9)

Os sistemas de numerao a forma como representamos uma


informao de forma digital ou analgica na informtica.
H vrios tipos de sistema de numerao sendo os principais:
Decimal
Octal
Hexadecimal
Binria
NOTAO POSICIONAL

Base Decimal
Nmero 5.303 na base 10 = 530310
Composto de 4 algarismos: 5,3,0,3
Valores:
3 unidades = 3 x 100 = 3
0 dezenas = 0 x 101 = 0
3 centenas = 3 x 102 = 300
5 milhares = 5 x 103 = 5.000
Total = 5.303
Exemplo:
Nmero 5.303 na base 10 = 530310
Composto de 4 algarismos: 5,3,0,3
Valores:
3 unidades = 3 x 100 = 3
0 dezenas = 0 x 101 = 0
3 centenas = 3 x 102 = 300
5 milhares = 5 x 103 = 5.000
Total = 5.303

NOTAO POSICIONAL
16 => Hexadecimal
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
10 => Decimal: 0,1,2,3,4,5,6,7,8,9
8 => Octal: 0,1,2,3,4,5,6,7
3 => Ternria: 0,1,2
2 => Binria: 0,1

Exemplos:
(1011)2
(342)5
(257)8

BASES
Converte o valor decimal 65 em binrio, em outra
notao converter base 10 para base 2.

65/2=32 com resto 1


32/2=16 com resto 0
16/2=8 com resto 0
8/2=4 com resto 0
4/2=2 com resto 0
2/2=1 com resto 0
1 3 posio = 1 x 2x3 = 8
1 2 posio = 1 x 2x2 = 4
0 1 posio = 0 x 2x1 = 0
1 posio 0 = 1 x 2x0 = 1
total: 8+4+0+1=13

REDES DE COMPUTADORES
Divide-seo nmero decimal pelo valor da
base B. O resto o algarismo procurado.
Repetir enquanto quociente0.
Exemplo: Converter (45)10 para binrio
45/2 = 22 resto=1 d0
22/2 = 11 resto=0 d1
11/2 = 5 resto=1 d2
5/2 = 2 resto=1 d3
2/2 = 1 resto=0 d4
1/2 = 0 resto=1 d5
=> (d5 d4 d3 d2 d1 d0) = (101101)2

CONVERSO DECIMAL BASE B


Ex1: Converter (2754)10 para ( )16
2754/16 = 172 resto=2
172/16 = 10 resto=12=C
10/16 =0 resto=10=A
=> (AC2)16 ou AC2H ou AC2h

Ex2: Converter (483)10 para ( )8


483/8 = 60 resto=3
60/8 =7 resto=4
7/8 =0 resto=7
=> (743)8

CONVERSO DECIMAL BASE B


Exr1: Converter (610)10 para ()8
Exr2: Converter (77)10 para ()2
Exr3: Converter (447)10 para ()16

Resp1 = (1142)8
Resp2 = (1001101)2
Resp3 = (1BF)16

CONVERSO DECIMAL BASE B


Ex1: Converter (1110)2 para decimal
(1110)2 = 1.23 + 1.22 + 1.21 + 0.20 =
=8+4+2+0=
= (14)10 = 14

Ex2: Converter (1043)5 para decimal


(1043)5 = 1.53 + 0.52 + 4.51 + 3.50 =
= 125 + 0 + 20 + 3 =
= (148)10 = 148

CONVERSO PARA DECIMAL


Exr1: Converter (10011)2 para decimal
Exr2: Converter (1310)3 para decimal
Exr3: Converter 1C2FH para decimal

Resp1 = 19
Resp2 = 57
Resp3 = 7.215

CONVERSO PARA DECIMAL


BINRIO DECIMAL
bin dec bin dec

0000 0 1000 8
0001 1 1001 9
0010 2 1010 10
0011 3 1011 11
0100 4 1100 12
0101 5 1101 13
0110 6 1110 14
0111 7 1111 15
Faixa de valores em decimal
1 bit (0 ou 1): 0-1
2 bits (00,01,10,11): 0-3 (22-1)
4 bits (0000-1111): 0-15 (24-1)
8 bits (1111 1111): 0-255 (28-1)
16 bits (1111 1111 1111 1111): 0-65535
....

BINRIO DECIMAL
Exr1: Converter (010000000001)2 para decimal
Exr2: Converter (000000000001)2 para decimal
Exr3: Converter (11111110)2 para decimal

Resp1 = 1025
Resp2 =1
Resp3 = 254

BINRIO DECIMAL
Exemplo
(270)8 = 2.82 + 7.81 + 0.80 =
= 128 + 56 + 0 =
= (184)10 = 184

CONVERSO BASE 8 DECIMAL


SOMA: Semelhante soma decimal
0+0 = 0
0+1 = 1+0 = 1
1+1 = 0, com vai 1

1 1111 <= vai 1


Ex: 101101
+ 101011
1011000

ARITMTICA BINRIA
SUBTRAO: semelhante, porm o emprstimo
agora vale 2 (na base decimal quando temos 0-
N pegamos 10 emprestado ao algarismo da
esquerda).
0-0=0, 1-1=0, 1-0=1, 0-1 => emprstimo

Ex: 101101
- 100111
000110

ARITMTICA BINRIA
Exr1: (10101)2 + (11100)2
Exr2: (100110)2 + (0011100)2
Exr3: (100101)2 - (011010)2
Exr4: (111001001)2 - (10111011)2

Resp1 = (110001)2
Resp2 = (1000010)2
Resp3 = (001011)2
Resp4 = (100001110)2

ARITMTICA BINRIA
SOMA 1 11
3A943B
+ 23B7D5
5E4C10

A-10
SUBTRAO
27 B-11
3 B 23 D 24
4C7BE8 C-12
- 1E927A
D-13
2DE96E
E-14
F-15

ARITMTICA HEXADECIMAL
Exr1: (2A5BEF)16 + (9C829)16
Exr2: (2EC3BA)16 + (7C35EA)16
Exr3: (64B2E)16 - (27EBA)16
Exr4: (43DAB)16 - (3EFFA)16

Resp1 = (342418)16
Resp2 = (AAF9A4)16
Resp3 = (3CC74)16
Resp4 = (4DB1)16

ARITMTICA HEXADECIMAL
Semana 4 e 5

ARQUITETURA E ORGANIZAO DE
COMPUTADORES
PORTAS LGICAS E SUAS FUNES
Nesta aula discutiremos os elementos bsicos de construo de circuitos
digitais (ex.: microprocessador). Esses elementos so denominados
portas lgicas.

As portas lgicas executam operaes sobre operadores binrios (0 e 1),


podendo ser aplicadas para diversas finalidades. As principais portas
so: AND, OR, NOT e XOR.

Quando agrupadas formam os chamados circuitos combinatrios que,


quando possuem uma memria acoplada, so chamados de
sequenciais. Esses circuitos digitais podem representar, por exemplo, a
Unidade Lgica Aritmtica (ULA).

Referncias utilizadas:
MONTEIRO, Mrio A. Introduo organizao de computadores. Rio
de Janeiro: LTC, 2007
Fvero, Eliane M. B. Organizao e Arquitetura de Computadores
Um computador constitudo de elementos eletrnicos, como resistores, capacitores e
principalmente transistores.
Os transistores so, em geral, componentes de determinados circuitos eletrnicos que precisam
armazenar os sinais binrios e realizar certos tipos de operaes com eles.
Esses circuitos, chamados de circuitos digitais, so formados por pequenos elementos capazes de
manipular grandezas apenas binrias. Eles so conhecidos como portas lgicas, por permitirem ou
no a passagem desses sinais, e os circuitos que contm as portas lgicas so conhecidos como
circuitos lgicos.
Em geral, os circuitos lgicos so agrupados e embutidos em um Circuito Integrado (CI).
Esses dispositivos implementam uma determinada funo com o objetivo de cumprir
uma tarefa especfica.
Uma operao lgica qualquer (ex.: soma ou multiplicao de dgitos binrios) sempre ir
resultar em dois valores possveis: 0 (falso) ou 1 (verdadeiro). Assim, pode-se pr-definir
todos os possveis resultados de uma operao lgica, de acordo com os possveis valores
de entrada. Para representar tais possibilidades, utiliza-se de uma forma de organiz-las
chamada Tabela Verdade. Assim, cada operao lgica possui sua prpria tabela verdade.
Porta AND
Trata-se de uma operao que aceita dois operandos ou duas entradas (A e B)

Pode-se dizer que a operao AND simula uma multiplicao binria, permitindo os possveis resultados
Porta OR
Trata-se de uma operao que aceita dois operandos ou duas entradas (A e B).

Podemos dizer que a operao OR simula uma soma de binrios, permitindo os possveis resultados.

Conforme podemos observar, a regra : se o primeiro operando 1 ou o segundo


operando 1, ou se os dois operandos forem 1, o resultado 1, seno o resultado 0.
As operaes lgicas OR so muito utilizadas em lgica digital ou mesmo em comandos
de deciso de algumas linguagens de programao (ex.: Se (X=1 OU Y=1) Ento Executa
uma ao).
Porta NOT
A porta NOT representa um inversor. Essa operao aceita apenas um operando uma entrada (A).

Conforme possvel observar, a regra : se o operando for 1, o resultado 0, seno o


resultado 1.
Entre as principais aplicaes dos circuitos inversores est a representao de
nmeros negativos no formato binrio, quando se usa o que chamado de
complemento a 1 ou complemento a 2, fazendo-se necessria a inverso de um grupo
de bits representativos de um nmero negativo.
Porta XOR
A denominao XOR a abreviao do termo EXCLUSIVE OR. Trata-se de uma operao que aceita dois operandos ou duas entradas (A e B). Os operandos so binrios s

Conforme possvel observar, a regra : se o primeiro operando ou o segundo operando


for igual a 1, o resultado 1; seno, o resultado 0. Ou seja, para entradas iguais a sada
ser 0 e para entradas diferentes a sada ser 1.
A porta XOR possui inmeras aplicaes, sendo um elemento lgico bastante verstil,
permitindo, por exemplo, a fabricao de um testador de igualdade entre valores, para
testar, de modo rpido, se duas palavras de dados so iguais.
Outras portas lgicas e circuitos combinatrios
Existem outras portas lgicas derivadas das portas lgicas apresentadas acima, tais como as portas NAND (porta AND invertida) e a porta NOR (porta OR invertida).

As operaes lgicas so realizadas em dois passos: primeiro a operao AND ou OR e, em seguida, o seu
resultado invertido. Esse tipo de portas lgicas tambm possui diversas aplicaes, sendo utilizado para
reduzir a complexidade e a quantidade de portas lgicas necessrias a um determinado circuito lgico.
No esquea de que um circuito lgico pode possuir diversas portas lgicas e, portanto, suas tabelas
verdade podero ter inmeras entradas e inmeras sadas (as quais podero ser representadas por suas
respectivas equaes booleanas).
A partir das portas lgicas bsicas, possvel interligar diversas de suas unidades, de modo a
construir redes lgicas, tambm chamadas de circuitos combinatrios. Monteiro (2007) explica
que um circuito combinatrio definido como um conjunto de portas lgicas cuja sada em
qualquer instante de tempo funo somente das entradas. O autor afirma ainda que existe
outra categoria de circuitos que combina portas lgicas, denominada circuitos sequenciais, os
quais, alm de possuir portas, contm elementos de armazenamento (uma espcie de
memria).
FLIP-FLOP
Para a adicionar a ideia de memria ao circuito
combinatrio, foi inventado o elemento de
armazenamento chamado de Flip-Flop, que pode
armazenar 1 bit de informao.
Um conjunto de flip-flop pode ser utilizado para armazenar
um conjunto de bits.
Alguns tipos: SR, D, JK e T
FLIP-FLOP SR
o mais simples. Possui duas entradas S (set) e R (reset).
Possui duas sadas, Q e Q, que so sempre complementos
uma da outra.
FLIP-FLOP D
Flip-flop SR no podem ser utilizados como memria de 1 bit, pois
precisa de 2 entradas. Uma pequena modificao no circuito
capaz de criar um flip-flop D dados.
Note que a sada do flip-flop igual a sua entrada. No entanto,
esta sada permanece inalterada at que a prxima entrada seja
fornecida.
Ou seja, capaz de memorizar
os estados de entrada
FLIP-FLOP JK JACK KILBY
Criado para remover o estado indefinido do flip-flop SR
obtido com a adio de duas portas AND a um flip-flop SR

J K Q(T+1)

0 0 Q(t)

0 1 0

1 0 1

1 1 Q'(t)
FLIP-FLOP T TOGGLE OU ALTERNAR
Se T estiver em estado alto, o flip-flop T (toggle) muda o
estado. Se a entrada T for baixa, o flip-flop mantm o valor do
seu estado. Seu comportamento descrito pela tabela:

T Q(T+1)
0 Q(t)

1 Q'(t)
Semana 6

Modo de Endereamento, Tipo de Dados, Conjunto de Instrues, interrupes

ARQUITETURA E ORGANIZAO DE
COMPUTADORES
Em um sistema de computao temos a UCP se comunicando com a memria e os dispositivos de E/S.
Podemos fazer um paralelo do acesso memria com um carteiro entregando cartas ou um acesso biblioteca.
Duas aes bsicas podem ser executadas:
armazenamento (escrita ou gravao (write))
recuperao (leitura (read))
Em sistemas de computao a unidade bsica o bit que pode ter 2 valores. Mas precisamos de mais valores para representar
informao: nmeros, letras do alfabeto, smbolos.
Para isso, os bits so agrupados em grupos de bits que so armazenados na memria e so acessados sempre em grupo.
Para acessar um grupo de bits, utiliza-se um endereo que varia de 0 a (N-1) onde N o nmero total de grupos existentes.
|--------------|
end 0 | M bits |
|--------------|
end 1 | M bits |
|--------------|
end 2 | M bits |
|--------------|
| . |
|--------------|
end N-1 |bm-1|bm-2|...|b7|
|--------------|

ENDEREAMENTO DE MEMRIA
Dados e instrues so armazenados na memria, lidos e escritos pela UCP
Memria organizada em clulas de M bits, mas acesso depende do tamanho de palavra utilizado pela mquina
Cada grupo de bits (clula) possui um endereo associado. Organizao utilizada atualmente: cada clula possui 8 bits e o
tamanho da palavra varia entre 16, 32 e 64 bits
Tamanho da palavra: Quantidade de bits transferida entre a Memria e UCP em operaes de leitura e escrita

N Endereos | M clulas de memria Neste exemplo temos M= 8 bits de palavras (clulas de memria)
|--------------| Temos ainda 4 endereos, numerados de 0 a 3, que tem como
00 | 8 bits | objetivo enderear cada clula de memria
|--------------|
01 | 8 bits |
Quantos bits de endereamento possui essa memria?
|--------------|
10 | 8 bits |
2e =4 endereos (clulas de memrias / linhas)
|--------------|
11 | 8 bits | 22 =4 endereos, portanto, 2 bits de endereamento
|--------------|
Qual a capacidade de memria?
T= N x M
22 =4 endereos
e=2 bits de endereamento N=2e
Temos, T=4x8 = 32 bits ou 4 bytes
Espao de endereamento = 8K clulas e cada clula pode armazenar 8 bits. Qual a capacidade da Memria e quantas linhas de
endereo devem ser utilizadas?
T = N X M = 213 X 2 3=216=64K bits
N = 2 13, logo teremos que ter 13 linhas para endereo

Um computador possui capacidade mxima de armazenamento de 512K clulas, cada uma de 16 bits.
Qual o nmero mnimo de bits que o barramento de endereos e de dados devem ter, supondo que duas clulas so acessadas
em cada operao de leitura/ou escrita? Qual o maior endereo da Memria e qual a capacidade da Memria?
Se temos 512 K clulas=29x210=219, teremos 19 bits para o barramento de endereos.
Se em cada acesso memria, duas clulas so transferidas, ento o barramento de dados deve ter o tamanho igual a 32 bits.
O maior endereo da Memria N-1=219-1=524.287
Capacidade da Memria = NxM=219x16=223bits=220bytes=1M bytes
A = ((B + C) x D + E F)

A H denotam posies da memria endereos


As arquiteturas possuem as seguintes operaes aritmticas:
ADD para soma
SUB para subtrao
MUL para multiplicao
DIV - para diviso

CONJUNTO DE INSTRUES
Arquitetura de 4 endereos

Endereo Instruo Comentrio


e1 ADD B C A e2 Soma B com C, salva resultado em A
e2 MUL A D A e3 Multiplica A por D, salva resultado em A
e3 ADD A E A e4 Soma A com E, salva resultado em A
e4 SUB A F A e5 Subtrai F de A, salva resultado em A
e5 HALT Fim do programa

Que tipo de instrues no so necessrias no modelo de arquitetura


com 4 endereos?
Arquitetura de 3 endereos

Surgiu a necessidade de se utilizar um registrador especfico para controlar o endereo da


prxima instruo: PC program counter

Endereo Instruo Comentrio


e1 ADD B C A Soma B com C, salva resultado em A, incrementa PC
e2 MUL A D A Multiplica A por D, salva resultado em A, incrementa PC
e3 ADD A E A Soma A com E, salva resultado em A, incrementa PC
e4 SUB A F A Subtrai F de A, salva resultado em A, incrementa PC
e5 HALT Fim do programa

Quais as vantagens da arquitetura de 3 endereos para a


arquitetura de 4 endereos? Vantagens:
Reduo do tamanho da instruo
Reduo do tamanho da memria;
Velocidade
Arquitetura de 2 endereos
A economia de memria e a obrigatoriedade de desenvolvimento de programas sequencias
compensam o grau de liberdade as instrues com 4 endereos;
No entanto, instrues de 3 endereos ainda consomem muita memria;
Observando-se os programas de 3 instrues, muitas das vezes, um dos operandos fonte o
mesmo operando destino. Simplificando essa arquitetura, tem-se arquiteturas de 2
endereos.

Endereo Instruo Comentrio


e1 MOV A B Move B para A
e2 ADD A C Soma A com C, resultado em A
e3 MUL A D Multiplica A por D, resultado em A
e4 ADD A E Soma A com E, resultado em A
e5 SUB A F Subtrai F de A, resultado em A
e6 HALT Fim do programa
Arquitetura de 1 endereos
Com a criao de registradores especiais, pode-se reduzir ainda mais o nmero de endereos,
criando-se as arquiteturas de 1 endereo;
Agora as instrues de movimentao precisam ser subdivididas de acordo com
o sentido da transferncia:
Da memria para o acumulador (LDA LoaD Acumulator)
Do acumulador para a memria (STA STore Acumulator)
Endereo Instruo Comentrio
e1 LDA B Move B para o acumulador
e2 ADD C Soma Acumulador com C, resultado no acumulador
e3 MUL D Multiplica acumulador por D, resultado no acumulador
e4 ADD E Soma acumulador com E, resultado no acumulador
e5 SUB F Subtrai F do acumulador, resultado no acumulador
e6 STA A Armazena acumulador no endereo H
e7 HALT Fim do programa

A grande vantagem deste tipo de arquitetura est na economia de acessos a memria,


realizando basicamente operaes com o acumulador
Arquitetura de 0 endereos
No existe nenhuma referncia explcita endereos de memria onde estejam localizados os
operandos;
A soluo nesse caso usar uma pilha: os operandos so sempre retirados do topo da pilha.
Duas instrues manipulam a pilha: PUSH E POP
PUSH insere um dado no topo da pilha
POP remove o dado no topo da pilha
Endereo Instruo Comentrio
e1 PUSH H Coloca H no topo da pilha
e2 PUSH G Coloca G no topo da pilha
e3 PUSH F Coloca F no topo da pilha
e4 PUSH E Coloca E no topo da pilha
e5 PUSH D Coloca D no topo da pilha
e6 PUSH C Coloca C no topo da pilha
e7 PUSH B Coloca B no topo da pilha
e8 ADD Topo da pilha recebe B + C (B e C so retirados da pilha)
e9 MUL Topo recebe (B+C) * D
e10 ADD Topo recebe (B+C) * D + E
e11 SUB Topo recebe (B+C) * D + E - F
e12 POP A Topo da pilha armazenado em A
e13 HALT Fim do programa
A partir da proposta da arquitetura de Von Neumann, da qual os conceitos
bsicos ainda so vlidos, propunha-se que as instrues fossem executadas
sequencialmente (a no ser pela ocorrncia de um desvio), uma a uma. O
contador de instrues indica a sequncia de execuo, isto , o CI controla
o fluxo de execuo das instrues.

CICLO DE INSTRUO
Fase 1
A UCP busca o cdigo de operao (Opcode) na memria
principal, o qual est localizado no endereo contido no CI
(endereo da prxima instruo a ser executada) e
armazena-o no Registrador de Instruo (RI): RI (CI)
Fase 2
O Decodificador de Instruo decodifica (interpreta) o Cdigo
de Operao (Opcode) contido no RI.
Fase 3
A UC busca (se houver) o(s) dado(s) (Operandos): RI (Op)
Fase 4
A UC comanda a execuo da instruo (a operao
executada sobre o(s) dado(s));
Fase 5
Se o programa tiver terminado, pra; seno, volta Fase 1
Arquiteturas RISC e CISC

At o momento foram apresentadas algumas caractersticas das instrues de mquina,


relacionada com o um conjunto de instrues que um processador sempre estar preparado
para processar instrues bsicas (ex.: soma e subtrao).
Atualmente, h duas tecnologias de projeto de processadores empregadas pelos fabricantes
de computadores (MONTEIRO, 2007): processadores com um conjunto de instrues
complexo (Complex Instruction Set Computers CISC) e processadores com um conjunto
de instrues reduzido (Reduced Instruction Set Computers RISC).
A presena de outros tipos de instrues depende da orientao da arquitetura (CISC ou
RISC) e se est voltada para aplicaes gerais ou especficas.
No inicio da dcada de 80, a tendncia era construir chips com conjuntos de instrues cada
vez mais complexos. Alguns fabricantes porm, resolveram seguir o caminho oposto,
criando o padro RISC. Ao contrrio dos complexos CISC, os processadores RISC so
capazes de executar apenas algumas poucas instrues simples. Justamente por isso, os
chips baseados nesta arquitetura so mais simples e muito mais baratos. Outra vantagem
dos processadores RISC, que, por terem um menor nmero de circuitos internos, podem
trabalhar a frequncias mais altas. Um exemplo so os processadores Alpha, que em 97 j
operavam a 600 MHz.
Um processador RISC capaz de executar suas instrues muito mais rpido. Apesar de um
processador CISC ser capaz de executar centenas de instrues diferentes, apenas algumas
so usadas frequentemente. Pode-se ento criar um processador otimizado para executar
apenas estas instrues simples que so mais usadas. Em conjunto com um software
adequado, este processador seria capaz de desempenhar quase todas as funes de um
processador CISC, acabando por compensar suas limitaes com uma maior velocidade de
processamento.

Em instrues complexas os processadores CISC saem-se melhor. Por isso, atualmente


existem processadores hbridos, que so essencialmente processadores CISC, mas
incorporam muitos recursos encontrados nos processadores RISC (ou vice-versa).

A vantagem de uma arquitetura CISC que j temos muitas das instrues guardadas no
prprio processador, o que facilita o trabalho dos programadores, que j dispe de
praticamente todas as instrues que sero usadas em seus programas. No caso de um chip
estritamente RISC, o programador j teria um pouco mais de trabalho, pois como disporia
apenas de instrues simples, teria sempre que combinar vrias instrues sempre que
precisasse executar alguma tarefa mais complexa.

Ex Risc: processadores PowerPC (Apple, Motorola e IBM) e SPARC (SUN)


Ex Cisc: processadores 386 e os 486
Os chips atuais so na verdade misturas das duas arquiteturas. Internamente, a CPU
processa apenas instrues simples. Estas instrues internas, variam de processador para
processador, so como uma luva, que se adapta ao projeto do chip. As instrues internas de
um K6 so diferentes das de um Pentium por exemplo. Sobre estas instrues internas,
temos um circuito decodificador, que converte as instrues complexas utilizadas pelos
programas em vrias instrues simples que podem ser entendidas pelo processador. Estas
instrues complexas sim, so iguais em todos os processadores usados no PC. isso que
permite que um Athlon e um Pentium sejam compatveis.

O conjunto bsico de instrues usadas em micros PC chamado de conjunto x86. Este


conjunto composto por um total de 187 instrues, que so as utilizadas por todos os
programas. Alm deste conjunto principal, alguns processadores trazem tambm instrues
alternativas, que permitem aos programas executar algumas tarefas mais rapidamente do
que seria possvel usando as instrues x86 padro. Alguns exemplos de conjuntos
alternativos de instrues so o MMX (usado a partir do Pentium MMX), o 3D-NOW! (usado
pelos processadores da AMD, a partir do K6-2), e o SSE (suportado pelo Pentium III).
Semana 7

Modo de Endereamento, Tipo de Dados, Conjunto de Instrues, interrupes

ARQUITETURA E ORGANIZAO DE
COMPUTADORES
Pedido de interrupo (IRQ) - "Interrupt Request Line"
IRQ um evento que pode ocorrer em qualquer instante por conta de diversos
tipos de atividades, servindo ento, para anunciar que algo esperado ou
inesperado ocorreu.

Os endereos de IRQ so interrupes de hardware, canais que os dispositivos podem


utilizar para chamar a ateno do processador. Apesar de podermos rodar muitos
programas ao mesmo tempo, os processadores so capazes de fazer apenas uma tarefa
de cada vez. A multitarefa surge de um chaveamento muito rpido entre os aplicativos
abertos, dando a impresso de que todos realmente esto sendo executados ao mesmo
tempo.
Quando o processador est ocupado, processando qualquer tarefa e o usurio digita um caractere do teclado,
o modem precisa transmitir dados para o processador, ou qualquer coisa do gnero, os dispositivos utilizam o
recurso IRQ. Ao ser avisado atravs de qualquer um destes canais, o processador imediatamente para
qualquer coisa que esteja fazendo e d ateno ao dispositivo, voltando ao trabalho logo depois.

Os endereos IRQ no podem ser compartilhados entre dois ou mais dispositivos, e existem apenas 16
endereos disponveis, que no podem ser expandidos. Atualmente muitas placas PCI podem compartilhar o
mesmo IRQ, mas na verdade apenas um dispositivo, o controlador PCI usa um canal de interrupo, como
veremos com detalhes mais adiante.

O PC XT tinha apenas 8 endereos de IRQ, numerados de 0 a 7. A explicao simples, o XT usava o


processador 8088.
IRQ 0 - Sinal de clock da placa me
Num PC atual, os endereos de IRQ, esta a
IRQ 1 - Teclado
configurao de endereos mais comum:
IRQ 2 - Cascateador de IRQs
IRQ 3 - Porta serial 2
IRQ 4 - Porta serial 1
IRQ 5 - Livre
IRQ 6 - Drive de disquetes
IRQ 7 - Porta paralela
IRQ 8 - Relgio do CMOS
IRQ 9 - Placa de vdeo
IRQ 10 - Livre
IRQ 11 - Controlador USB
IRQ 12 - Porta PS/2
IRQ 13 - Coprocessador aritmtico
IRQ 14 - IDE Primria
IRQ 15 - IDE Secundria
O barramento PCI, possui o recurso de PCI Steering, que permite que dois ou mais
perifricos PCI compartilhem o mesmo endereo de IRQ. Neste caso, o controlador PCI
passa a atuar como uma ponte entre os perifricos e o processador. Ele recebe todos os
pedidos de interrupo, os encaminha para o processador e, ao receber as respostas,
novamente os encaminha para os dispositivos corretos. Como o controlador o nico
diretamente conectado ao processador possvel ocupar apenas um endereo de IRQ.

Alm do barramento PCI, outros barramentos usados atualmente permitem


compartilhar um nico IRQ entre vrios perifricos. O USB um bom
exemplo, o controlador ocupa um nico IRQ, que compartilhado entre
todas as portas USB e todos os dispositivos conectados a elas. Mesmo que a
sua placa me tenha 6 portas USB e voc utilize todas, ter ocupado apenas
um endereo.
Advanced Programmable Interrupt Controller
APIC Controlador Avanado de Interrupo Programvel

A partir das placas soquete 7, os dois controladores de


interrupes foram substitudos por um controlador
aprimorado, batizado de APIC, que preserva a
compatibilidade com os dois controladores antigos,
permitindo que placas de legado e sistemas operacionais
antigos continuem funcionando normalmente.

Originalmente, ele foi desenvolvido para melhorar a eficincia de sistemas com dois ou mais processadores,
mas ele traz benefcios mesmo em mquinas com apenas um.
Para que o APIC possa ser ativado, necessrio que exista suporte por parte do
processador (todos os processadores a Partir do Pentium 1 o suportam), por parte da placa
me (o suporte foi introduzido a partir das placas soquete 7, de forma que todas as placas
atuais o suportam) e tambm por parte do sistema operacional. Na famlia Windows, o
suporte foi introduzido a partir do Windows 2000, enquanto no Linux ele existe desde a
srie 2.4 do Kernel.
O APIC pode ser desativado atravs da opo "APIC Function" (ou
similar) do Setup, mas importante mant-lo ativado em qualquer PC
atual (sobretudo ao usar as verses atuais do Windows), pois ele
acrescenta 8 novos endereos de IRQ, de 16 ao 23, alm de melhorar
sensivelmente o sistema de atribuio automtica de endereos.
Direct memory access
DMA Acesso direto memria
O DMA visa melhorar a performance geral do micro, permitindo que os
perifricos transmitam dados diretamente para a memria, poupando o
processador de mais esta tarefa.
Existem 8 portas de DMA e, como acontece com os pedidos de
interrupo, dois dispositivos no podem compartilhar o mesmo
canal DMA, caso contrrio haver um conflito. Os 8 canais DMA so
numerados de 0 a 7, sendo nos canais de 0 a 3 a transferncia de
dados feita a 8 bits e nos demais a 16 bits. O uso de palavras
binrias de 8 bits pelos primeiros 4 canais de DMA visa manter
compatibilidade com perifricos mais antigos.
Justamente por serem muito lentos, os canais de DMA so utilizados apenas por
perifricos lentos, como drives de disquete, placas de som e portas paralelas.
Perifricos mais rpidos, como discos rgidos, utilizam o Bus Mastering, uma
espcie de DMA melhorado.
Bus Mastering um recurso suportado por algumas arquiteturas de
barramento, que permitem que um controlador - principalmente discos
rgidos, unidades de CD-ROM e DVD-ROM, conectado a interface IDE ou SATA -
se comunique diretamente com outro dispositivo, ou seja, a memria. Quem
monitora essa operao no ser o processador, e sim o chipset da placa me,
ou seja, um conjunto de circuitos de apoio placa me. Os barramentos
atuais, incluindo PCI, suportam o bus mastering devido ao seu ganho de
performance significativo, e atualmente quase todas as placa mes modernas
suportam bus mastering.
DMA 0 Disponvel

DMA 1 Placa de Som

DMA 2 Controladora de drives de disquetes

DMA 3 Porta paralela padro ECP

DMA 4 Reservado placa me

DMA 5 Placa de Som

DMA 6 Disponvel

DMA 7 Disponvel
Tipo de dados

Tipos de variveis ou dados so uma combinao de valores que uma


varivel pode executar, o que pode variar conforme a linguagem de
programao. So utilizados para indicar ao compilador ou interpretador
as converses necessrias para obter os valores em memria durante a
construo do programa.

printf ("O tipo char ocupa %d bytes\n", sizeof(char));


Tipo forte e fraco

Linguagens implementadas com tipificao forte (linguagem fortemente


tipificada), tais como Java e Pascal, exigem que o tipo de dado de um valor
seja do mesmo tipo da varivel ao qual este valor ser atribudo. Exemplo:
(Sintaxe genrica)
Ocorrer um erro ao compilar a linha 7, pois o valor "13.1", que
1. Declarar Variveis do tipo REAL, precisa ser convertido para o tipo de dado
2. TEXTO: nome INTEIRO.

3. INTEIRO: idade
Onde esta
4. o erro? Em linguagens com tipos de dados fracos, tais como PHP e
VBScript, a converso no se faz necessria, sendo realizada
5. Atribuies
implicitamente pelo compilador ou interpretador.
6. nome = "Fulano"
7. idade = 13.1
Tipo primitivo e composto
Um tipo primitivo (tambm conhecido por nativo ou bsico) fornecido por uma
linguagem de programao como um bloco de construo bsico.
EX.
Caractere, ponto flutuante (representa o conjunto dos nmeros
reais), booleano (lgica booleana, verdadeiro ou falso) e algum tipo
de referncia (ponteiro).
Um tipo composto pode ser construdo em uma linguagem de
programao a partir de tipos primitivos e de outros tipos
compostos, em um processo chamado composio. - Array
Espera-se que operaes envolvendo tipos primitivos sejam as construes mais
rpidas da linguagem.
Semana 8

Conceitos: primeira, segunda, terceira e quarta gerao de computadores

ARQUITETURA E ORGANIZAO DE
COMPUTADORES
O computador uma mquina ou dispositivo capaz de executar uma
sequncia de instrues definidas pelo homem para gerar um determinado
resultado, o qual atenda a uma necessidade especfica (ex.: realizar clculos,
gerar relatrios).

Essa sequncia de instrues denominada algoritmo, o qual pode ser definido


como um conjunto de regras expressas por uma sequncia lgica finita de
instrues, que ao serem executadas pelo computador, resolvem um problema
especfico.

Assim, podemos dizer que um ou mais algoritmos compem o que conhecemos


como programa de computador, que no mbito profissional da rea de
informtica conhecido como software.
As partes fsicas de um computador, tais como: dispositivos de entrada e sada
(ex.: monitor, teclado, impressora, webcam), dispositivos de armazenamento
(ex. memria voltil e permanente), processador, assim como todo o conjunto
de elementos que compem um computador so chamados de hardware
Computadores analgicos x digitais

Os computadores podem ser classificados em dois tipos principais: analgicos e


digitais.
Os computadores analgicos no trabalham com nmeros nem com smbolos
que representam os nmeros; eles procuram fazer analogia entre quantidades
(ex. pesos, quantidade de elementos, nveis de tenso, presses hidrulicas).

Alguns exemplos desse tipo de computador so o baco que se utilizava de


pequenos carretis embutidos em um pequeno filete de metal para realizar
clculos ou a rgua de clculo que utiliza comprimentos de escalas
especialmente calibradas para facilitar a multiplicao, a diviso e outras
funes.
Pode-se dizer que o computador analgico uma categoria de computadores
que se utiliza de eventos eltricos, mecnicos ou hidrulicos para resolver
problemas do homem. Ou seja, tais computadores representam o
comportamento de um sistema real utilizando-se para isso de grandezas fsicas.
No incio do sculo XX as primeiras calculadoras mecnicas, caixas registradoras
e mquinas de clculo em geral foram redesenhadas para utilizar motores
eltricos, com a posio das engrenagens representando o estado de uma
varivel. Exemplos de variveis utilizadas em computadores analgicos so: a
intensidade de uma corrente eltrica em um resistor, o ngulo de giro de uma
engrenagem, o nvel de gua em um recipiente.
Diferentemente dos computadores analgicos, que representam nmeros por
meio da analogia direta entre quantidades, os computadores digitais resolvem
problemas realizando operaes diretamente com nmeros, enquanto os
analgicos medem.
Os computadores digitais resolvem os problemas realizando
clculos e tratando cada nmero, dgito por dgito. De
acordo com Monteiro (2007), um computador digital uma
mquina projetada para armazenar e manipular
informaes representadas apenas por algarismos ou
dgitos, que s podem assumir dois valores distintos, 0 e 1,
razo pela qual denominado de computador digital.
Outra grande diferena dessa categoria de computadores que eles podem
resolver problemas por meio de uma sequncia programada de instrues com
o mnimo de interveno humana.
Assim, podemos dizer que o computador digital surgiu como uma soluo
rpida e com um nvel de automao bem mais elevado de realizar grandes
computaes numricas. Muitas so as necessidades do homem em termos de
computao, especialmente nas reas de engenharia, alm de demonstraes
e aplicaes tericas (ex.: clculo de um fatorial, progresses aritmticas). Sem
o uso da tecnologia, muitos clculos manuais se tornavam inviveis, tanto pelo
custo em termos de esforo quanto pelo risco de gerar resultados incorretos.
Dessa forma, os computadores digitais foram um passo determinante para o
progresso que possvel perceber atualmente em termos de computao.
Gerao zero: computadores mecnicos (1642-1945)

Essa gerao foi caracterizada pelos computadores essencialmente


analgicos, os quais eram construdos a partir de engrenagens mecnicas e
eletromecnicas, operavam em baixa velocidade e eram destinados a
resolver problemas especficos. So exemplos dessa gerao, alm dos j
citados anteriormente, o mecanismo de Antikythera, a mquina de Pascal e a
mquina das diferenas de Babbage.
Primeira gerao: vlvulas (1945-1955)

Podemos dizer que a Segunda Guerra Mundial foi o marco


do surgimento da computao moderna. Foi nesse
contexto que comearam a surgir novas tecnologias mais
modernas capazes de substituir os componentes
mecnicos utilizados at ento nos computadores
analgicos, possibilitando o surgimento dos computadores
digitais. Esse foi um dos motivos pelos quais os
computadores da poca ficaram conhecidos como
computadores de primeira gerao.
Alguns dos componentes utilizados na fabricao desses
computadores eram os rels, os capacitores e as vlvulas,
sendo as ltimas o mais importante deles. As vlvulas
possibilitaram clculos milhares de vezes mais rpidos do
que os efetuados com os rels eletromecnicos utilizados
inicialmente.
A entrada de dados e instrues nesses computadores, bem como a sua
memria temporria, ocorria frequentemente pela utilizao de cartes
perfurados. Como os computadores tinham seu funcionamento baseado em
vlvulas (cuja funo bsica era controlar o fluxo da corrente, amplificando a
tenso que recebe de entrada), normalmente quebravam aps algum tempo
de uso contnuo em funo da queima delas, o que resultava em uma falta de
confiabilidade, principalmente nos resultados finais. Alm de ocupar muito
espao, seu processamento era lento e o consumo de energia elevado.
Dentre as primeiras calculadoras e os primeiros computadores (eletrnicos) a
utilizarem vlvulas, destacamos:

a) ENIAC, na Universidade da Pennsylvania;


b) IBM 603, 604, 701 e SSEC;
c) EDSAC, na Universidade de Cambridge;
d) UNIVAC I, de Eckert e Mauchly.
Algumas caractersticas do Eletronic Numerical Integrator
and Computer (ENIAC).

a) levou trs anos para ser construdo;


b) funcionava com aproximadamente 19.000 vlvulas;
c) consumia 200 quilowatts;
d) pesava 30 toneladas;
e) tinha altura de 5,5m;
f) seu comprimento era de 25 m;
g) tinha o tamanho de 150 m.
possvel imaginar a quantidade de energia consumida e o calor produzido por
quase 19.000 vlvulas?!

A finalidade do ENIAC era o clculo de tabelas de balstica para o exrcito


americano. Tratava-se de uma mquina decimal, ou seja, no binria (baseada
em 0s e 1s) e sua programao envolvia a configurao de diversos cabos e
chaves, podendo levar vrios dias.
Modelo de Von Neumann
John Von Neumann foi um matemtico natural da Hungria que viveu a maior
parte de sua vida nos Estados Unidos. Contribuiu de forma significativa para a
evoluo dos computadores. Suas contribuies perduram at os dias atuais,
sendo que a principal delas foi a construo de um computador sequencial
binrio de programa armazenado. Podemos dizer que ele props os elementos
crticos de um sistema computacional, denominado de Modelo de Von
Neumann. A arquitetura de computador proposta por esse modelo composta
basicamente por:
a) uma memria fsica (para armazenar programas e dados representados
por 0s e 1s);
b) uma Unidade Aritmtica e Lgica (ULA), cuja funo executar operaes
indicadas pelas instrues de um programa. Seu trabalho apoiado por
diversos registradores (ex.: acumulador);
c) uma Unidade de Controle (UC), cuja funo buscar um programa na
memria, instruo por instruo, e execut-lo sobre os dados de entrada
(que tambm se encontram na memria); e
d) equipamento de entrada e sada.
Segunda gerao: transistores (1955-1965)

Nessa gerao, a vlvula foi substituda pelo transistor, o qual passou a ser
um componente bsico na construo de computadores. O transistor foi
desenvolvido pelo Bell Telephones Laboratories em 1948.

Esse dispositivo reduziu de forma significativa o volume dos computadores


e aumentou a sua capacidade de armazenamento. Alm disso, o
transistor apresentava aquecimento mnimo, baixo consumo de energia e
era mais confivel que as vlvulas (que queimavam com facilidade). Para
voc ter uma ideia, um transistor apresentava apenas 1/200 (0, 005) do
tamanho de uma das primeiras vlvulas e consumia menos de 1/100 (0,01)
da sua energia.
A funo bsica do transistor em circuitos componentes de um computador o
de um interruptor eletrnico para executar operaes lgicas. Existem diversos
modelos de transistores, os quais podem possuir caractersticas diferenciadas de
acordo com a sua aplicao.

Os materiais utilizados na fabricao do transistor


so principalmente: o silcio (Si), o germnio (Ge), o
glio (Ga) e alguns xidos.
Terceira gerao: circuitos integrados (1965-1980)
a partir dessa gerao que surgem os primeiros circuitos integrados (CI):
dispositivos que incorporam inmeros transistores e outros componentes
eletrnicos em formato de miniaturas em um nico encapsulamento. Portanto,
cada chip equivalente a inmeros transistores. Essa tecnologia substitua os
transistores, e apresentam as seguintes vantagens: maior confiabilidade (no
possui partes mveis); muito menores (equipamento mais compacto e mais
rpido pela proximidade dos circuitos); baixo consumo de energia
(miniaturizao dos componentes) e custo de fabricao muito menor.
Dessa forma, os computadores passaram a tornar-se mais acessveis.
Diferentemente dos computadores das geraes anteriores, a
entrada de dados e instrues passaram a ser realizadas por
dispositivos de entrada e sada, tais como teclados e monitores. A
velocidade do processamento era da ordem de microssegundos.
Um dos computadores considerados precursor dessa gerao foi o
IBM 360, o qual era capaz de realizar 2 milhes de adies por
segundo e cerca de 500 mil multiplicaes, tornando seus
antecessores totalmente obsoletos.
Quarta gerao: microprocessadores (1970 - atual)

H circuitos integrados de diversos tamanhos, tipos e funes, desde os que


contm algumas dezenas de milhares de transistores at circuitos integrados
extraordinariamente mais complexos e inteligentes ou seja, capazes de
cumprir mltiplas funes de acordo com comandos ou instrues a eles
fornecidos.
A partir de 1970, as evolues tecnolgicas ocorreram principalmente na
miniaturizao dos componentes internos dos computadores; entretanto, os
avanos ficaram relacionados escala de integrao dos circuitos integrados,
ou seja, na quantidade de dispositivos era possvel incluir em um nico chip
Nessa gerao os circuitos passaram a uma larga escala
de integrao Large Scale Integration (LSI), a partir do
desenvolvimento de vrias tcnicas, e aumentou
significativamente o nmero de componentes em um
mesmo chip.
Em 1970, a INTEL Corporation lanou no mercado um tipo
novo de circuito integrado: o microprocessador. Os
microprocessadores concentravam todos os componentes
principais de um computador: a Central Processing Unit
(CPU) ou Unidade Central de Processamento; controladores
de memria e de entrada e sada. Assim, os primeiros
computadores ao utilizarem o microprocessador eram
denominados computadores de quarta gerao.

Trabalho: Pesquisa sobre Computadores Qunticos.


Componentes bsicos de um sistema computacional

Segundo a arquitetura de Von Neumann, os computadores possuem quatro


componentes principais: Unidade Central de Processamento (UCP) composta
pela Unidade Lgica e Aritmtica (ULA) e a Unidade de Controle (UC), a
memria e os dispositivos de entrada e sada. Tais componentes so
interconectadas por barramentos. E todos esses itens constituem o hardware de
um computador (seu conjunto de componentes fsicos), os quais so agrupados
em mdulos especficos, constituindo a estrutura bsica de um computador.
a) UCP: sigla representativa de Unidade Central de Processamento. Podemos dizer
que se trata do componente principal do computador. Algumas pessoas chamam
de processador ou microprocessador. responsvel pela execuo de dados e
instrues armazenadas em memria (cdigo de programas e dados);

b) Memria: existem diversos tipos de memria em um computador (ex.: RAM


(principal), ROM, cache, registradores), mas existe uma delas denominada memria
principal, a qual indispensvel. A memria principal to importante quanto a
UCP, pois sem ela no seria possvel disponibilizar os programas e seus dados para o
processamento pela CPU. Portanto, a memria responsvel por armazenar todos
os programas que executam no computador e os dados que utilizam;

c) Dispositivos de Entrada e Sada (E/S): so dispositivos responsveis pelas entradas


e sadas de dados, ou seja, pelas interaes entre o computador e o mundo
externo (usurios). So exemplos de dispositivos de E/S: monitor de vdeo, teclado,
mouse, webcam, impressora, entre outros;

d) Barramento: responsvel por interligar todos os componentes listados acima.


Trata-se de uma via de comunicao composta por diversos fios ou condutores
eltricos por onde circulam os dados manipulados pelo computador.
Para o funcionamento adequado de um computador, necessrio dispor, nele mesmo, de diferentes
tipos de memria. Em algumas tarefas, pode ser fundamental que a transferncia de dados seja feita da
forma mais rpida possvel o caso das tarefas realizadas pela CPU, onde a velocidade fator
preponderante, ao passo que a quantidade de bits a ser manipulada muito pequena. Esse tipo de
memria deve possuir caractersticas diferentes daquele em que a capacidade de armazenamento
mais importante que a sua velocidade de transferncia de e para outros dispositivos. Destacamos que a
necessidade da existncia de vrios tipos de memria ocorre em virtude de vrios fatores concorrentes,
mas principalmente em funo do aumento da velocidade das CPUs (a qual muito maior do que o
tempo de acesso da memria) e da capacidade de armazenamento.

HIERARQUIA DE MEMRIA
Se existisse apenas um tipo de memria, sua velocidade deveria ser compatvel com a
da CPU, de modo que esta no ficasse esperando muito tempo por um dado que
estivesse sendo transferido. Segundo Patterson e Hannessy (2000), a CPU manipula
um dado em 5 ns, ao passo que a memria transfere um dado em 60 ns.
Considerando os diversos tipos de memrias existentes, as quais variam em funo de
sua tecnologia de fabricao, capacidade de armazenamento, velocidade e custo, pode-
se dizer que fica muito difcil projetar um computador utilizando-se apenas um nico tipo
de memria. Dessa forma, segundo Monteiro (2007), o computador possui muitas
memrias, as quais se encontram interligadas de forma bem estruturada, constituindo o
que chamado de subsistema de memria, o qual parte do sistema computacional
O subsistema de memria projetado de modo que seus componentes sejam organizados hierarquicamente. A Figura
abaixo apresenta uma pirmide contendo a hierarquia das memrias existentes em um computador. Observa-se que a
base da pirmide larga, simbolizando a elevada capacidade de armazenamento, o tempo de uso, a velocidade e o
custo de sua tecnologia de fabricao. Assim, a base da pirmide representa dispositivos de armazenamento de
massa (memria secundria), de baixo custo por byte armazenado, mas ao mesmo tempo com baixa velocidade de
acesso. A flecha na direo do topo indica que quanto mais rpidas forem as memrias, mais elevado ser o seu custo
em relao tecnologia e menor a sua capacidade de armazenamento em um computador.
Registradores

A funo da memria a de armazenar dados destinados a serem, em algum momento, utilizados pelo
processador (MONTEIRO, 2007). O processador busca dados e instrues de onde estiverem armazenadas e
os deposita temporariamente em seu interior para que possa realizar as operaes solicitadas utilizando seus
demais componentes. Os dispositivos denominados registradores so os locais onde esse contedo fica
armazenado.
Assim, o conceito de registrador surgiu da necessidade do processador de armazenar temporariamente dados
intermedirios durante um processamento.

Os registradores so dispositivos de armazenamento temporrio (voltil), localizados no interior do processador


(CPU). Por causa da tecnologia utilizada, os registradores so um tipo de memria extremamente rpida e
bastante cara. Por esse motivo, sua disponibilidade em um computador muito limitada. Cada registrador
possui capacidade para manter apenas um dado (uma palavra).
Memria cache

Considerando que o processador precisa buscar dados e instrues em uma memria externa
(memria principal), para process-los e, considerando que a tecnologia desenvolvida para os
processadores fez com que se esses dispositivos sejam bem mais rpidos que a memria principal,
surgiu a necessidade de diminuir esse atraso gerado pela transferncia de dados entre a memria e o
processador.
Na busca de solues para a limitao imposta pela comunicao entre processador e memria, foi
desenvolvida uma tcnica que consiste na incluso de um dispositivo de memria entre a memria
principal e o processador. Esse dispositivo denominado memria cache. Sua funo principal
acelerar a velocidade de transferncia das informaes entre processador e memria principal e, com
isso, aumentar o desempenho dos sistemas de computao. As memrias cache so volteis, assim
como os registradores, pois dependem de energia para manter o seu contedo armazenado.
A memria cache um tipo de memria construda com tecnologias semelhantes s do processador,
elevando os custos de produo. Para amenizar o fator custo e dispor das vantagens de um sistema
computacional com desempenho mais rpido, foram incorporadas ao computador pequenas pores de
memria cache, localizadas internamente ao processador e entre ele e a memria principal, as quais
funcionam como um espelho de parte da memria principal.

A tecnologia de fabricao da memria cache SRAM (Static Random Access Memory), a qual bastante
diferente das memrias DRAM (Dynamic Random Access Memory) tecnologia da memria principal. A
diferena que nas memrias SRAM no h necessidade de refresh ou realimentao constante para
que os dados armazenados no sejam perdidos.
Memria principal

um tipo de memria indispensvel para o


funcionamento do computador, qual o processador pode
fazer acesso direto. Alm de alocar os dados e instrues
de programas a serem manipulados pelo processador,
esse tipo de memria d acesso s memrias
secundrias, de forma a disponibilizar dados ao
processador.
A memria principal denominada memria RAM
(Random Access Memory), corresponde a um tipo de
memria voltil, ou seja, seu contedo fica armazenado
enquanto o computador estiver ligado (energizado); ao
desligar a corrente eltrica, o contedo da memria RAM
apagado. Esse o motivo pelo qual muitas pessoas
perdem arquivos que esto utilizando quando ocorrem
fatos como, por exemplo, algum esbarrar no cabo ligado
tomada de energia eltrica ou mesmo cessar o
fornecimento de energia. Isso acontece porque ao
ocorrerem tais fatos, o arquivo ainda no havia sido salvo
em algum tipo de memria permanente (ex.: o disco do
computador).
A memria RAM denominada genericamente de DRAM (Dynamic RAM), ou RAM dinmica, pelo fato de
possuir uma caracterstica chamada refrescamento de memria, que tem a finalidade de manter os
dados armazenados enquanto o computador estiver ligado. Essa denominao est ligada tecnologia
utilizada na fabricao desse tipo de memria, a qual se baseia na utilizao de dispositivos
semicondutores, mais especificamente capacitores associados a transistores para representar bits de
dados armazenados. So mais lentas e possuem custo muito menor e capacidade de armazenamento de
dados consideravelmente maior que as memrias estticas (ex.: cache).
Atualmente, podemos contar com muitas opes de padres de memria RAM, devido busca constante
por uma memria de maior capacidade, maior velocidade de acesso, menor consumo de energia e de
tempo de realimentao.

DDR (Double Data Rate): duplicam o desempenho da memria, possibilitando a


transferncia de dois lotes de dados entre processador e memria por ciclo de clock.
DDR-2: possibilitam a transferncia de quatro lotes de dados por ciclo de clock e
apresentam menor consumo de energia que a DDR original.
DDR-3: transferem oito lotes de dados por ciclo de clock e consomem ainda menos
energia que sua verso anterior.
A memria RAM comercializada para uso nos computadores no formato de pentes ou mdulos de memria,
contendo uma determinada quantidade desses recursos. Os pentes de memria podem variar de acordo com
as caractersticas apresentadas pela memria, especialmente ligadas ao desempenho ou velocidade de
transferncia. Sendo assim, existem diferentes modelos de mdulos de memria disponveis no mercado.
Dentre os que so utilizados atualmente, podem-se citar:

a) Mdulos SIMM (Single In Line Memory Module): apresentam um pequeno orifcio nas linhas de contato.
Foram utilizados em memrias FPM e EDO RAM. No se encontram disponveis no mercado atualmente;
b) Mdulos DIMM (Double In Line Memory Module): no apresentam orifcios nas linhas de contato e
apresentam contatos em ambos os lados do mdulo. So utilizados atualmente em memrias DDR, DDR2
e DDR3.
Memria ROM

A memria ROM (Read Only Memory) tambm considerada uma memria principal, mas apresenta algumas
diferenas em relao memria RAM. A primeira delas o fato de ser uma memria somente de leitura, ou seja, seu
contedo escrito uma vez e no mais alterado, apenas consultado. Outra caracterstica das memrias ROM que
elas so do tipo no volteis, isto , os dados gravados no so perdidos na ausncia de energia eltrica ao
dispositivo.
dito que um software que armazenado em uma memria ROM passa a ser chamado de firmware. Em um
computador existem diversos software desse tipo disponveis em memrias ROM, pois no podem ser apagados ao
desligar o computador e devem ficar disponveis sempre que for necessrio.
Dessa forma, as memrias ROM so aplicadas em um computador para armazenar trs programas principais
(TORRES, 2010):

a) BIOS (Basic Input Output System): ou Sistema Bsico de Entrada e Sada, responsvel por ensinar o
processador da mquina a operar com os dispositivos bsicos de entrada e sada;
b) POST (Power On Self Test): Autoteste programa de verificao e teste que se executa aps a ligao do
computador, realizando diversas aes sobre o hardware (ex.: contagem de memria);
c) SETUP: Programa que altera os parmetros armazenados na memria de configurao (CMOS).
a) PROM (Programmable Read-Only Memory): este um dos primeiros tipos de memria ROM. A gravao de
dados neste tipo realizada por meio de aparelhos que trabalham atravs de uma reao fsica com
elementos eltricos. Uma vez que isso ocorre, os dados gravados na memria PROM no podem ser
apagados ou alterados;
b) EPROM (Erasable Programmable Read-Only Memory): as memrias. EPROM tm como principal
caracterstica a capacidade de permitir que dados sejam regravados no dispositivo. Isso feito com o
auxlio de um componente que emite luz ultravioleta. Nesse processo, os dados gravados precisam ser
apagados por completo. Somente aps esse procedimento uma nova gravao pode ser realizada;
c) EEPROM (Electrically-Erasable Programmable Read-Only Memory): este tipo de memria ROM tambm
permite a regravao de dados; no entanto, ao contrrio do que acontece com as memrias EPROM, os
processos para apagar e gravar dados so feitos eletricamente, fazendo com que no seja necessrio
mover o dispositivo de seu lugar para um aparelho especial para que a regravao ocorra;
d) EAROM (Electrically-Alterable Programmable Read-Only Memory): as memrias EAROM podem ser vistas
como um tipo de EEPROM. Sua principal caracterstica o fato de que os dados gravados podem ser
alterados aos poucos, razo pela qual esse tipo geralmente utilizado em aplicaes que exigem apenas
reescrita parcial de informaes;
e) Flash: as memrias Flash tambm podem ser vistas como um tipo de EEPROM; no entanto, o processo de
gravao (e regravao) muito mais rpido. Alm disso, memrias Flash so mais durveis e podem
guardar um volume elevado de dados. Trata-se do tipo de memria utilizada em pen-drive;
f) CD-ROM, DVD-ROM e afins: essa uma categoria de discos pticos onde os dados so gravados apenas
uma vez, seja de fbrica, como os CDs de msicas, ou com dados prprios do usurio, quando este efetua
a gravao. H tambm uma categoria que pode ser comparada ao tipo EEPROM, pois permite a
regravao de dados: CD-RW e DVD-RW e afins.
Memria secundria

A memria secundria tambm denominada de memria de massa, por possuir uma capacidade de
armazenamento muito superior das outras memrias conforme discutido neste tpico. Outra caracterstica que
difere a memria secundria das outras memrias o fato de ser permanente (no voltil), ou seja, no perde o
contedo armazenado caso o computador seja desligado. Por estar na base da pirmide, apresenta o menor custo
por byte armazenado.
Este tipo de memria no possui acesso direto pelo processador, sempre havendo a necessidade de carregamento
de dados dos dispositivos de memria secundria para a memria principal, para que ento sejam enviados ao
processador.
De acordo com Monteiro (2007), a memria secundria pode ser constituda por diferentes tipos dispositivos, alguns
diretamente ligados ao sistema para acesso imediato (ex.: discos rgidos) e outros que podem ser conectados quando
desejado (ex.: pen-drive, CD/DVD).
Em relao tecnologia de fabricao, existe uma variedade muito grande de tipos, assim como a variedade de
dispositivos que se enquadra nessa categoria de memria. Para cada dispositivo, existem diferentes tecnologias de
fabricao, no sendo possvel abordar todas nessa seo.