Escolar Documentos
Profissional Documentos
Cultura Documentos
Arquitetura de Computadores
Arquitetura de Computadores
ARQUITETURA DE COMPUTADORES
AUTORIA:
1
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Mdulo de: Arquitetura de Computadores
Autoria: Filipe de Castro Ferreira
Vrias marcas registradas so citadas no contedo deste Mdulo. Mais do que simplesmente listar esses nomes
e informar quem possui seus direitos de explorao ou ainda imprimir logotipos, o autor declara estar utilizando
tais nomes apenas para fins editoriais acadmicos.
Declara ainda, que sua utilizao tem como objetivo, exclusivamente na aplicao didtica, beneficiando e
divulgando a marca do detentor, sem a inteno de infringir as regras bsicas de autenticidade de sua utilizao
e direitos autorais.
E por fim, declara estar utilizando parte de alguns circuitos eletrnicos, os quais foram analisados em pesquisas
de laboratrio e de literaturas j editadas, que se encontram expostas ao comrcio livre editorial.
2
Copyright 2009, ESAB Escola Superior Aberta do Brasil
A presentao
Este Mdulo visa promover uma discusso sobre os conceitos fundamentais de arquitetura
de computadores
O bjetivo
3
Copyright 2009, ESAB Escola Superior Aberta do Brasil
E menta
4
Copyright 2009, ESAB Escola Superior Aberta do Brasil
S obre o Autor
5
Copyright 2009, ESAB Escola Superior Aberta do Brasil
S UMRIO
UNIDADE 1 .............................................................................................................................. 9
Breve Histrico I .................................................................................................................... 9
UNIDADE 2 ............................................................................................................................ 12
Breve Histrico II ................................................................................................................. 12
UNIDADE 3 ............................................................................................................................ 17
Componentes de um Computador Mquina de Von Neumann I ......................................17
UNIDADE 4 ............................................................................................................................ 21
Componentes de um Computador Mquina de Von Neumann II .....................................21
UNIDADE 5 ............................................................................................................................ 25
Elementos Bsicos: representao dos dados ...................................................................25
UNIDADE 6 ............................................................................................................................ 29
Representao Numrica....................................................................................................29
UNIDADE 7 ............................................................................................................................ 33
Operaes Binrias .............................................................................................................33
Overflow ou estouro do limite .............................................................................................. 34
UNIDADE 8 ............................................................................................................................ 36
Representao de Sinal Negativo I ..................................................................................... 36
Sinal e Magnitude................................................................................................................ 36
UNIDADE 9 ............................................................................................................................ 39
Representao de Sinal II ...................................................................................................39
UNIDADE 10 .......................................................................................................................... 42
Sistema de Memria ...........................................................................................................42
UNIDADE 11 .......................................................................................................................... 45
Tipos de Memrias I ............................................................................................................45
UNIDADE 12 .......................................................................................................................... 47
Tipos de Memrias II Memria Principal ..........................................................................47
Capacidade da Memria Principal....................................................................................... 48
UNIDADE 13 .......................................................................................................................... 50
Tipos de Memrias III - Memria Cache .............................................................................50
6
Copyright 2009, ESAB Escola Superior Aberta do Brasil
UNIDADE 14 .......................................................................................................................... 54
Registradores ...................................................................................................................... 54
UNIDADE 15 .......................................................................................................................... 57
Representao e Ciclo de Instruo ................................................................................... 57
Representao da Instruo ............................................................................................... 57
Formato das Instrues.......................................................................................................58
Ciclo de Instruo................................................................................................................ 59
UNIDADE 16 .......................................................................................................................... 61
Modos de Endereamento ..................................................................................................61
Modo de endereamento por registrador ............................................................................63
Modo por registrador direto .................................................................................................64
Modo por registrador indireto .............................................................................................. 64
UNIDADE 17 .......................................................................................................................... 65
Pipelining............................................................................................................................. 65
Mtodo Assncrono .............................................................................................................67
Mtodo Sncrono ................................................................................................................. 67
UNIDADE 18 .......................................................................................................................... 69
Organizao de uma Interface de E/S (Comunicao entre a Memria e UCP
Barramentos) ...................................................................................................................... 69
UNIDADE 19 .......................................................................................................................... 72
Entrada/Sada ..................................................................................................................... 72
UNIDADE 20 .......................................................................................................................... 74
Formas de Comunicao ....................................................................................................74
UNIDADE 21 .......................................................................................................................... 78
Tcnicas de Transferncia de Dados I ................................................................................ 78
UNIDADE 22 .......................................................................................................................... 82
Tcnicas de Transferncia de Dados II ...............................................................................82
UNIDADE 23 .......................................................................................................................... 84
Tcnicas de Transferncia de Dados III ..............................................................................84
UNIDADE 24 .......................................................................................................................... 87
Padres de Barramento I ....................................................................................................87
UNIDADE 25 .......................................................................................................................... 89
Padres de Barramento II ...................................................................................................89
UNIDADE 26 .......................................................................................................................... 93
7
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Execuo de Programas I ...................................................................................................93
UNIDADE 27 .......................................................................................................................... 97
Execuo de Programas II ..................................................................................................97
UNIDADE 28 ........................................................................................................................ 101
Execuo de Programas III ............................................................................................... 101
UNIDADE 29 ........................................................................................................................ 106
Execuo de Programas IV ............................................................................................... 106
UNIDADE 30 ........................................................................................................................ 109
Execuo de Programas V ................................................................................................ 109
GLOSSRIO ........................................................................................................................ 113
8
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 1
Breve Histrico I
Ao longo dos sculos foram construdas algumas mquinas com a funo de realizarem
clculos aritmticos e outras operaes inteligentes. A primeira calculadora mecnica foi
criada pelo alemo Wilhelm Schickard (1592-1635) em 1623. O funcionamento da mquina
era baseado em rodas dentadas e ela era capaz de efetuar adies e subtraes. A inveno
de Schickard, no entanto, no foi muito difundida e caiu rapidamente no esquecimento.
Posteriormente, Blaise Pascal desenvolve a Pascoalina, uma mquina de calcular
mecnica, tambm baseada em rodas dentadas, com o objetivo de livrar seu pai, coletor de
impostos de Rouen (Frana), dos fastidiosos clculos que sua profisso lhe impunha.
Figura 1 - Pascoalina
9
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Entre as mquinas que antecederam os modernos computadores ou processadores
eletrnicos esto, principalmente, a mquina analtica projetada na primeira metade do
sculo XIX pelo matemtico e inventor britnico Charles Babbage, que foi considerado o
primeiro computador mecnico.
Para construir um dispositivo a partir destas ideias, Babbage contou com a colaborao
inestimvel da matemtica Ada Augusta Byron, Lady Lovelace, filha do poeta Lord Byron.
Ada desenvolveu sries de instrues para o calculador analtico, criando conceitos tais
como sub-rotinas, loops e saltos condicionais.
10
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Tambm h a mquina tabuladora do americano Herman Hollerith, que trabalhava no
departamento de censo dos Estados Unidos e idealizou um sistema de tratamento de
informaes com o qual, mediante o uso de cartes perfurados, conseguiu aumentar de dois
para duzentos o nmero de dados processados por minuto. Esses cartes, que receberam o
nome do inventor, foram utilizados pelos computadores at 1970 como sistema de entrada e
sada de dados. Da companhia fundada por Hollerith, a Tabulating Machine Company, surgiu
mais tarde a International Business Machines Corporation (IBM).
Trs dcadas antes de Hollerith concretizar seu projeto, foi publicada a obra do matemtico
britnico George Boole, An Investigation into the Laws of Thought (1854; Investigao das
leis do pensamento). Boole considerava que os processos mentais do ser humano eram
resultado de uma associao sucessiva de elementos simples que se podiam expressar
sobre uma base de duas nicas alternativas: sim ou no. Foi essa a origem do mtodo
matemtico de anlise formal conhecido como lgebra de Boole. Considerado na poca uma
simples curiosidade, o mtodo viria a constituir o fundamento terico da informtica moderna.
11
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 2
Breve Histrico II
Neste Mdulo no sero classificados as geraes, mas o perodo em que foram criados.
J. Presper Eckert, John V. Mauchly e Herman H. Goldstine, nos Estados Unidos, construram
o ENIAC (Eletronic Numerical Integrator Computer), considerado o primeiro computador
programvel universal.
Durante a Segunda Guerra Mundial havia a necessidade, por parte do exrcito americano de
desenvolver mtodos mais rpidos para calculo das trajetrias e alcance das novas armas.
Esse trabalho era feito manualmente, utilizando-se calculadores de mesa. O Armys Ballistics
12
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Research Laboratory (BRL) utilizava cerca de 200 pessoas para resolver as equaes
necessrias, sendo que a preparao das tabelas para uma nica arma poderia levar vrias
horas ou at mesmo dias de trabalho de uma nica pessoa.
Em 1943 foi aceito pelo exrcito americano o projeto para a construo do ENIAC. O ENIAC
possua aproximadamente 17.480 vlvulas de rdio, pesava 4 toneladas, media 30 metros de
comprimento por 3 de largura e ocupava uma rea de 180m2, chegando a consumir 150 KW.
Em contrapartida conseguia realizar 5 mil operaes por segundo.
O ENIAC era uma mquina decimal e no uma mquina binria, onde cada dgito era
representado por um anel de 10 vlvulas. A cada instante, apenas uma vlvula ficava em
estado ON (ligado), representando um dos dez dgitos. A principal desvantagem do ENIAC
era que ele tinha que ser programado manualmente, ligando e desligando chaves e
conectando e desconectando cabos. A programao do ENIAC era feita atravs de 6.000
chaves manuais. A cada novo clculo, era preciso reprogramar vrias destas chaves. Isso
sem falar no resultado, que era dado de forma binria atravs de um conjunto de luzes.
No foi toa que a maior parte dos programadores da poca eram mulheres, s mesmo elas
para ter a pacincia necessria para programar e reprogramar esse emaranhado de chaves
vrias vezes ao dia.
13
Copyright 2009, ESAB Escola Superior Aberta do Brasil
O ENIAC funcionava da seguinte maneira: Primeiro um grupo de cientistas desenvolvia
equaes matemticas, na exata sequncia em que elas tinham que ser digeridas pelo
sistema. A seguir seis especialistas programavam o computador para execut-las, girando
botes de sintonia e plugando centenas de fios nas tomadas corretas. Portanto o que hoje
o sistema operacional, em 1946 era uma operao completamente manual. O primeiro teste
do ENIAC uma demonstrao feita para generais das Foras Armadas calculou a
trajetria de uma bala de canho at um alvo determinado. Alimentado com as equaes, o
computador forneceu os dados para que o canho fosse calibrado. A bala acertou o alvo,
mas o que impressionou os generais foi que o tempo que o computador levou para resolver.
Foi menor que o tempo da trajetria da bala. O nico problema do ENIAC era que para
calcular a trajetria de outra bala, at um novo alvo, tudo tinha que ser refeito: das equaes
at o (re)acerto dos fios.
14
Copyright 2009, ESAB Escola Superior Aberta do Brasil
primeiro programa gravado executado em 21 de junho de 1948. O Harvard Mark I,
parcialmente financiado pela IBM. O Mark I tinha o nome tcnico de Calculador Automtico
Sequencial Controlado, e foi construdo entre 1939 e 1944, pelo professor Howard Aiken. O
Mark I talvez tenha sido a maior mquina calculadora j construda (20 metros de
comprimento por 3 de altura e 750 mil componentes). Independente dessa discusso a
participao da IBM nos desenvolvimentos dos computadores inegvel.
A IBM tambm teria outro destaque na histria dos computadores por um acontecimento: foi
em um Mark II em que ocorreu o primeiro bug.
A palavra j vinha sendo usada como gria, significando qualquer complicao, desde a
Revoluo Industrial. As mquinas eram instaladas em locais onde havia muitos insetos
voando e havia grande chance de que algum inseto pousar em um lugar errado e causar
estragos era grande, e qualquer parada mecnica era atribuda, a princpio, por bug. Com os
computadores realmente foi um bug: Em 1945, uma mariposa conseguiu entrar num Mark II
do Centro Naval de Virgnia, nos EUA, e travou todo o sistema, a partir da o nome passaria
a ser sinnimo de qualquer falha ou erro.
Vdeo
Vale pena!
15
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Figura 5 Imagem do inseto que ocasionou o primeiro bug.
Caso tenha interesse em ler um histrico mais detalhado sobre os computadores, no deixe
de acessar o arquivo Histrico dos Computadores atravs do link Estudo Complementar.
16
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 3
Componentes de um Computador Mquina de Von Neumann I
VDEO
Ateno! Antes de dar continuidade aos seus estudos. V ao ambiente: CAMPUS ON-LINE e
assista ao vdeo referente UNIDADE 3.
A mquina de Von Neumann (John von Neumann) a arquitetura base utilizada pelos
computadores atuais.
uma arquitetura de utilizao genrica que permite resolver qualquer problema que se
possa exprimir sob a forma de um algoritmo. Permite especificar programas que indicam as
desejadas sequncias de operaes que devem ser realizadas, sobre a informao
representada em binrio.
17
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Figura 6 Arquitetura de Von Neumann
Caso queira saber mais sobre este importante cientista acesse o link:
http://pt.wikipedia.org/wiki/John_von_Neumann
18
Copyright 2009, ESAB Escola Superior Aberta do Brasil
A mquina proposta por Von Neumann rene os seguintes componentes: Memria Principal,
Central de Processamento (UCP), composta pela Unidade Lgica Aritmtica (ULA) e a
Unidade de Controle (UC) e Dispositivos de Entrada e Sada.
Memria Principal
A unidade de memria central serve para guardar programas e dados, sob a forma de uma
representao binria. Cada instruo da mquina codificada como uma sequncia de bits.
Cada valor de certo tipo codificado por uma determinada sequncia de bits.
19
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Figura 8 Sequncia de bits armazenados na memria principal
20
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 4
Componentes de um Computador Mquina de Von Neumann II
Unidade Lgica e Aritmtica, ULA (ALU- arithmetic and logic unit): A ULA executa as
principais operaes lgicas e aritmticas do computador. Ela soma, subtrai, divide,
determina se um nmero positivo ou negativo ou se zero. Alm de executar
funes aritmticas, uma ULA deve ser capaz de determinar se uma quantidade
menor ou maior que outra e quando quantidades so iguais. A ULA pode executar
funes lgicas com letras e com nmeros.
Unidade de Controle UC: Responsvel por gerar todos os sinais que controlam as
operaes no exterior do CPU, e ainda por dar todas as instrues para o correto
funcionamento interno do CPU.
A unidade de controle executa trs aes bsicas intrnsecas e pr-programadas pelo prprio
fabricante do processador, so elas: busca (fetch), decodificao e execuo. Assim sendo,
todo processador, ao iniciar sua operao, realiza uma operao cclica, tendo como base
essas trs aes. Dependendo do tipo de microprocessador, a unidade de controle pode ser
fixa ou programvel.
21
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Cada instruo da mquina pode envolver:
Entrada e Sada
22
Copyright 2009, ESAB Escola Superior Aberta do Brasil
arquivos, geridos pelos programas do Sistema Operacional. Exemplos: os discos rgidos,
discos pticos (CD/DVD), os discos flexveis e as fitas magnticas.
23
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Vdeo
24
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 5
Elementos Bsicos: representao dos dados
Von Neumann e equipe consideravam muito mais simples e confivel projetar um circuito
capaz de gerar e manipular o menor nmero possvel de valores distintos, capaz de entender
apenas dois valores diferentes: 0 e 1.
25
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Figura 12 Representao do bit 0 e 1
Um caractere isolado no significa nada para nosso sentindo de comunicao, razo pela
qual se criam palavras. Da mesma forma, as informaes manipuladas por um computador
so codificadas em grupos ordenados de bits, de modo a terem um significado til.
26
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Mltiplos de bytes
Caso queira saber mais sobre bit, byte, suas potncias e converses, acessem o link:
http://pt.wikipedia.org/wiki/Byte
27
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Na computao tambm se criou o conceito de palavra. Assim, alm do bit e do byte, temos
o conceito relacionado com o armazenamento e a transferncia de informaes.
A palavra nos computadores um valor fixo e constante para um dado processador (16, 32
ou 64 bits).
Uma palavra deve representar um dado ou uma instruo, que pode ser processada,
armazenada ou transferida em uma nica operao.
28
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 6
Representao Numrica
Objetivo: Representar numericamente, nos computadores, relao dos nmeros reais com
os nmeros binrios.
O Sistema Decimal
1758 1 + 7 + 5 + 8 + +
29
Copyright 2009, ESAB Escola Superior Aberta do Brasil
O Sistema Binrio
Para se converter um nmero, na base binria para a base decimal, deve-se escrever cada
nmero que compe (o bit), multiplicado pela base2 (base do sistema), elevado posio
que ocupa.
Uma posio esquerda da vrgula representa uma potncia e direita, uma potncia
negativa. A soma de cada multiplicao de cada dgito binrio pelo valor das potncias
resulta no nmero real representado.
Por exemplo:
30
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Converso de base decimal para binria
53/2 26 1
26/2 13 0
13/2 6 1
6/2 3 0
3/2 1 1
0 1
O Sistema Hexadecimal
A base decimal, embora mais compacta que a binria, desconfortvel devido tediosa
converso entre as bases. Neste caso, adotou-se uma notao conhecida como
hexadecimal, onde os dgitos binrios so agrupados em conjuntos de quatro. A cada
combinao possvel de quatro dgitos binrios atribudo um smbolo.
31
Copyright 2009, ESAB Escola Superior Aberta do Brasil
0000 = 0 1000 = 8
0001 = 1 1001 = 9
0010 = 2 1010 = A
0011 = 3 1011 = B
0100 = 4 1100 = C
0101 = 5 1101 = D
0110 = 6 1110 = E
0111 = 7 1111 = F
Para converter nmeros binrios em hexadecimal deve-se agrupar os dgitos binrios quatro
a quatro, a partir da vrgula binria e substituir cada grupo pelo seu equivalente hexadecimal.
Para converter hexadecimal em binrio, deve-se substituir cada dgito hexadecimal pelo
binrio equivalente de quatro dgitos.
32
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 7
Operaes Binrias
0+0=0
1+0=1
0+1=1
1 + 1 = 0, e vai um ou 1 02
1 1 1 0 1410
33
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Um mais um igual a zero e vai um. O resultado corresponde exatamente ao valor
esperado da base.
Exemplo:
-1 (vai um)
110110
- 1100
101010
Quando resultado de uma adio pode ter um nmero de bits maior que o da palavra
utilizada esta condio denominada overflow. Quando ocorre um overflow, o processador
deve sinalizar este fato, para que o resultado no seja usado.
Exemplo:
34
Copyright 2009, ESAB Escola Superior Aberta do Brasil
111111 (vai um)
15 = (0 0 1 1 1 1)2
49 = (1 1 0 0 0 1)2
64 = (0 0 0 0 0 0)2
Neste caso o valor esperado (64) no pode ser representado em um registrador de 6 bits.
35
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 8
Representao de Sinal Negativo I
Sinal e Magnitude
-7=100111
O primeiro bit foi usado para representar o sinal (negativo) e apenas 5 bits foram usados
para representar o valor absoluto (7).
36
Copyright 2009, ESAB Escola Superior Aberta do Brasil
De forma geral pode-se expressar a faixa de um nmero da seguinte forma:
2 n 1
1 X 2 n 1
1 , onde n a quantidade de bits do nmero.
+010 = 00002
-010 = 10002
37
Copyright 2009, ESAB Escola Superior Aberta do Brasil
+15 = 0 0 1 1 1 1
+17 = 0 1 0 0 0 1
100000
Ocorreu overflow, pois os bits da magnitude no foram suficientes para representar o valor
desejado. Mas no houve estouro da capacidade do registrador, apenas mudou o bit do
sinal.
Representao em complemento a um
+3 = 0 0 0 0 1 1
38
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 9
Representao de Sinal II
+10 = 0 0 0 0 1 0 1 0
Segundo passo + 1
Resultado -10 = 1 1 1 1 0 1 1 0
39
Copyright 2009, ESAB Escola Superior Aberta do Brasil
As propriedades importantes da representao em complemento de 2 so:
2 X 2
n 1 n 1
1 , onde n a quantidade de bits do nmero.
40
Copyright 2009, ESAB Escola Superior Aberta do Brasil
A principal vantagem ter uma nica representao para o nmero 0. Por exemplo, para
representar o nmero zero em um registrador de 6 bits:
0 = 0 0 0 0 0 0
Primeiro passo -0 = 1 1 1 1 1 1
Segundo passo + 1
Resultado -0 = 1 0 0 0 0 0 0
41
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 10
Sistema de Memria
Memria tem papel crtico no desempenho de um sistema computacional. Ela recebe dados
e transfere para processador, e vice-versa. Como a cada ciclo de instruo em uma mquina
Von Neumann requer que o processador obtenha o cdigo da instruo e seus operandos, a
velocidade de transferncia de itens da memria para o processador , de fato, crtica.
Hierarquia de Memrias
42
Copyright 2009, ESAB Escola Superior Aberta do Brasil
No sentido de atender as diferentes caractersticas necessrias a um sistema de
armazenamento, com uma relao custo/benefcio atraente, as diferentes tecnologias de
fabricao e armazenamento de dados so utilizadas e organizadas de forma hierrquica.
43
Copyright 2009, ESAB Escola Superior Aberta do Brasil
o valor numrico total de elementos de forma simplificada, atravs da incluso de K
(kilo), M (mega), ou T (tera).
Ateno! No d continuidade aos seus estudos sem antes acessar sua SALA DE AULA e
fazer a Atividade 1 atravs do link ATIVIDADES.
44
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 11
Tipos de Memrias I
R/W - Read and Write (memria de leitura e escrita), comumente chamada de RAM
(Random Access Memory ou memria de acesso aleatrio).
Esta memria permite operaes de escrita e leitura pelo usurio e pelos programas.
Seu tempo de acesso da ordem de poucos nano segundos (ns) e independe do
endereo acessado. construda com tecnologia de semicondutores (bipolar, CCD),
pode ser esttica (SRAM) ou dinmica (DRAM) e voltil. A MP construda com
memria R/W.
ROM - Read Only Memory ou memria apenas de leitura. Esta memria permite
apenas a leitura e uma vez gravada no pode mais ser alterada. Tambm de acesso
aleatrio e no voltil, portanto tambm uma RAM. utilizada geralmente por
fabricantes para gravar programas que no se deseja permitir que o usurio possa
alterar ou apagar acidentalmente (por ex: a BIOS - Basic Input Output System e
microprogramas de memrias de controle).
Quando se liga uma mquina, da ROM que vem os programas que so carregados
e processados no "boot" (na inicializao o hardware aponta automaticamente para o
primeiro endereo da ROM). Desta forma, parte do espao de endereamento da MP
ocupada pela ROM. A ROM mais lenta que a R/W e barata, porm o processo
produtivo depende de ser programada por mscara ("mask programmed") em fbrica
45
Copyright 2009, ESAB Escola Superior Aberta do Brasil
e devido ao alto custo da mscara somente se torna econmica em grandes
quantidades.
46
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 12
Tipos de Memrias II Memria Principal
A memria precisa ter uma organizao que permita ao computador guardar e recuperar
informaes quando necessrio. No teria nenhum sentido armazenar informaes que no
fosse possvel recuperar depois. Portanto, no basta transferir informaes para a memria.
preciso ter como encontrar essa informao mais tarde, quando ela for necessria, e para
isso preciso haver um mecanismo que registre exatamente onde a informao foi
armazenada, este mecanismo conhecido como Clula.
O tamanho mais comum de clula era 8 bits (1 byte); hoje so comuns clulas contendo
vrios bytes.
A capacidade da MP em bits igual ao produto do n de clulas pelo total de bits por clula.
T=NxM
N = n de endereos
48
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Para encontrar a capacidade em bytes, bastaria encontrar a capacidade em bits e depois
dividir por 8 (cada byte contm 8 bits) ou ento converter o tamanho da clula para bytes e
depois multiplicar pelo nmero de clulas.
49
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 13
Tipos de Memrias III - Memria Cache
Cache uma memria especial de alta velocidade projetada para acelerar o processamento
das instrues dadas Memria Principal pela CPU. A CPU pode acessar instrues e
dados localizados na memria cache muito mais rapidamente do que na memria principal.
Para a CPU processar uma instruo necessrio que esta seja carregada no registrador de
instruo e seus operandos sejam trazidos da memria para os demais registradores.
Enquanto estes acessos Memria Principal (MP) so feitos, a CPU tem que ficar
esperando que os dados sejam disponibilizados. Para que a MP no seja um gargalo que
limite a velocidade de processamento da CPU; foi criado um esquema de utilizao de
memria Cache, que muito mais rpida que a principal, com tempos de acesso compatveis
com a velocidade da CPU, e que serve para guardar as ltimas posies de memria
acessadas.
Como a experincia nos mostra que a reutilizao dos mesmos dados ou instrues muito
intensa, este processo aumenta o desempenho do sistema de computao.
50
Copyright 2009, ESAB Escola Superior Aberta do Brasil
O chamado princpio da localidade est por trs da maneira como os programas operam.
Este princpio estabelece que os programas acessem uma parte relativamente pequena do
seu espao de endereamento em um instante qualquer. Existem dois diferentes tipos de
localidade:
51
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Figura 18 Exemplo de Princpio de localidade.
Quando o processador solicita um item de dado gerando uma referncia para seu endereo,
que pode ser fsico ou virtual, o gerenciador de memria requisita este item do cache. Duas
situaes podem ocorrer:
1. cache hit - Acerto: o item est presente no cache, retornado para o processador
praticamente sem perodo de latncia;
2. cache miss - Falta ou Falha: o item no est presente no cache e o processador deve
aguardar item ser buscado da memria principal.
Define-se como tempo de acerto o tempo necessrio para acessar o nvel superior da
hierarquia (cache), que inclui o tempo necessrio para determinar se o acesso a informao
vai gerar um acerto ou uma falta.
A penalidade por falta o tempo necessrio para substituir um dos blocos do nvel superior,
pelo bloco do nvel inferior contendo a informao desejada, mais o tempo para enviar a
informao ao processador. Em razo do nvel superior (cache) ser menor e de ser
constitudo de memrias mais rpidas, o tempo de acerto muito menor que o tempo
necessrio ao nvel mais baixo da hierarquia (MP). Justamente este tempo de acesso o
maior tempo dentro da penalidade por falta.
Para que haja aumento de desempenho, com a incluso da memria cache, necessrio
que exista mais acertos do que faltas. Isto implica no dimensionamento adequado da
memria cache como um todo e principalmente do tamanho de cada bloco.
Vdeo
Assista aos vdeos Como um computador funciona (parte 1 e 2) atravs do link Estudo
Complementar.
53
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 14
Registradores
Registradores de Dados
Registradores de Endereos
54
Copyright 2009, ESAB Escola Superior Aberta do Brasil
A quantidade e funo de registradores existentes variam de acordo com o modelo do
processador e de acordo com o fabricante.
Os registradores de uso geral podem ser usados para uma variedade de funes, em alguns
casos, podem ser usados para endereamentos. Em outros, existe uma separao clara ou
parcial entre registradores de dados e registradores de endereos.
Registradores de dados podem ser usados apenas para conter dados e no podem ser
usados no clculo de endereamentos dos operandos.
Registradores de endereos podem ser empregados, at certo ponto, como registradores de:
Propsito Geral ou podem ser dedicados para um determinado modo de endereamentos.
Alguns exemplos so:
55
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Outra questo importante a quantidade de registradores a serem disponibilizados, seja
para uso geral, seja para registradores de dados e de endereos. Um nmero muito pequeno
de registradores resulta em mais referncias memria. Um nmero muito grande, por outro
lado, no reduz significativamente o nmero de referncias memria. O nmero adequado
parece estar entre 8 e 32 registradores (STALLINGS, 2002).
O tamanho do registrador deve ser suficiente para acomodar o maior endereo usando no
sistema, no caso de registrador de endereos. No caso de registrador de dados, deve ser
capaz de conter a maioria dos tipos de dados.
56
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 15
Representao e Ciclo de Instruo
Representao da Instruo
57
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Cada uma das instrues tem um cdigo binrio associado, que o Cdigo da Operao.
O conjunto de instrues de uma mquina pode ser constitudo por instrues de diversos
formatos. Esta flexibilidade permite a escolha da instruo adequada para aplicao em cada
caso.
58
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Conjunto de instrues que pode ser analisado sob alguns aspectos, por exemplo:
- quantidade de instrues
- quantidade de operandos
Ciclo de Instruo
Execuo da instruo.
59
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Figura 19 - Ciclo de instruo bsico.
60
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 16
Modos de Endereamento
Modo Imediato
O mtodo mais simples e rpido de obter um dado indicar seu prprio valor no campo
operando da instruo, em vez de busc-lo na memria. A vantagem desse mtodo reside
61
Copyright 2009, ESAB Escola Superior Aberta do Brasil
no curto tempo de execuo da instruo, pois no gasta ciclo de memria para sua
execuo, exceto o nico requerido para a sua busca.
Desvantagens
- Este modo de endereamento no permite flexibilidade para alterar dados que variam a
cada execuo do programa, portanto no adequado para variveis repetidamente
operadas com diferentes valores a cada execuo do programa.
Modo Direto
Nesse mtodo, o valor binrio contido no campo operando da instruo indica o endereo de
memria onde se localiza o dado.
Vantagens
- Requer apenas uma referncia memria para busca do dado (alm de uma para a busca
da instruo), sendo mais rpido que o modo indireto.
Desvantagens
- Limitao do endereo da MP que pode ser indicado pelo tamanho do campo operando.
62
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Modo Indireto
Nesse mtodo, o valor binrio contido do campo operando representa o endereo de uma
clula, mas o contedo da referida clula no o valor de um dado (como no modo direto),
outro endereo de memria, cujo contedo o valor do dado. A grande desvantagem desse
mtodo , obviamente, a maior quantidade de ciclos de memria requerida para completar o
ciclo de instruo, pois para se acessar um dado, no modo indireto, necessrio efetuar dois
acessos memria. Um para buscar o endereo do dado e outro para, efetivamente, buscar
o dado.
Vantagens
Esse mtodo tem caracterstica semelhante aos modos direto e indireto, exceto que a clula
de memria referenciada na instruo substituda por um dos registradores do
processador. Com isso, o endereamento mencionado na instruo passa a ser o de um
registrador, e no mais de uma clula da MP.
A primeira vantagem, logo observada, consiste no menor nmero de bits necessrios para
enderear os registradores, visto que estes existem em muito menor quantidade que as
clulas de memria. H duas maneiras de empregar o modo de endereamento por
registrador:
63
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Modo por registrador direto
64
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 17
Pipelining
VDEO
Ateno! Antes de dar continuidade aos seus estudos. V ao ambiente CAMPUS ON-LINE e
assista ao vdeo referente UNIDADE 17.
Por exemplo: Em uma lavanderia, onde cada sacola de roupa a ser limpa equivalente a
uma instruo, cada etapa do processo de limpar a roupa (lavar, secar e dobrar) equivale a
um ciclo de processamento; e a quantidade de sacolas de roupa limpas num determinado
65
Copyright 2009, ESAB Escola Superior Aberta do Brasil
perodo de tempo era equivalente ao throughput do processador. Em uma lavanderia, sem
pipeline, embora tenha uma mquina de lavar, uma de secar e uma pessoa para dobrar a
roupa; somente uma sacola de roupa limpa de cada vez. Enquanto no lavar, secar e
dobrar as roupas desta sacola, nenhuma outra sacola de roupa pode ser limpa. Nada ocorre
simultaneamente.
Mtodo Assncrono
Mtodo Sncrono
67
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Um ciclo de relgio
S1 S2 S3 S4 S5
Busca de Decodificao de Leitura de Execuo Escrita de
Instrues Instrues Registradores de Instrues Resultados
L L L L
S1 a S2 a S3 a S4 a S5
Busca de t Decodificao t Leitura de t Execuo t Escrita de
Instrues c de Instrues c Registradores c de Instrues c Resultados
h h h h
68
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 18
Organizao de uma Interface de E/S (Comunicao entre a Memria e UCP
Barramentos)
Qualquer que seja o tipo de interface, a parte genrica muito semelhante. Nesta parte so
encontrados, usualmente, alguns registradores que variam em quantidade de acordo com o
tipo de perifrico acoplado. Pelo menos um registrador de dados, um registrador de
69
Copyright 2009, ESAB Escola Superior Aberta do Brasil
controle e um registrador de estado esto inclusos, sendo o acesso a estes registradores
feitos atravs de endereos de E/S diferentes.
O registrador de estado usado para veicular informaes gerais sobre uma operao de
E/S. Tipicamente, este registrador possui bits para indicar o trmino de uma operao e para
indicar condies de erro que eventualmente possam acontecer durante a operao.
A parte especfica tem interao direta com o perifrico, sendo desta forma muito diferente
de um perifrico para outro. Apesar das diferenas, geralmente na parte especfica temos
dois conjuntos de sinais, um a via atravs da qual os dados so transferidos; outro so os
sinais de controle com o perifrico.
Barramento de E/S
Um barramento, ou bus, nada mais do que um caminho comum pelo qual os dados
trafegam dentro do computador. Este caminho usado para comunicaes e pode ser
estabelecido entre dois ou mais elementos do computador.
O tamanho de um barramento importante, pois ele determina quantos dados podem ser
transmitidos em uma nica vez. Por exemplo, um barramento de 16 bits pode transmitir 16
bits de dado, e um barramento de 32 bits pode transmitir 32 bits de dados a cada vez.
70
Copyright 2009, ESAB Escola Superior Aberta do Brasil
processador e cada dispositivo de E/S, permitindo que um sistema suporte muitos
dispositivos de E/S diferentes; dependendo das necessidades dos seus usurios, e
permitindo que estes mudem os dispositivos de E/S, que esto conectados em seus
sistemas, medida que as suas necessidades mudam. A principal desvantagem dos
barramentos em geral (e tambm dos barramentos de E/S) que tem uma largura de banda
fixa que precisa ser compartilhada por todos os dispositivos que esto sobre ele.
71
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 19
Entrada/Sada
72
Copyright 2009, ESAB Escola Superior Aberta do Brasil
O que todos os dispositivos de entrada tm em comum que eles precisam codificar
(converter) a informao de algum tipo em dados que podem ser processados pelo sistema
digital do computador. Dispositivos de sada por outro lado, decodificam os dados em
informao que entendida pelo usurio do computador. Neste sentido, um sistema de
computadores digital um exemplo de um sistema de processamento de dados.
73
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 20
Formas de Comunicao
Comunicao Serial
Na comunicao Serial, o byte enviado por apenas uma via ou fio. Para que isso seja
possvel, o byte desmembrado em bits e cada um enviado separadamente, um aps o
outro. No local da recepo, os bits so "montados" novamente, recompondo o byte. Os
sinais de controle so enviados separadamente.
74
Copyright 2009, ESAB Escola Superior Aberta do Brasil
A porta serial contm um chip UART (Universal Asyncbronous Reciver/Transmiter) e alguns
componentes de apoio. Como o nome indica, este chip recebe dados provenientes do
barramento do PC e os traduz para o formato utilizado nas transmisses seriais.
O chip tambm executa o procedimento inverso: receber uma string de dados, remover os
caracteres de enquadramento e transferir os bytes de dados para o PC.
Comunicao Paralela
Comunicao Paralela aquela em que os bits, que compem um byte ou palavra de dados,
so enviados ou recebidos simultaneamente bem como os sinais de controle de
comunicao. Para que isso seja possvel, faz-se necessrio um meio fsico (fio) para cada
informao, seja ele de dado ou de controle.
75
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Figura 26 - Esquema de comunicao paralela.
76
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Figura 27 - conector de uma interface paralela do tipo DB-25
Antes de dar continuidade aos seus estudos fundamental que voc acesse sua
SALA DE AULA e faa a Atividade 2 no link ATIVIDADES.
77
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 21
Tcnicas de Transferncia de Dados I
Na E/S com polling, o processador controla toda a transferncia de dados entre a memria e
a interface de E/S. Para entender como o procedimento desta tcnica, considere o exemplo
de uma operao de escrita em um setor de disco. Suponha que a interface controladora de
disco semelhante quela mostrada na abaixo. Normalmente, o registrador de estado possui
um bit, chamado done bit, que desativado quando um dado escrito no registrador de
dados, sendo ativado quando este dado escrito no setor do disco. O diagrama abaixo
mostra como acontece escrita de um setor de disco usando-se E/S com polling.
78
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Figura 28 - Exemplo de E/S com polling.
79
Copyright 2009, ESAB Escola Superior Aberta do Brasil
A principal vantagem da E/S com polling a sua simplicidade. No entanto, esta tcnica
possui a desvantagem de que o processador fica dedicado operao de E/S. Isto pode ser
extremamente ineficiente, sob o ponto de vista da utilizao do processador. Considere uma
operao de envio de um bloco de caracteres para uma impressora. O tempo de impresso
de um caracter infinitamente maior que o tempo de execuo de uma instruo. Manter o
processador em polling durante o tempo de impresso de cada caracter um desperdcio, j
que durante este intervalo de tempo o processador poderia executar alguns milhes de
instrues de outro programa. Devido ao fato que o processador fica dedicado operao de
E/S at o seu trmino, o uso da tcnica de E/S com polling restrito apenas a sistemas onde
apenas um programa pode se encontrar em execuo a cada instante.
Na E/S com polling, o processador fica dedicado operao de E/S porque ele o
responsvel por determinar quando um novo dado pode ser transferido entre a memria e a
interface de E/S. O mesmo no acontece na E/S com interrupo. Nesta tcnica, a interface
responsvel por notificar o processador quando um novo dado pode ser transferido.
Enquanto a E/S com polling uma tcnica puramente de software, a E/S com interrupo
requer um suporte de hardware. A interface deve gerar um sinal de interrupo, atravs do
qual ela notifica o processador quando uma operao de E/S foi concluda.
80
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Figura 29 - Exemplo de E/S com interrupo.
81
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 22
Tcnicas de Transferncia de Dados II
82
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Em um sistema comum existirem vrias interfaces diferentes que fazem pedidos de
interrupo ao processador. Cada interface deve ser atendida por uma rotina de servio de
interrupo especfica para aquela interface. Assim, ao receber um pedido de interrupo, o
processador deve determinar qual a rotina de servio a ser executada. Alm disso, quando
duas ou mais interfaces fazem pedidos de interrupo simultneos, necessrio decidir qual
o pedido de interrupo que ser atendido. Estas duas funes so suportadas por um
componente do subsistema de E/S, chamado controlador de interrupo (interrupt controller).
Como mostra a figura abaixo, o sinal de interrupo de cada interface ligado ao controlador
de interrupo. O controlador de interrupo atribui um nmero e uma prioridade a cada um
destes sinais. Quando um pedido de interrupo acontece, o controlador de interrupo
envia para o processador, atravs do barramento de dados, o nmero do pedido. No caso de
dois ou mais pedidos simultneos, o controlador decide qual o pedido com maior prioridade
e envia para o processador o nmero correspondente.
O processador usa o nmero recebido do controlador para indexar uma tabela armazenada
na memria, chamada tabela de vetores de interrupo (interrupt vector table). Cada entrada
desta tabela contm o ponteiro, ou vetor, para uma rotina de servio. Ao receber um nmero
de interrupo n, o processador l o vetor contido na posio n da tabela e passa a executar
a rotina de servio de interrupo apontada por este vetor.
83
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 23
Tcnicas de Transferncia de Dados III
Na E/S com DMA (Direct Memory Access) um componente do subsistema de E/S, chamado
controlador de DMA, responsvel por transferir os dados entre a memria e a interface de
E/S. A Figura 5.6 mostra como o controlador de DMA ligado ao resto do sistema.
Ao escrever o dado no setor do disco, a interface faz um novo pedido de DMA. O controlador
de DMA inicia uma nova transferncia, colocando o endereo do prximo dado no
barramento de endereo e ativando os sinais de controle apropriados. Este passo se repete
at que todos os dados tenham sido transferidos. Ao concluir a ltima transferncia, o
controlador de DMA retira o pedido de barramento, permitindo que o processador volte
operao normal.
Note que na E/S com DMA a transferncia de cada dado envolve apenas uma leitura de
memria e uma escrita de interface de E/S, realizadas pelo prprio controlador de DMA. A
E/S com DMA efetivamente elimina o tempo de latncia associado a cada dado transferido,
que existe na E/S com interrupo. Isto permite que a E/S com DMA atinja taxas de
transferncia bem maiores que as tcnicas de E/S que envolvem o controle do processador.
Em geral, possvel ter vrias interfaces de E/S operando com a tcnica de acesso direto
memria. Para tanto, o controlador de DMA possui vrias entradas para pedido de DMA. O
controlador de DMA associa a cada uma destas entradas um conjunto independente de
registradores para armazenar o nmero de dados a serem transferidos, o endereo inicial e o
sentido da transferncia. Um grupo de sinais de controle com seus respectivos registradores
formam o chamado canal de DMA. O controlador de DMA se encarrega de arbitrar entre
interfaces que fazem pedidos de DMA simultneos, usando um esquema de prioridades
atribudas aos canais de DMA.
86
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 24
Padres de Barramento I
Os principais barramentos
ISA Industry Standard Architecture: Criado em 1984 para os micros IBM PC/AT. capaz
de executar transferncias de dados de 8 ou 16 bits operando a 8 MHz. Apesar de estar
ultrapassado, este padro ainda suficiente para a conexo de placas de udio, modems e
outros dispositivos que no demandam grandes pr-requisitos de desempenho.
87
Copyright 2009, ESAB Escola Superior Aberta do Brasil
EISA Extended Industry Standard Architecture: Padro de barramento que amplia o
barramento tradicional (ISA) de 16 bits para 32 bits. Alm disso, este padro permite que
mais de um processador compartilhe o barramento. Projetado como resposta ao MCA, o
EISA aceita as placas de expanso ISA.
VESA Local Bus: O padro VESA foi desenvolvido por um grupo de fabricantes denominado
Video Electronic Standards Association. Surgiu como uma opo para acomodar perifricos
(principalmente as placas controladoras de vdeo e de disco) capazes de executar
transferncias de dados de 32 bits. Permaneceu durante alguns anos como uma alternativa
boa e barata para viabilizar a melhoria da performance do sistema computacional como um
todo. Um slot VLB (VESA Local Bus) um slot ISA 16 bits com um terceiro e quarto slots no
final. Desta maneira, uma placa ISA pode ser conectada no VLB.
88
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 25
Padres de Barramento II
89
Copyright 2009, ESAB Escola Superior Aberta do Brasil
O barramento PCI opera concorrentemente com o barramento do processador. A CPU pode
processar os dados como um cache externo enquanto o barramento PCI est ocupado
transferindo informao entre outras partes do sistema. Alm de ser mais eficiente, o
barramento PCI incorpora o recurso Plug and Play, no necessitando que o usurio configure
as placas adaptadoras.
As taxas de transferncia chegam a 132 MB/s para 32 bits e 264 MB/s para 64 bits, para um
clock de 33 Mhertz.
AGP: Accelerated Graphic Port: Criado pela Intel para acelerar o trabalho das placas de
vdeo, fazendo com que elas se comuniquem direto com a memria RAM atravs da Ponte
barramento local barramento PCI. utilizado exclusivamente para placas de vdeo 3D.
Pode trabalhar com trs taxas de transferncia: x 1, 266 MB/s, x 2, com taxa de transferncia
de 533 MB/s e x 4, com taxa de transferncia de 1 GB/s. Tais taxas dependem da placa de
vdeo e da frequncia FSB da placa-me.
USB: Universal Serial Bus: A interface externa USB fornece uma comunicao serial de 12
Mbps, apenas sobre uma conexo de 4 fios. Um nico porto USB pode ser usado para
conectar at 127 perifricos, tal como mouse, modems, teclados, scanners, cmeras. E A
90
Copyright 2009, ESAB Escola Superior Aberta do Brasil
USB tambm atende s especificaes Plug and Play da Intel, inclusive de poder conectar os
dispositivos com a mquina ligada e sem precisar reinici-las. Simplesmente se conecta o
dispositivo e a USB ir detectar automaticamente e alocar os recursos necessrios para o
seu funcionamento. Entre os sinais transportados pelo cabo USB, existe uma corrente de
alimentao auxiliar de 5 V que permite energizar pequenos dispositivos USB.
Figura 35 - USB.
Firewire (IEEE 1394): O firewire um barramento serial padro externamente rpido que
suporta taxas de transferncias de dados de at 400 MBps. Um nico ponto 1394 pode ser
usado para conectar at 63 dispositivos externos. Alm da alta velocidade, o firewire tambm
suporta dados iscronos, transmitindo dados com uma taxa garantida. Isto ideal para
dispositivos que necessitam altas taxas de transferncias em tempo real, tal como
dispositivos de vdeo. Embora muito rpido, o firewire muito caro. Tal como o USB, o
firewire suporta Plug and Play, e tambm fornece potncias aos perifricos.
91
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Figura 36 - Firewire.
92
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 26
Execuo de Programas I
VDEO
Ateno! Antes de dar continuidade aos seus estudos. V ao ambiente CAMPUS ON-LINE e
assista ao vdeo referente UNIDADE 26.
Para executar qualquer tarefa, um computador precisa receber instrues precisas sobre o
que fazer. Uma sequncia adequada de instrues de computador, para a realizao de uma
determinada tarefa, se constitui num PROGRAMA de computador. Uma linguagem de
programao um conjunto de ferramentas, regras de sintaxe e smbolos ou cdigos que
nos permitem escrever programas de computador, destinados a instruir o computador para a
realizao de suas tarefas.
93
Copyright 2009, ESAB Escola Superior Aberta do Brasil
eram escritos em linguagem de mquina. As instrues eram escritas diretamente na
linguagem do computador (formada apenas com 1 e 0).
Ento, um programa extenso escrito apenas usando 1 e 0; imagine que para cada diferente
marca ou modelo de computador as regras para entender esses cdigos sero totalmente
diferentes e, finalmente. Se as instrues tivessem que ser escritas uma a uma; os dados
adequadamente codificados e ordenados, perfurar todos os programas em cartes e
submeter toda a massa de cartes ao computador, para finalmente receber algumas horas
depois o seu programa de volta com uma mensagem de erro tipo "erro no carto X" (e mais
nada!). Um programa escrito nessa linguagem era difcil de ser escrito sem que se
cometessem muitos erros, processo esse longo, difcil, entediante e principalmente caro.
94
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Um programa em linguagem de mquina era tambm extremamente difcil de ser entendido
por outros programadores que futuramente viessem a trabalhar na manuteno do programa.
Essa complexidade levou necessidade de se desenvolverem tcnicas e ferramentas para
tornar a escrita e manuteno de programas mais fcil, mais rpida e principalmente mais
barata.
Linguagem de Montagem
A primeira tentativa bem-sucedida para resolver o problema acima descrito foi criao de
uma linguagem em que os cdigos numricos foram substitudos por mnemnicos (palavras
ou smbolos), como por exemplo, LOAD = carregar e ADD = somar.
Foram tambm definidas regras de sintaxe, de fcil memorizao; de forma a tornar a escrita
de programas, e sua posterior manuteno, uma tcnica de complexidade relativamente
menor.
95
Copyright 2009, ESAB Escola Superior Aberta do Brasil
importante lembrar que um computador entende nica e exclusivamente a sua prpria
linguagem de mquina. Portanto, para escrever um programa em outra linguagem
(mnemnicos), e ela ser entendido e processado no computador (linguagem de mquina);
preciso haver algum outro programa que leia o programa escrito nessa linguagem alternativa
e o traduza para a linguagem nativa do computador.
96
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 27
Execuo de Programas II
Linguagens de Programao
Nas dcadas de 60 e 70, podemos citar Pascal, a primeira linguagem de alto nvel
estruturada; BASIC, linguagem criada para facilitar a programao por no-profissionais; e
ADA, linguagem para processamento em tempo real criada sob encomenda do DoD
(Department of Defense norte-americano).
97
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Na dcada de 80, surgiu o C e depois o C++ (com suporte a objetos), que esto entre as
linguagens mais utilizadas hoje.
Cada nova linguagem criada visa atingir nveis de abstrao mais altos, pois afastam cada
vez mais o programador do nvel de mquina. Se por um lado essas novas linguagens
facilitam muito o trabalho dos programadores, pois reduzem a necessidade de conhecer o
hardware da mquina; elas cobram um alto preo em termos de desempenho, pois so cada
vez mais lentas, ao consumir cada vez mais ciclos de mquina e espao em memria.
Caso queira saber mais sobre a Lei de Moore no deixe de acessar o link:
http://pt.wikipedia.org/wiki/Lei_de_Moore
98
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Caso queira saber mais sobre .NET, acesse:
http://msdn.microsoft.com/pt-br/default.aspx ou
http://pt.wikipedia.org/wiki/.NET
http://pt.wikipedia.org/wiki/Java_(linguagem_de_programa%C3%A7%C3%A3o)
Traduo
Montagem
99
Copyright 2009, ESAB Escola Superior Aberta do Brasil
a) Verificar a correo do cdigo de instruo (se o mnemnico corresponde a uma
instruo vlida para o computador, se os campos definidos na estrutura da linguagem
e a sintaxe esto corretos) e substituir os mnemnicos pelos cdigos numricos
binrios equivalentes. Qualquer erro no cdigo acarreta a interrupo do processo e a
emisso de mensagem de erro.
100
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 28
Execuo de Programas III
Compilao
101
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Figura 38 Processo de Compilao.
Bibliotecas
Uma linguagem de alto nvel geralmente incorpora diversas rotinas prontas (que fazem parte
da linguagem) e que compem bibliotecas (libraries) de funes pr-programadas que
podero ser utilizadas pelo programador, poupando tempo, aumentando a eficincia e
evitando erros. Dessa forma, um programa em alto nvel possivelmente conter diversas
chamadas de biblioteca.
102
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Ligao (Linkedio)
O mdulo de carga aps ser testado e depurado armazenado em memria de massa para
ser executado quando necessrio. O processo de compilao e ligao executado apenas
pelo programador na fase de desenvolvimento e no mais precisar ser executado pelo
usurio, quando da execuo do programa.
103
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Interpretao
As linguagens voltadas para Web (como ASP, PHP, ColdFusion, etc) so interpretadas. A
imagem a seguir exemplifica o processo de interpretao.
104
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Figura 40 Processo Interpretao.
105
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 29
Execuo de Programas IV
Sempre que houver duas opes, haver vantagens e desvantagens para cada uma delas,
pois se assim no fosse, a que apresentasse sempre desvantagem seria abandonada. A
seguir uma comparao entre os dois mtodos:
Tempo de execuo
No mtodo de interpretao, cada vez que o programa for executado, haver compilao,
ligao e execuo de cada um dos comandos. No mtodo de Compilao, o tempo de
execuo do programa reduzido, porque todos os passos preliminares (compilao e
ligao) foram previamente cumpridos.
Consumo de memria
106
Copyright 2009, ESAB Escola Superior Aberta do Brasil
No mtodo de compilao, o compilador carregado e fica na memria apenas durante o
tempo de compilao, depois descarregado; o ligador carregado e fica na memria
apenas durante o tempo de ligao, depois descarregado. Essas so funes realizadas
pelo programador e executadas apenas durante o desenvolvimento do programa. Quando o
usurio for executar o programa, apenas o mdulo de carga (cdigo executvel) carregado
e fica na memria durante a execuo.
Repetio de interpretao
107
Copyright 2009, ESAB Escola Superior Aberta do Brasil
direta e imediatamente sentido. Quando a execuo de um comando acarreta erro, quase
sempre o erro pode ser encontrado no comando que acabou de ser executado. Assim, o
interpretador pode informar o erro, indicando o comando ou varivel causadora do problema.
Plataforma Cliente
Pginas WEB utilizam linguagens padronizadas, tais como HTML - para a escrita das
pginas - e linguagens interpretadas como ASP, PHP, ColdFusion, entre outras para
codificao dos aplicativos. Assim, cada uma das plataformas atravs dos programas
visualizadores de pginas Internet, conhecidos como browsers ou mesmo atravs de seus
respectivos sistemas operacionais, pode interpretar corretamente qualquer pgina feita e
hospedada em qualquer computador.
108
Copyright 2009, ESAB Escola Superior Aberta do Brasil
U NIDADE 30
Execuo de Programas V
Mquinas Virtuais
Desta forma, possvel ter no PC domstico uma mquina virtual com Linux, Windows 2008
Server, ou qualquer outro sistema operacional que desejar.
109
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Caso queira saber mais sobre mquinas virtuais acesse o link:
http://pt.wikipedia.org/wiki/M%C3%A1quina_virtual
http://www.microsoft.com/downloads/details.aspx?FamilyId=04D26402-3199-48A3-AFA2-
2DC0B40A73B6&displaylang=en
Bytecode Java
110
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Figura 41 Java Bytecode.
http://en.wikipedia.org/wiki/Java_bytecode
111
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Antes de iniciar sua Avaliao Online, fundamental que voc acesse sua SALA
DE AULA e faa a Atividade 3 no link ATIVIDADES.
Atividades dissertativas
Acesse sua sala de aula, no link Atividade Dissertativa e faa o exerccio proposto.
Bons Estudos!
112
Copyright 2009, ESAB Escola Superior Aberta do Brasil
G LOSSRIO
113
Copyright 2009, ESAB Escola Superior Aberta do Brasil
Disco Rgido: Tambm conhecido como Winchester ou HD (hard disk), o disco rgido tem a
funo de armazenar fisicamente os arquivos de seu computador.
DRAM EDO: Dynamic Randon Access Memory Extended Data Out - um aperfeioamento
da DRAM , aumentando a velocidade de transaes de memria por eliminar estados de
espera entre as execues de comandos de leitura seqencial.
DRAM: Dynamic Randon Access Memory (Dinamyc RAM) - Memria Dinmica de Acesso
Aleatrio - RAM dinmica - tipo de chip RAM que requer que seu contedo seja atualizado
freqentemente.
EDO RAM: Extended Data Output RAM. Diz respeito a uma forma avanada de acesso aos
valores dentro da prpria memria, normalmente do tipo DRAM. Surgiu como uma melhoria
do modo FPM, o que melhorou consideravelmente o desempenho da memria. Esta
melhoria levantou a ideia de que a cache de Nvel 2 era dispensvel, mas com a evoluo
dos CPU's essa idia foi abandonada.
EEPROM: Electrically Erasable Programmable ROM. A EEPROM foi desenvolvida no incio
dos anos 80, e apresentada ao mercado como um aperfeioamento da idia da PROM. A
maior vantagem da EEPROM sobre a EPROM a possibilidade de apagar e reprogramar
palavras individuais, em vez da memria toda. Alm disso, uma EEPROM pode ser
totalmente apagada em 10 ms, no prprio circuito, contra mais ou menos 30 minutos para
uma EPROM que deve ser retirada do circuito para submeter-se ao dos raios
ultravioleta;
Ethernet: Um padro muito usado para a conexo fsica de redes locais, originalmente
desenvolvido pelo Palo Alto Research Center (PARC) da Xerox nos EUA. Descreve
protocolo, cabeamento, topologia e mecanismos de transmisso.
EPROM: pode ser programada pelo usurio, podendo, alm disso, ser apagada e
reprogramada quantas vezes forem necessrias. Uma vez programada, a EPROM comporta-
se como memria no voltil que reter os dados nela armazenados indefinidamente. Uma
vez que uma clula da EPROM tenha sido programada, possvel apag-la expondo
radiao ultravioleta, aplicada atravs da janela do chip. O processo para apagar requer uma
exposio de 15 a 30 minutos aos raios ultravioleta.
Flash-BIOS: um tipo especial de BIOS que permite a sua atualizao; nos micros antigos a
BIOS era gravada em uma memria EPROM e no sofria alteraes. Nos computadores
modernos, a BIOS esta colocada em uma flash-BIOS que pode ser alterada para receber
uma nova verso.
Flash-ROM: Este um tipo especial de ROM que tambm recebe o nome de flash memory, e
muito utilizada nas flash BIOS sendo um meio termo entre EPROM e EEPROM. Assim como
a EPROM ela pode ser totalmente apagada, mas isso feito eletricamente em um tempo bem
mais curto. Por ela no permite o apagamento ao nvel de byte, como faz a EEPROM;
114
Copyright 2009, ESAB Escola Superior Aberta do Brasil
FPM: Fast Page Mode DRAM. um modo de acesso aos valores dentro da prpria memria,
normalmente do tipo DRAM. Este modo est completamente obsoleto e no utilizado
vulgarmente. Os tempos de acesso conseguidos com este modo so superiores a 70 ns.
Posteriormente surgiu o modo EDO.
HD: Veja Disco Rgido.
LSI: L arge-scale integration. Circuitos com larga escala de integrao (alguns milhares de
transistores por "chip").
Memria Cache: Seo de memria de alta velocidade que armazena as informaes
utilizadas com mais freqncia pelo computador, possibilitando assim a reduo do nmero
de vezes que o sistema recorre memria RAM.
Memria virtual Memria oferecida pelo sistema operacional para ampliar o tamanho da
memria principal do computador. Trata-se de uma simulao da memria RAM principal em
disco, o que permite que o espao de endereamento do computador ultrapasse a memria
fsica disponvel.
Pipeline cache: Um tipo de memria cache incorporado em vrios projetos de DRAM . Usa
duas tcnicas - um modo "burst" que carrega o contedo da memria antes que ele seja
solicitado, e um modo pipelining em que um valor de memria pode ser acessado no cache
ao mesmo tempo em que outro valor de memria acessado em DRAM. O propsito desse
cache o de minimizar estados de espera de forma que a memria possa ser acessada to
rapidamente quanto possvel pelo microprocessador.
Pipeline: Canal pelo qual informao transmitida privadamente. Uma linha de suprimento.
Diz-se da arquitetura encadeada de computadores (em pipeline). Ponto ou situao onde a
sada de um comando serve como entrada em outro. Recurso que permite que os
processadores executem instrues como em uma linha de montagem: cada instruo leva
vrios ciclos da mquina para ser completamente processada; o recurso de iniciar o
processamento de uma instruo enquanto uma anterior ainda est sendo processada, para
aumentar a velocidade de execuo de um programa.
Pipelining: Tcnica usada em microprocessadores avanados onde o microprocessador
comea executando uma segunda instruo antes que a primeira esteja completada. Dessa
forma, diversas instrues podem estar em processamento simultaneamente, cada uma em
um estgio de processamento.
Processador: a unidade de processamento e controle do computador. O dispositivo
(placa) de circuitos eletrnicos que interpreta e executa as principais funes da mquina.
PROM: Para aplicaes mais modestas em termos de quantidades de chips a serem
produzidos, a indstria desenvolveu as memrias PROM a fusvel, programveis pelo
usurio, isto , elas no so programadas durante o processo de fabricao, e sim pelo
usurio, de acordo com suas necessidades. Porm, uma vez programada no pode ser
apagada e reprogramada.
115
Copyright 2009, ESAB Escola Superior Aberta do Brasil
RAM: Random Access Memory (Memria de Acesso Aleatrio). Essa memria fisicamente
apresenta-se por Chips prprios e armazena as informaes dos softwares que esto sendo
executados momentaneamente. Tem a finalidade de facilitar pela rapidez o acesso s
informaes temporrias mais comuns utilizadas e no se presta ao armazenamento de
dados, pois ao desligar o computador ela se apaga automaticamente.
ROM : Read Only Memory, memria somente de leitura, tem capacidade de armazenar de
forma permanente a informao, sem exigir para isso qualquer tipo de alimentao eltrica.
SSI : Short Scale of Integration. Baixa escala de integrao (algumas dezenas de
transistores por chip).
Uart (Universal Asynchronous Receiver Transmitter): Dispositivo que transmite e recebe os
dados durante comunicaes seriais. Os projetos mais antigos de UART, como o 8250 e o
16450 podem ter problemas com as comunicaes e operaes de alta velocidade dos
ambientes multitarefa. O projeto de 16550 alivia esses problemas atravs da incorporao de
um buffer FIFO (first-in/first-out - o primeiro que entra o primeiro que sai) de 16 bytes. Placa
de vdeo que contm um chip especial para ajudar o computador a exibir imagens na tela
mais rapidamente.
USB (Universal Serial Bus): Nova interface para conexo ao micro, com funcionamento Plug
and Play, capaz de receber de maneira simples e rpida at 127 dispositivos externos,
ligados por meio de um concentrador.
VLSI : V ery large-scale integration . Integrao em Escala Muito Alta (100.000 transistores
por "chip).
ULSI: Ultralarge scale integration.
116
Copyright 2009, ESAB Escola Superior Aberta do Brasil
B IBLIOGRAFIA
Caso haja dvidas sobre algum termo ou sigla utilizada, consulte o link Bibliografia em sua
sala de aula, no site da ESAB.
117
Copyright 2009, ESAB Escola Superior Aberta do Brasil