Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Computadores
Sumrio
Organizao de Computadores
Unidade I
1 INTRODUO .......................................................................................................................................................1
1.1 O que um computador? ....................................................................................................................1
1.2 Mquinas multinveis ............................................................................................................................2
2 HISTRIA DA ARQUITETURA DE COMPUTADORES ...............................................................................6
2.1 Gerao zero computadores mecnicos (1642 1945) ......................................................6
2.2 Primeira gerao vlvulas (1945 1955) ............................................................................... 10
2.3 Segunda gerao transistores (1955 1965) ....................................................................... 13
2.4 Terceira gerao circuitos integrados (1965 1980) ........................................................ 15
2.5 Quarta gerao integrao em larga escala (1980 2000)............................................ 16
2.6 Quinta gerao computao ubqua (2000 em diante) ................................................... 20
Unidade II
Unidade IV
ORGANIZAO DE COMPUTADORES
Unidade I
1 INTRODUO
1.1 O que um computador?
computador
Datao 1789 cf. MS1
Acepes
substantivo masculino
1 O que computa; calculador, calculista;
10
2 Rubrica: informtica.
Mquina destinada ao processamento de dados;
dispositivo capaz de obedecer a instrues que visam
produzir certas transformaes nos dados, com o
objetivo de alcanar um m determinado.
15
Unidade I
longe corresponde capacidade que um desses dispositivos
possui.
O computador (de todos os portes imaginveis) hoje
desempenha as funes mais diversas e se tornou parte do
5 cotidiano de boa parte da populao (mesmo que ela no saiba
disso).
O problema que, em seu interior, o computador uma
mquina que consegue fazer muito poucas coisas. Somar e
comparar nmeros, mover valores de uma rea de memria
10 para outra e no muito mais que isso o que o computador
realmente consegue fazer, no importa o quo miraculoso ele
nos parea quando olhamos do lado de fora.
Chega a ser paradoxal que um equipamento limitado como
esse consiga ser capaz de ser usado em tantas aplicaes. Mas
15 no existe mgica aqui, apenas um longo e constante processo
evolucionrio que comeou no sculo XVII e ainda est longe
de acabar.
Explicar parte dos processos que tornam isso possvel
objetivo desta apostila.
1.2 Mquinas multinveis
20
ORGANIZAO DE COMPUTADORES
Era necessrio saber exatamente como os circuitos eletrnicos
(ou eletromecnicos) se interligavam para que se conseguisse
realizar as atividades mais simples.
medida que surgiu a necessidade de expandir a utilizao
5 dos computadores, foi necessrio criar mecanismos que
possibilitassem aos usurios realizar atividades sem que fosse
necessrio um conhecimento profundo da arquitetura desses
mecanismos.
Imaginemos que o computador possa realizar uma
10 quantidade limitada de instrues ou comandos. Chamemos
esse conjunto de linguagem de mquina.
Traduo
Unidade I
instruo que o computador consiga efetivamente executar
por meio de impulsos eltricos.
Esse processo de evoluo nos levou ao computador
contemporneo, que possui diversos nveis, por isso o
5 denominamos mquina multinveis. A interao entre cada
um dos nveis corresponde a um tipo de traduo.
O nvel 0, chamado lgico digital, corresponde aos circuitos
eletrnicos que efetivamente realizam o processamento
de informaes na forma de impulsos eltricos dentro do
10 processador.
O nvel 1 corresponde microarquitetura do processador,
que so elementos internos do processador: registradores (que
so a memria de alta velocidade interna do processador)
e a ULA unidade lgica aritmtica (que o elemento do
15 processador que realiza operaes aritmticas simples). Esses
registradores so conectados ULA para formar um caminho
de dados, atravs do qual os dados transitam para dentro e
para fora do processador. Uma operao normal do caminho
de dados consiste em selecionar o contedo de um ou dois
20 registradores, submet-lo ULA e movimentar o resultado
para outro registrador.
O nvel 2 corresponde ao conjunto de instrues suportado
pelo processador. O conjunto de instrues corresponde aos
comandos que o processador pode receber de fontes externas e
25 determinado pelo projeto do processador, e normalmente no
pode ser alterado. O conjunto de instrues tambm comum
entre os processadores de uma mesma famlia, permitindo assim
a interoperabilidade de programas e sistemas operacionais
dentro dessa famlia.
30
ORGANIZAO DE COMPUTADORES
em se tratando de sistemas multitarefa. No possvel existir um
sistema multitarefa sem que exista um elemento arbitrando o
acesso ao hardware essa funo do sistema operacional. Em
sistemas computacionais modernos, todo acesso ao hardware
5 feito por meio do sistema operacional.
O nvel 4 corresponde linguagem de montagem. A linguagem
de montagem, ou assembly, uma linguagem dependente da
plataforma, ou seja, processadores diferentes ou de famlias
diferentes possuem linguagens de montagem diferentes
10 incompatveis entre si. Um programa escrito em linguagem de
montagem s pode ser usado em uma determinada plataforma
ou famlia de processadores.
O nvel 5 corresponde linguagem orientada a problemas,
ou linguagem de alto nvel. Esse tipo de linguagem independe
15 da plataforma em que for usada; ela deve ser traduzida
(compilada) para um formato que o sistema operacional
consiga interpretar e enviar para os nveis mais baixos da
mquina multinveis.
Traduo
(compilao)
Traduo
(montagem)
Linguagem de montagem
Interpretao
Sistema Operacional
Interpretao
Hardware
Conjunto de instrues
Microarquiterura
Unidade I
2 HISTRIA DA ARQUITETURA DE
COMPUTADORES2
ORGANIZAO DE COMPUTADORES
von Leibniz criou um dispositivo que podia executar as quatro
operaes bsicas.
Unidade I
Apesar da aceitao de suas ideias e do nanciamento do
governo britnico, Babbage tinha planos mais ambiciosos. Ele
vislumbrou um dispositivo programvel. Esta nova mquina
foi batizada de mquina analtica, e continha vrios conceitos
5 presentes ainda hoje nos computadores modernos, como um
dispositivo de entrada (uma leitora de cartes perfurados),
dispositivos de sada (impressora e perfuradora de cartes),
memria (capaz de armazenar mil nmeros) e uma unidade
aritmtica (chamada de moinho).
10
ORGANIZAO DE COMPUTADORES
a surgir dispositivos calculadores eletromecnicos utilizando
rels.
Na Alemanha, Konrad Zuse construiu uma srie de
equipamentos para executar clculos usando rels. Todos os seus
5 equipamentos foram destrudos durante a guerra, o que impediu
que seus designs tivessem inuncias nos desenvolvimentos
subsequentes.
Pouco tempo depois de Zuse, na Universidade de Iowa, nos
Estados Unidos, John Atanasoff projetou um equipamento para
10 fazer clculos que utilizava aritmtica binria e capacitores
como memria de armazenamento. Da mesma forma que
outros predecessores, o projeto de Atanasoff nunca se tornou
operacional.
Simultaneamente, tambm nos Estados Unidos, George
15 Stibbitz construiu um equipamento para fazer clculos que
realmente funcionava, apesar de ser menos sosticado que o
projeto de Atanasoff. Stibbitz fez uma grande demonstrao
de sua criao em 1940. Entre os que assistiram a essa
demonstrao estava John Mauchley, que depois daria suas
20 prprias contribuies histria do computador.
Zuse, Stibbitz e Atanasoff estavam tentando criar
mquinas calculadoras automticas. Apesar de compartilharem
componentes com os computadores, elas tinham um propsito
nico: realizar clculos. Nenhum desses projetos tencionava ser
25 o que Babbage tinha almejado no sculo XIX: um equipamento
programvel.
O prximo passo neste caminho foi dado tambm nos
Estados Unidos em 1944: Howard Aiken construiu o Harvard
Mark I, o primeiro computador digital da histria. Ele era
30 capaz de realizar clculos. Aiken baseou-se nos conceitos de
Babbage para criar o Mark I. Apesar de ter sido bem-sucedido,
o sucessor do Mark I, o Mark II, j estava obsoleto ao ser
Unidade I
concludo. A era dos computadores eletromecnicos havia
chegado ao fim.
Comeava a era dos computadores eletrnicos.
2.2 Primeira gerao vlvulas (1945 1955)
10
ORGANIZAO DE COMPUTADORES
Entretanto, dcadas depois do nal da guerra o trabalho
de um grupo de cientistas britnico veio a pblico. No auge
da Segunda Grande Guerra, a Alemanha nazista utilizava um
equipamento eletromecnico para codicar mensagens de
5 forma muito mais eficiente do que os mtodos manuais:
trata-se da mquina Enigma.
11
Unidade I
Hoje, aps uma srie de fuses e aquisies, essa companhia
parte da Unisys Corporation.
Naquela poca de interesse orescente, um dos cientistas
envolvidos no projeto do ENIAC deu uma contribuio
5 fundamental para a evoluo do computador moderno.
Seu nome era John von Neumann, e uma das coisas que ele
percebeu nos computadores da poca que programar um
computador usando quantidades enormes de cabos e chaves
era uma tarefa demorada e tediosa. Ele tambm apontou a
10 vantagem de usar os dados armazenados em forma binria
em vez de decimal (como o ENIAC fazia). O projeto bsico que
ele concebeu na dcada de 1940 foi utilizado na construo
da mquina IAS. Essa arquitetura foi batizada de mquina
de Von Neumann e at hoje a estrutura bsica de qualquer
15 computador comercial.
Memria
Unidade de
controle
Unidade lgico
aritmtica
Acumulador
Entrada
Sada
12
ORGANIZAO DE COMPUTADORES
2.3 Segunda gerao transistores (1955
1965)
13
Unidade I
Alguns anos mais tarde, a DEC lanou uma nova mquina, o
PDP-8. Alm de ser mais barata que o PDP-1 (16 mil dlares), ela
trouxe uma inovao importante: o uso de um barramento. Essa
arquitetura representou uma mudana importante em relao
5 da mquina IAS, que era centrada na memria e usada em
computadores at hoje.
CPU
Memria
Terminal
de
Console
E/S de
ta de
papel
Outras
E/S
Omnibus
14
ORGANIZAO DE COMPUTADORES
2.4 Terceira gerao circuitos integrados
(1965 1980)
15
Unidade I
implementaes de multitarefa, aumenta a utilizao da
CPU. E tambm torna mais importante uma gura at ento
desconhecida: o sistema operacional. O conceito de multitarefa
s pode existir com a presena de um sistema operacional.
5
16
ORGANIZAO DE COMPUTADORES
Esses primeiros computadores no tinham muita aplicao
prtica, pois, alm de montar seus computadores, os usurios
tinham que desenvolver seus prprios programas.
Apesar das limitaes desses equipamentos, diversas
5 empresas investiram no nascente mercado de computao
pessoal. Uma das mais bem-sucedidas foi a Apple, fundada por
Steve Jobs e Steve Wozniak, cujo modelo Apple II (lanado em
1977) foi um sucesso comercial. O sucesso do Apple II foi to
signicativo na poca de seu lanamento que a Apple se tornou
10 um grande fabricante de computadores praticamente da noite
para o dia.
17
Unidade I
IBM foi cometido nessa poca. Ela no resguardou seu produto
por patentes; muito pelo contrrio, ela divulgou publicamente
os dados do projeto de seu microcomputador.
O resultado foi o surgimento de toda uma indstria de PC
5 Clones, ou computadores-padro IBM PC, da qual uma pequena
parte apenas era fabricada e vendida pela IBM.
20
18
ORGANIZAO DE COMPUTADORES
19
Unidade I
2.6 Quinta gerao computao ubqua
(2000 em diante)
20
ORGANIZAO DE COMPUTADORES
Mas, alm do barateamento e aumento de capacidade de
elementos como dispositivos de armazenamento (discos e
afins) e memria, o desenvolvimento de vrias tecnologias,
como redes locais, Bluetooth e WiFi, e a popularizao da
5 Internet permitiram o desenvolvimento de equipamentos
que se apoiem em redes e recursos localizados em outros
computadores para atender s necessidades de seus
usurios.
Os computadores das geraes anteriores precisavam manter
10 suas massas de dados acessveis localmente e contar apenas com
sua capacidade de processamento. Os computadores de quinta
gerao podem contar com a capacidade de armazenamento e
de processamento de outros computadores atravs de redes de
diversos tipos.
21
Unidade I
Quando esse tipo de ambiente se tornar comum, talvez
no tenhamos uma sexta gerao de computadores, mas algo
totalmente diferente.
22
ORGANIZAO DE COMPUTADORES
Unidade II
3 AFINAL DE CONTAS, QUEM INVENTOU O
COMPUTADOR?
23
Unidade II
linhas sobre as quais se deu (e ainda se d) a evoluo dos
computadores.
Miniaturizao
Os primeiros computadores eletrnicos, como o ENIAC,
5 ocupavam andares inteiros e pesavam toneladas. Hoje a
capacidade de processamento daqueles equipamentos
largamente superada por dispositivos de bolso.
Na dcada de 1980, todas as empresas tinham um CPD
(centro de processamento de dados), onde residiam todos os
10 seus computadores e perifricos. Hoje uma tarefa das mais
trabalhosas em uma grande empresa localizar onde esto
todos os seus computadores.
A miniaturizao tornou possvel o minicomputador, depois
o computador pessoal, a computao mvel e a eletrnica
15 embarcada.
Sem o extremo progresso que a miniaturizao alcanou,
o mundo seria muito diferente hoje, pois os computadores
estariam connados nos CPDs, em vez de estarem nossa volta
em toda parte.
20
Barateamento
Os primeiros computadores comerciais custavam milhes de
dlares. Hoje um microcomputador bsico acessvel maioria
das pessoas.
24
ORGANIZAO DE COMPUTADORES
de computadores e dispositivos eletrnicos, pois possibilitou a
substituio de funes executadas por elementos eltricos ou
mecnicos por dispositivos eletrnicos e a incluso de novas
funes, que no seriam possveis sem esses dispositivos.
5
Facilidade de uso
Os primeiros computadores s podiam ser utilizados pelos
engenheiros que os construram, pois, para obter algum resultado,
era necessrio conhecer detalhes precisos sobre a interconexo
de seus componentes.
10
25
Unidade II
Esse possivelmente o primeiro passo no caminho do
computador invisvel, ou computao ubqua.
5 A ORGANIZAO DO COMPUTADOR
Dispositivos de E/S
Registradores
Memria
principal
Disco
Impressora
Barramento
Figura 17 A organizao de um computador simples
26
ORGANIZAO DE COMPUTADORES
Como podemos ver tambm na gura, internamente a CPU
composta por vrias partes distintas. A unidade de controle
responsvel por buscar instrues na memria e determinar
seu tipo. A unidade lgica e aritmtica executa operaes
5 matemticas simples como adio e E booleano.
A CPU tambm contm uma pequena quantidade de
memria de alta velocidade, que utilizada na execuo de
instrues. Essa memria organizada em registradores. Cada
registrador tem um tamanho xo (comprimento em bits) e
10 um propsito especco, como o contador de programa (PC
program counter). A funo do PC identicar qual a prxima
instruo a ser trazida para a CPU do programa em execuo.
A organizao da CPU detalhada na gura abaixo. Os
registradores e a ULA formam um caminho de dados.
A+B
Registradores
B
Registradores de
entrada da ULA
B
Barramento de
entrada da ULA
ULA
A+B
Registrador de
sada da ULA
27
Unidade II
Os dados so movimentados dos registradores para um
ou dois registradores que alimentam a ULA e deles para a
prpria ULA atravs de um barramento que interconecta esses
elementos.
5
10
28
ORGANIZAO DE COMPUTADORES
4- Se a instruo necessitar de uma palavra da memria,
determinar onde essa palavra est;
5- Trazer a palavra para dentro de um registrador da CPU, se
necessrio;
5
6- Executar a instruo;
7- Voltar etapa 1 para iniciar a execuo da instruo
seguinte.
Essa sequncia costuma ser denominada ciclo buscardecodicar-executar. fundamental para a operao de todos
10 os computadores.
Lembre-se de que o programa armazenado na memria
na forma de instrues que o processador consiga interpretar.
Voltando mquina multinveis, o programa escrito
originalmente em linguagem de alto nvel sofreu vrios nveis
15 de traduo antes que pudesse ser executado diretamente
pelo processador.
5.1.1 Princpios de projeto para computadores modernos
Os computadores modernos compartilham uma srie
de caractersticas de design que visam maximizar o seu
desempenho. No importa se se trata de um computador de
20 mo ou um computador para ns cientcos; sempre se deseja a
maior velocidade de processamento possvel.
claro que estas linhas se aplicam ao estado atual da
tecnologia. Atualmente estamos sujeitos a certas limitaes,
como velocidade de clock, quantidade de transistores que podem
25 ser embutidos em uma pastilha de silcio e outras.
Se o cenrio tecnolgico atual se alterar, talvez algum dos
pontos a seguir no seja mais aplicado.
29
Unidade II
Todas as instrues so executadas diretamente pelo
hardware
No passado houve uma tendncia de design de computadores
que adicionava uma camada de software entre o hardware
5 e o conjunto de instrues, providenciando um novo nvel
de interpretao. Esse tipo de implementao chamado de
microcdigo e oferecia algumas vantagens como a possibilidade
de incluir ou alterar instrues sem alterar o hardware. Apesar de
prover mais exibilidade, esse tipo de design no considerado uma
10 boa prtica. O nvel adicional de traduo acarreta uma perda de
desempenho, que no compensa as novas instrues que possam
ser adicionadas.
Em resumo, a recomendao que as instrues
correspondam diretamente a elementos de hardware, sem que
15 haja nveis adicionais de traduo.
Maximize a taxa de execuo de instrues
Um dos caminhos para se maximizar a performance do
computador maximizar a taxa de execues de instrues por
segundo.
Existem vrios meios para se conseguir isso. Um
simplesmente aumentar a velocidade de clock do computador.
Outra forma fazer com que o processador realize atividades
em paralelo. Se um computador puder realizar duas instrues
em paralelo, ele ter teoricamente um desempenho duas vezes
25 superior a um computador sem paralelismo.
20
30
ORGANIZAO DE COMPUTADORES
do computador como um todo. Se o tempo de traduo de uma
instruo for demorado, o tempo de execuo como um todo
ser degradado.
Por esse motivo, uma instruo no deve ter muitas opes
5 de execuo ou formatos alternativos. Se a instruo tiver
poucos formatos, o tempo de identicao da instruo ser
reduzido e, consequentemente, o tempo de processamento ser
otimizado.
Somente load e store devem referenciar a memria
10
25
31
Unidade II
de executar vrias atividades ao mesmo tempo. Existem vrias
formas de implementar paralelismo, no nvel de instruo e no
nvel de processador.
A seguir descreveremos cinco formas de paralelismo.
5 Pipelining e arquiteturas superescalares so exemplos de
paralelismo no nvel de instruo. Computadores matriciais,
multiprocessadores e multicomputadores so exemplos de
paralelismo no nvel de processador.
Pipelining
10
S2
S3
S4
Unidade de
busca de
instruo
Unidade de
decodicao
de instruo
Unidade de
busca de
operando
Unidade de
execuo de
instruo
S1:
S2:
S3:
S4:
S5:
2
1
3
2
1
4
3
2
1
5
4
3
2
1
5
6
5
4
3
2
6
7
6
5
4
3
7
S5
8
7
6
5
4
8
3
4
Tempo
Figura 19 Exemplo de um pipeline de cinco estgios
32
Unidade de
gravao
9
8
7
6
5
9
ORGANIZAO DE COMPUTADORES
Arquiteturas superescalares
O princpio da arquitetura superescalar que nem todas as
instrues demoram o mesmo tempo para serem executadas.
Ao executar certas instrues, como as que leem ou gravam
5 na memria principal, o tempo de execuo maior que em
instrues que acessem apenas dados dentro do processador
(armazenados em registradores).
Se o mdulo de execuo pudesse executar vrias tarefas
em paralelo, o tempo de execuo das instrues mais lentas
10 seria compensado pela execuo de outras instrues.
Na gura a seguir temos o exemplo de uma arquitetura
superescalar com duas ALU, uma unidade para tratar operaes
de ponto utuante e um mdulo para ler, e outra para gravar na
memria principal.
15
ALU
S1
Unidade de
busca de
instruo
S2
Unidade de
decodicao
de instruo
S3
Unidade de
busca de
operando
S5
LOAD
Unidade de
gravao
STORE
Ponto
utuante
Figura 20 Exemplo de arquitetura superescalar
33
Unidade II
Esses dois tipos de paralelismo so implementados dentro do
processador, ou seja, no dependem de mais de um processador.
Os designs seguintes dependem de vrios processadores.
Sempre existe demanda por processadores mais rpidos,
5 mas em muitos casos mais simples e barato dispor de vrios
processadores que trabalhem harmonicamente do que tentar
conseguir um nico processador mais rpido.
Esse tipo de concluso j chegou at os computadores de uso
comercial e domstico, com as conguraes com processadores
10 de dois, trs, quatro ou mais ncleos.
Computadores matriciais
Um computador matricial aquele com um grande nmero
de processadores que executam o mesmo conjunto de instrues
em conjuntos diferentes de dados.
15
34
ORGANIZAO DE COMPUTADORES
O acesso a essa memria deve ser controlado tambm,
para que um processador no tente utilizar um espao que
esteja sendo usado por outro. Normalmente essa funo
desempenhada pelo sistema operacional.
CPU
CPU
CPU
CPU
Memria
Compartilhada
Barramento
Figura 21 Multiprocessador com barramento nico
Memria
Memria
Memria
Memria
CPU
CPU
CPU
CPU
Memria
Compartilhada
Barramento
Figura 22 Multicomputador com memrias locais
35
Unidade II
projetistas abandonam a ideia da memria compartilhada e
criam computadores apenas com processadores com memrias
privadas.
Este tipo de arranjo normalmente chamado de fracamente
5 acoplado, em contraste com o arranjo fortemente acoplado, que
o multiprocessador.
5.2 Memria primria
36
ORGANIZAO DE COMPUTADORES
Na tabela a seguir temos os prexos decimais mais comuns,
lembrando que, em se tratando de memria, devemos usar a
base binria em vez da base 10.
Expoente
Explcito
Prexo
0,001 mili
10-3
Expoente
0,000001 micro
106
10-9
0,000000001 nano
109
0,000000000001 pico
0,000000000000001 femto
10-15
Prexo
1.000 Kilo
103
10-6
10-12
Explcito
1.000.000 Mega
1.000.000.000 Giga
1012
1.000.000.000.000 Tera
1015
1.000.000.000.000.000 Peta
10-18
0,000000000000000001 ato
1018
1.000.000.000.000.000.000 Exa
10-21
0,000000000000000000001 zepto
1021
1.000.000.000.000.000.000.000 Zeta
10-24
0,000000000000000000000001 iocto
1024
1.000.000.000.000.000.000.000.000 Iota
0
1
2
3
4
5
6
7
0
1
2
3
4
5
16 bits
12 bits
8 bits
Figura 24 Trs formas de organizar 96 bits de memria
37
Unidade II
Outro conceito importante a palavra. Uma palavra o
tamanho da unidade de dados que transferida da memria
para o processador. Quando falamos que um computador de
32 bits ou 64 bits, estamos nos referindo ao tamanho da palavra
5 desse processador. Ou seja, um computador de 32 bits consegue
transmitir 4 bytes entre a memria e o processador, enquanto
um computador de 64 bits transmite 8 bytes.
Esse conceito importante porque, se o processador recebe
um valor de 8 bytes da memria, todos os seus registradores
10 tm que ter no mnimo esse comprimento. Isso implica
tambm a quantidade de memria que um computador pode
suportar.
Se o registrador dedicado a tratar endereos de memria
tem 1 bit de comprimento, o computador s suportar dois
15 endereos ou duas clulas (0 e 1).
Se esse registrador tiver 32 bits, a quantidade de clulas
endereveis ser de 4.294.967.295. Em um computador com
clulas de 1 byte, isso equivale a 4 GB de memria.
Se esse registrador tiver 64 bits, a quantidade de
20 endereos possveis sobe para 18.446.744.073.709.551.615, ou
aproximadamente 18,45 exabytes, uma quantidade de memria
impensvel nos padres tecnolgicos atuais.
5.2.3 Memria cache
A memria cache (e no cach) uma rea de memria
intermediria entre o processador e a memria principal. O
25 termo cache amplamente usado para dispositivos que servem
como rea intermediria entre um meio mais rpido e outro
mais lento (cache de disco, cache de impresso etc.).
A memria cache, conforme a denio aqui adotada, uma
rea de memria localizada entre o barramento e a CPU.
38
ORGANIZAO DE COMPUTADORES
Como j falamos antes, o tempo de acesso memria principal
a partir do processador lento, em termos de velocidade de
processamento. Ento, se o processador no precisar percorrer
o barramento para buscar uma determinada informao, mas
5 uma rea mais prxima, o computador ganha em desempenho.
Normalmente a memria cache faz parte da mesma
embalagem que o prprio processador, mas no faz parte da
arquitetura interna dele, onde se localizam os registradores e
demais componentes da CPU.
CPU
Memria
Principal
Memria
Cache
Barramento
20
39
Unidade II
Para se ter uma ideia de ordem de grandeza, um computador
comercial comum atualmente possui cerca de 2 GB de memria
principal, enquanto um disco rgido comum hoje possui em
torno de 160 GB, sendo que j existem discos para uso em
5 computadores comerciais comuns com 1 TB de capacidade.
5.3.1 Hierarquias de memria
Um computador possui vrios tipos de memria, desde os
registradores at os discos ticos (DVD, Blu-Ray etc.). Existe
uma hierarquia entre esses vrios tipos de memria, conforme
a gura a seguir.
Registradores
Memria Cache
Memria Primria
Fita Magntica
Meios ticos
10
15
40
ORGANIZAO DE COMPUTADORES
5.3.2 Discos magnticos
O disco magntico o meio mais comum de armazenamento
atualmente. Isso se deve ao fato de que o disco hoje o que
fornece melhor relao custo-benefcio.
Isso talvez mude no futuro prximo, graas popularizao
5 dos discos de estado slido (SSD solid state disk) baseados
em memria ash. Hoje j comum encontrarmos esse tipo
de dispositivo com cerca de 4 GB a 16 GB. Ainda pouco se
comparado aos 160 GB que um disco magntico possui, mas,
com o aumento de capacidade e barateamento desse tipo de
10 dispositivo, em breve ele poder superar o disco magntico em
popularidade.
20
41
Unidade II
A rea til do disco dividida em setores. Um setor
normalmente corresponde a 512 bytes e separado do prximo
setor por uma rea no utilizada chamada lacuna. Como estamos
lidando com campos magnticos, nem toda a superfcie pode
5 ser utilizada, pois corremos o risco de afetar outros setores alm
do desejado, se eles estiverem muito prximos. Os setores so
agrupados em crculos concntricos denominados trilhas.
Trilha /
Cilindro
Setor
Cabeas de leitura e
gravao
8 cabeas
4 platters
Figura 28 Representao da geometria do disco magntico
42
ORGANIZAO DE COMPUTADORES
mecnico, o tempo que a cabea de leitura leva para se mover
pela superfcie do disco extremamente lento.
Se um determinado conjunto de dados estiver num mesmo
cilindro, o tempo de acesso a esses dados ser menor.
5.3.3 Demais dispositivos
5
10
43
Unidade II
O ASCII usa sete bits para descrever os caracteres, o que permite
128 combinaes. As tabelas abaixo mostram essas combinaes.
Binrio
44
Descrio
0000 0000 00
00
NUL
Null - nulo
0000 0001 01
01
SOH
0000 0010 02
02
STX
0000 0011 03
03
ETX
0000 0100 04
04
EOT
End of tape - m de ta
0000 0101 05
05
ENQ
0000 0110 06
06
ACK
Acknowledge - reconhecimento
0000 0111
07
07
BEL
Bell - campainha
0000 1000 08
08
BS
0000 1001 09
09
HT
0000 1010 10
0A
LF
0000 1011 11
0B
VT
0000 1100 12
0C
FF
0000 1101 13
0D
CR
Carriage-return - retorno do
carro (enter)
0000 1110
14
0E
SO
0000 1111
15
0F
SI
0001 0000 16
10
DLE
Data-link escape
0001 0001 17
11
DC1
Device-control 1
0001 0010 18
12
DC2
Device-control 2
0001 0011 19
13
DC3
Device-control 3
0001 0100 20
14
DC4
Device-control 4
0001 0101 21
15
NAK
Neg-acknowledge - no
reconhecimento
0001 0110 22
16
SYN
Synchronous idle
0001 0111
23
17
ETB
End-of-transmission block
0001 1000 24
18
CAN
Cancel
0001 1001 25
19
EM
End-of-medium
0001 1010 26
1A
SUB
Substitute
0001 1011 27
1B
ESC
Escape
0001 1100 28
1C
FS
File separator
0001 1101 29
1D
GS
Group separator
0001 1110
30
1E
RS
Record separator
0001 1111
31
1F
US
Unit separator
0111 1111
127
7F
DEL
Delete
Tabela 1 Caracteres de controle ASCII
ORGANIZAO DE COMPUTADORES
Binrio
Decimal
Hexa
0010 0000
32
20
0010 0001
33
21
0010 0010
34
0010 0011
35
0010 0100
Caracter
Binrio
Decimal
Hexa
Caracter
Binrio
Decimal
Hexa
Caracter
0100 0000
64
40
0110 0000
96
60
0100 0001
65
41
0110 0001
97
61
22
0100 0010
66
42
0110 0010
98
62
23
0100 0011
67
43
0110 0011
99
63
36
24
0100 0100
68
44
0110 0100
100
64
0010 0101
37
25
0100 0101
69
45
0110 0101
101
65
0010 0110
38
26
&
0100 0110
70
46
0110 0110
102
66
0010 0111
39
27
0100 0111
71
47
0110 0111
103
67
0010 1000
40
28
0100 1000
72
48
0110 1000
104
68
0010 1001
41
29
0100 1001
73
49
0110 1001
105
69
0010 1010
42
2A
0100 1010
74
4A
0110 1010
106
6A
0010 1011
43
2B
0100 1011
75
4B
0110 1011
107
6B
0010 1100
44
2C
0100 1100
76
4C
0110 1100
108
6C
0010 1101
45
2D
0100 1101
77
4D
0110 1101
109
6D
0010 1110
46
2E
0100 1110
78
4E
0110 1110
110
6E
0010 1111
47
2F
0100 1111
79
4F
0110 1111
111
6F
0011 0000
48
30
0101 0000
80
50
0111 0000
112
70
0011 0001
49
31
0101 0001
81
51
0111 0001
113
71
0011 0010
50
32
0101 0010
82
52
0111 0010
114
72
0011 0011
51
33
0101 0011
83
53
0111 0011
115
73
0011 0100
52
34
0101 0100
84
54
0111 0100
116
74
0011 0101
53
35
0101 0101
85
55
0111 0101
117
75
0011 0110
54
36
0101 0110
86
56
0111 0110
118
76
0011 0111
55
37
0101 0111
87
57
0111 0111
119
77
0011 1000
56
38
0101 1000
88
58
0111 1000
120
78
0011 1001
57
39
0101 1001
89
59
0111 1001
121
79
0011 1010
58
3A
0101 1010
90
5A
0111 1010
122
7A
0011 1011
59
3B
0101 1011
91
5B
0111 1011
123
7B
0011 1100
60
3C
<
0101 1100
92
5C
0111 1100
124
7C
0011 1101
61
3D
0101 1101
93
5D
0111 1101
125
7D
0011 1110
62
3E
>
0101 1110
94
5E
0111 1110
126
7E
0011 1111
63
3F
0101 1111
95
5F
45
Unidade II
podemos comear a pensar nos idiomas que usam alfabetos
diferentes, como o russo ou o rabe.
Como os computadores hoje so usados em todo o mundo
e os fabricantes desejam que seus produtos sejam usados
5 globalmente, o ASCII no pode mais ser considerado como
um padro aceitvel. Por esse motivo, foi criado outro padro,
chamado UNICODE, patrocinado por um grupo de empresas.
O UNICODE usa 16 bits para descrever cada caractere, o que
permite at 65.536 caracteres diferentes.
10
46
ORGANIZAO DE COMPUTADORES
Unidade III
6 CIRCUITOS DIGITAIS
6.1 Sistemas de numerao
47
Unidade III
1210
148
Figura 29 Uma mesma quantidade pode ser representada de formas diferentes
48
ORGANIZAO DE COMPUTADORES
Ao representar um valor como 419, podemos traduzilo rapidamente para quatro centenas, uma dezena e nove
unidades.
Posio de 100
(102)
Posio de 10
(101)
Posio de 1
(100)
49
Unidade III
conveno, usam-se as letras de A a F para representar esses
valores. Assim, os nmeros hexadecimais utilizam os seguintes
caracteres para expressar quantidades:
0123456789ABCDEF
5
1x2
1x2
0x2
1x2
0x2
0x2
0x2
1x2
1 x 20
256
+128
+0
+32
+0
+0
+0
+2
+1
6x8
384
4x8
+32
3x 80
+3
Octal
Decimal
4x10 1 x 10 9x 100
400
+10
+9
2
Hexadecimal
1
1x162
256
A
3
10 x
161 3x 160
+160
+3
50
ORGANIZAO DE COMPUTADORES
Se executarmos as somas apontadas, veremos que todas as
representaes se referem ao mesmo valor, a nica diferena
a base.
Na tabela abaixo temos as representaes em binrio, octal
5 e hexadecimal para os valores decimais de 0 a 32.
Decimal
Binrio
Octal
Hexadecimal
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
0
1
10
11
100
101
110
111
1000
1001
1010
1011
1100
1101
1110
1111
10000
10001
10010
10011
10100
10101
10110
10111
11000
11001
11010
11011
11100
11101
11110
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
10
11
12
13
14
15
16
17
18
19
1A
1B
1C
1D
1E
31
32
11111
100000
37
40
1F
20
51
Unidade III
6.3 Por que binrio?
25
52
ORGANIZAO DE COMPUTADORES
Existem vrias tcnicas para converter de uma base para
outra. Para converter a partir de binrio para octal, basta agrupar
os algarismos em grupos de trs. Cada grupo de trs dgitos
binrios dar origem a uma casa do nmero em octal.
5
10
Binrio
Octal
A
1
6
3
1
0
4
0 0
53
Unidade III
Dessa forma, as casas do nmero binrio que foram
selecionadas correspondem a 1, as casas que no foram usadas
(potncias 6, 4, 3 e 2) recebero zero.
1 1 0 1 0 0 0 1 1 =28 + 27 + 25 + 21 + 20 = 256 + 128 + 32 + 2 + 1
Figura 33 Converso de decimal para binrio
54
ORGANIZAO DE COMPUTADORES
Para converter de octal para hexadecimal ou
vice-versa, a forma mais simples converter o valor para
binrio e depois para a base-destino, usando a tcnica de
agrupamento de bits.
6.5 Soma e subtrao em bases no decimais
Vai um
9
+
1
3
9
2
55
Unidade III
transportar unidades de base para a prxima casa. No caso,
transportamos uma unidade, e a diferena (2) ficou na casa
original.
Temos que lembrar que, medida que avanamos para a
5 esquerda nas casas decimais, aumentamos o expoente da base,
por esse motivo o 10 na primeira casa vira 1 na segunda casa.
Isso tudo pode parecer extremamente confuso, mas apenas
porque nos habituamos a fazer essas operaes de forma
automtica.
10
10
10
1
0
0
9
0
3
4
9
56
ORGANIZAO DE COMPUTADORES
Se entendermos o funcionamento do sistema de nmerosbase, a operao apresentada a seguir no parecer nem um
pouco estranha, desde que se saiba que estamos usando a base
binria, claro.
1
+
1
1 0
Figura 37 Soma binria
57
Unidade IV
Unidade IV
7 LGEBRA BOOLEANA E PORTAS LGICAS
58
ORGANIZAO DE COMPUTADORES
Nos exemplos sero utilizados 0 e 1 para descrever as
funes, mas o funcionamento seria o mesmo se utilizssemos
verdadeiro e falso ou qualquer outra dicotomia.
7.1 Funo E
A.B
B
Figura 40 Porta E
59
Unidade IV
O funcionamento da porta E exatamente o mesmo da
funo E, mas esta forma mais prtica ao se expressarem
circuitos digitais.
De uma forma resumida, podemos dizer que a sada da
5 funo E ser 1 quando A e B forem 1.
7.2 Funo OU
A+B
1
1
1
Figura 41 Tabela verdade da funo OU
B
Figura 42 Porta OU
_
A
1
0
Figura 43 Tabela verdade da funo NO
60
ORGANIZAO DE COMPUTADORES
Para expressar a funo NO, usamos um trao (A) sobre a
varivel ou expresso em questo.
A funo NO tambm tem sua porta equivalente, conforme
gura abaixo:
A
S
Figura 44 Porta NO
Ou simplesmente:
A
S
B
Figura 46 Porta NAND
61
Unidade IV
A porta NO sempre pode ser suprimida para simplicar o
desenho do circuito.
A tabela verdade dessa porta a seguinte:
A
NAND
1
1
0
Figura 47 Tabela verdade da porta NAND
B
Figura 49 Porta NOR
62
ORGANIZAO DE COMPUTADORES
A tabela verdade dessa porta a seguinte:
A
NOR
63
Unidade IV
O circuito pode ser representado simplesmente como a
seguinte porta:
A
S
B
Figura 52 Porta XOR
XOR
3- Deve-se calcular o E;
4- Deve-se calcular o OU.
7.6 Equivalncia entre expresses e circuitos
64
ORGANIZAO DE COMPUTADORES
Isso pode ser muito til quando se deseja otimizar um
programa ou um sistema. Para isso podemos usar algumas
identidades da lgebra booleana, conforme a tabela
seguinte:
Nome
Forma E
Forma OU
Lei da identidade
1A=A
O+A=A
0A=0
1+A=1
Lei idempotente
AA=A
A+A=A
Lei do inverso
AA=0
A+A=1
Lei comutativa
AB=BA
A+B=B+A
Lei associativa
(AB)C=A(BC)
(A+B)+C=A+(B+C)
Lei distributiva
A+BC=(A+B)(A+C)
A(B+C)=AB+AC
Lei da absoro
A(A+B)=A
A+AB=A
Lei de De Morgan
AB =A+B
A+B =AB
7.7.1 Comparador
Um comparador um circuito que, a partir de duas entradas,
indica se os valores so iguais ou no.
65
Unidade IV
O exemplo abaixo compara duas entradas A e B, cada uma
com 4 bits de comprimento e que vai retornar 1 (verdadeiro) se
forem iguais ou 0 (falso) se forem diferentes.
A0
B0
A1
B1
A=B
A2
B2
A3
B3
Figura 54 Comparador de 4 bits
66
ORGANIZAO DE COMPUTADORES
claro que estamos falando de um somador de 1 bit. Para
somar valores maiores que isso, dependeremos do prximo
circuito.
A
Soma
Transporte
Soma
Transporte
67
Unidade IV
Vem um
Soma
A
B
Vai um
Vem um
Soma
Vai um
68
ORGANIZAO DE COMPUTADORES
7.7.4 Relgios
Um relgio (ou clock) um circuito capaz de gerar um sinal
eltrico em um ritmo constante, o que serve para determinar
uma referncia de tempo para o computador.
Em muitos circuitos digitais, a ordem em que os eventos
5 ocorrem crtica. s vezes um evento deve preceder outro,
outras vezes dois eventos devem ocorrer simultaneamente.
Para que isso seja possvel, os projetistas usam um circuito de
relgio.
O relgio emite uma srie de pulsos com largura
10 especfica, em intervalos consecutivos. O intervalo entre
esses ciclos denominado tempo de ciclo de relgio. Em
geral, esse tempo est entre 1 e 500 Mhz. Para conseguir
isso, a frequncia geralmente controlada por um oscilador
de cristal.
15
Glossrio
Microprocessador
Figura 59 Microprocessador
69
Unidade IV
Rel
Dispositivo eletromecnico ou no, com inmeras aplicaes
possveis em comutao de contatos eltricos, servindo para
ligar ou desligar dispositivos. normal o rel estar ligado a
5 dois circuitos. No caso do rel eletromecnico, a comutao
realizada alimentando-se a sua bobina. Quando uma corrente
originada no primeiro circuito passa pela bobina, um campo
eletromagntico gerado, acionando o rel e possibilitando
o funcionamento do segundo circuito. Sendo assim, uma das
10 aplicabilidades do rel utilizar-se de baixas correntes para
o comando no primeiro circuito, protegendo o operador das
possveis altas correntes que circularo no segundo circuito
(contatos).
Figura 60 Rel
Transistor
15
Figura 61 Transistores
70
ORGANIZAO DE COMPUTADORES
Vlvula
Dispositivo eletrnico no qual os eltrons se deslocam
no vcuo ou num meio gasoso, no interior de um invlucro
hermtico.
5
Figura 62 Vlvula
Referncias bibliogrcas
CARROL, Paul. Big blues: a derrocada da IBM. Rio de Janeiro:
Ediouro, 1994.
GREGG, John. Ones and zeroes: understanding boolean algebra,
digital circuits and the logic of sets. Hoboken, New Jersey: John
Wiley and Sons, 1998.
LIVIO, Mario. Razo urea: a histria de Fi, um nmero
surpreendente. Rio de Janeiro: Record, 2006.
SINGH, Simon. O livro dos cdigos. Rio de Janeiro: Record,
2001.
71
Unidade IV
TANEMBAUM, Andrew S. Organizao estruturada de
computadores. 5. ed. So Paulo: Pearson Prentice Hall, 2007.
http://www.asciitable.com/. Consultado em 27/12/2008.
72