Buscar

Arquitetura de Computadores_Capitulo 01

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 5 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Introdu�c~ao
� Um computador digital �e uma m�aquina capaz de solucionar problemas atrav�es da execu�c~ao
de instru�c~oes.
� Uma seque^ncia de instru�c~oes que descreve como executar uma tarefa denomina-se Programa.
� Os circuitos do computador executam um conjunto limitado de instru�c~oes simples:
{ Somar dois n�umeros.
{ Veri�car se um n�umero �e zero.
{ Mover um dado de uma parte da mem�oria para outra.
� As instru�c~oes primitivas do computador formam uma linguagem denominada linguagem de
m�aquina.
� As linguagens de m�aquina s~ao muito simples, tornando a programa�c~ao dif��cil e tediosa. Por
isto projeta-se um novo conjunto de instru�c~oes, mais conveniente do que a linguagem de
m�aquina.
� Como exemplo, podemos considerar este novo conjunto de instru�c~oes de linguagem L2 e a
linguagem de m�aquina de L1.
� Os programas escritos em L2 n~ao podem ser executados diretamente no computador. Somente
programas escritos em L1 podem ser executados diretamente.
� Para que um programa em L2 possa ser executado no computador deve-se utilizar :
{ Tradu�c~ao: Consiste em substituir cada instru�c~ao de L2 por uma seque^ncia equivalente
de L1. O programa resultante �e composto de instru�c~oes de L1. Este programa resultante
�e que ser�a executado.
{ Interpreta�c~ao: Um programa escrito em L1 (interpretador) recebe um programa em L2
como dados de entrada e o executa examinando uma instru�c~ao de cada vez, executando
a seque^ncia equivalente de instru�c~oes L1 diretamente.
push ax
push bx
mov ax,5h
mov bx,12h
int 10h
mov ax,bx
mov dx,cx
add ax,dx
mov [bp],ax
mov ax,5h
mov bx,12h
int 10h
mov ax,bx
mov dx,cx
mul ax,dx
mov [bp],ax
mov ax,15h
mov cx,1h
int 12h
Read (A,B)
C := A + B
D := A * B
Write(E)
Programa em L2
Programa correspondente em L1
1
Introdu�c~ao
� Ao inv�es de pensar em termos de tradu�c~ao e interpreta�c~ao, pode-se imaginar uma m�aquina
virtual cuja linguagem de m�aquina seja L2.
� Uma m�aquina virtual M1 suporta a linguagem L1 e a m�aquina virtual M2 suporta a lin-
guagem L2.
� Computadores modernos consistem de uma s�erie de m�aquinas virtuais, aonde cada uma prove^
progressivamente um n��vel maior de abstra�c~ao.
� Em cada n��vel ou m�aquina virtual, decis~oes de projeto necessitam ser feitas para serem incor-
poradas.
� Isto tamb�em �e verdadeiro nos n��veis mais baixos para determinar o que deveria ser implemen-
tado por hardware ou software. Hardware e software s~ao logicamente equivalentes.
� M�aquinas Multin��veis Contempora^neas.
{ A maioria dos computadores modernos possui dois ou mais n��veis.
{ As m�aquinas de seis n��veis s~ao mais comuns.
{ N��vel 0 - N��vel da L�ogica Digital.
� Constitu��do de portas l�ogicas.
� Cada porta possui uma ou mais entradas digitais (sinais representando 0 ou 1).
� Cada porta �e constituida por no m�aximo por um punhado de transistores.
{ N��vel 1 - N��vel de Microprograma�c~ao.
� Verdadeiro n��vel de linguagem de m�aquina.
� Existe um microprograma, cuja fun�c~ao �e interpretar as instru�c~oes de n��vel 2.
2
Introdu�c~ao
� M�aquinas Multin��veis Contempora^neas(Cont.).
{ N��vel 2 - N��vel de M�aquina Convencional.
� Cada microprograma de�ne implicitamente uma linguagem de n��vel 2.
� M�aquinas de n��vel 2 de fabricantes diferentes te^m mais semelhan�cas do que diferen�cas.
� Fabricantes de computadores publicam "Manual de Refere^ncia da Linguagem de M�aquina".
� Quando eles descrevem o conjunto de instru�c~oes de m�aquina, est~ao, de fato, de-
screvendo as instru�c~oes interpretadas pelo microprograma, e n~ao as pr�oprias in-
stru�c~oes de hardware.
{ N��vel 3 - N��vel de Sistema Operacional.
� N��vel H��brido. A maior parte das instru�c~oes desta linguagem est�a tamb�em na lin-
guagem de n��vel 2.
� As novas facilidade adicionadas ao n��vel 3 s~ao efetuadas por um intepretador em
execu�c~ao no n��vel 2, que historicamente tem sido denominado sistema operacional.
� Instru�c~oes de n��vel 3 ide^nticas �as do n��vel 2 s~ao executadas diretamente pelo micro-
programa, e n~ao pelo sistema operacional.
{ N��vel 4 -N��vel de Linguagem de Montagem.
� uma forma simb�olica para uma linguagem subjacente.
� Prove^ um m�etodo para as pessoas escreverem programas para os n��veis 1, 2 e 3
de uma maneira nem t~ao desagrad�avel quanto as pr�oprias linguagens de m�aquina
virtual.
� Os programas em linguagem de montagem s~ao primeiramente traduzidos para a
linguagem de n��vel 1, 2 ou 3, e ent~ao s~ao interpretados pela m�aquina virtual ou real
apropriada. O programa que executa a tradu�c~ao �e denominado montador.
{ N��vel 5 - N��vel de Linguagens de Alto N��vel.
� Consiste de linguagens projetadas para serem utilizadas por programadores de aplica�c~ao.
Tais linguagens s~ao denominadas linguagens de alto n��vel (C, COBOL, PASCAL,
ETC.).
� Os programas escritos nestas linguagens s~ao geralmente traduzidos para o n��vel 3
ou 4 por tradutores conhecidos como compiladores, embora ocasionalmente eles
sejam interpretados.
Nível 5
Read(A, B)
Nível 4
push ax
push bx
mov ax, 5h
mov bx, 12h
int 10h
Nível 3
EA0100
EA0101
EB0010010
EB011001
int 10h
Nível 2
EA0100
EA0101
EB0010010
EB011001
CD01011011
FA0101101
Nível 1
Acionar barramento de controle.
Colocar dados do registrador BX no
barramento de dados.
Enviar para a ULA dados do
registrador AX.
Indicar leitura de memória
Enviar sinal para temporizador
Nível 0
3
Introdu�c~ao
� M�aquinas Multin��veis Contempora^neas.
{ Os n��veis 2 e 3 s~ao interpretados.
{ Os n��veis 4, 5 e superiores s~ao geralmente suportados por tradu�c~ao.
{ As linguagens de n��veis 1, 2 e 3 s~ao num�ericas, consistindo de longas s�eries num�ericas.
{ A partir do n��vel 4 as linguagens cont�em palavras e abreviaturas.
{ O conjunto de tipos de dados, opera�c~oes e caracter��sticas de cada n��vel �e denominado
sua arquitetura.
{ O estudo do projeto das partes de um computador vis��veis ao programador denomina-se
arquitetura de computadores.
� Hardware, Software e M�aquinas Multin��veis.
{ Hardware - Composto de objetos tang��veis (Circuitos integrados, placas de circuito im-
presso, cabos, fontes de alimenta�c~ao, mem�orias, impressoras terminais, etc).
{ Software - Consiste em Algoritmos (instru�c~oes detalhadas que dizem como fazer algo)
e suas representa~oes para o computador, ou seja, os programas.
{ Firmware - Forma intermedi�aria entre o hardware e o software. Consiste no software
embutido em dispositivos eletro^nicos. Em muitos computadores o microprograma est�a
no �rmware.
{ Hardware e software s~ao logicamente equivalentes, isto �e, qualquer opera�c~ao executada
pelo software pode ser implementada pelo hardware e vice-versa. A decis~ao se baseia em
fatores tais como: custo, velocidade, con�abilidade e freque^ncia esperada de altera�c~oes.
{ Nos primeiros computadores, O hardware executava algumas instru�c~oes simples tais como
ADD(somar) ou JUMP(Saltar para), e tudo mais era programado explicitamente.
{ Com o passar do tempo, tornou-se claro que certas opera�c~oes eram executadas com uma
freque^ncia su�ciente para justi�car a constru�c~ao de circuitos especiais para execut�a-las
diretamente pelo hardware(para torn�a-las mais r�apidas).
4
Introdu�c~ao
� Hardware, Software e M�aquinas Multin��veis(Cont.).
{ Com a chegada da microprograma�c~ao e de computadores multin��veis a tende^ncia oposta
tamb�em ocorreu. Nos primeiros computadores a instru�c~ao ADD era executada pelo
hardware. Em um computador microprogramado, a instru�c~ao ADD era interpretada
atrav�es de um microprograma.
{ Algumas caracter��sticas de certos computadores modernos s~ao agora executadas pelo
hardware ou pelo microprograma, masque originalmente foram programadas explicita-
mente no n��vel de m�aquina convencional. Dentre elas est~ao inclu��das:
� Instru�c~oes para multiplica�c~ao e divis~ao de inteiros.
� Instru�c~oes aritm�eticas de ponto-
utuante.
� Instru�c~oes para acelerar la�cos (looping).
� Instru�c~oes de contagem (somar 1 a uma vari�avel).
� Arquitetura de Von Neumann.
� M�aquinas com Barramento.
5

Continue navegando