Vous êtes sur la page 1sur 7

1

Introduo
Computador digital mquina que resolve
problemas executando uma srie de
instrues.
Programa conjunto de instrues que
descrevem uma maneira de se executar
tarefas.
Circuitos eletrnicos executam um
conjunto limitado de instrues muito
simples (um programa deve ser convertido)
2
Introduo
Em geral, essas instrues no so mais
complicadas que:
Somar dois nmeros.
Comparar um valor de um nmero com zero.
Copiar um conjunto de dados de uma parte da
memria para outra parte.
3
Introduo
Conjunto de instrues bsicas
linguagem de mquina comunicao
homem x mquina.
Projetistas de computador decidem quais
instrues constituem a linguagem de
mquina.
Prioridade instrues bsicas to simples
quanto possvel.
4
Introduo
Simplicidade das instrues:
Vantagem reduo de custo e da
complexidade da eletrnica.
Desvantagem seu uso torna-se difcil e
tedioso para ns.
Conseqncia da desvantagem definio
de uma maneira estruturada de se
organizar os computadores.
5
Introduo
Computadores tratados como uma srie
de abstraes.
Cada abstrao construda com base
naquela situada imediatamente abaixo.
Conseqncia disso complexidade pode
ser dominada, e os sistemas de computador
podem ser projetados de maneira
sistemtica e organizada.
6
Introduo
Chamamos esta metodologia de
organizao estruturada de
computadores.
Vamos procurar descrever o significado
dessa expresso.
Posteriormente vamos apresentar o
desenvolvimento dos computadores do
ponto de vista histrico.
7
Organizao Estruturada de
Computadores
H uma diferena muito grande entre
aquilo que conveniente para ns e aquilo
que convm aos computadores.
As pessoas desejam fazer X mas os
computadores s podem fazer Y.
Isto um problema a ser resolvido.
Soluo do problema duas metodologias
diferentes.
8
Linguagens, Nveis e Mquinas
Virtuais
Ambas metodologias usam um novo
conjunto de instrues mais conveniente
para os usurios.
Novas instrues nova linguagem L1
Instrues de mquina linguagem L0
As duas metodologias diferem na maneira
como os programas escritos em L1 sero
executados pelo processador (executa L0).
9
Linguagens, Nveis e Mquinas
Virtuais
1 metodologia substitui cada instruo
em L1 por uma seqncia equivalente de
instrues em L0.
O processador executa o novo programa
expresso em linguagem L0 em substituio
ao primeiro escrito em L1.
Essa tcnica conhecida como traduo.
10
Linguagens, Nveis e Mquinas
Virtuais
2 metodologia consiste em escrever
programas em L0 que admitam como
entrada programas escritos em L1.
Execuo de programas em L1
converso de instrues em L1 em uma
seqncia de instrues em L0
seqncia esta executada antes do exame
da prxima instruo em escrita em L1.
11
Linguagens, Nveis e Mquinas
Virtuais
Esta tcnica no requer a gerao de um
novo programa em L0.
A tcnica conhecida como interpretao.
Programa que a implementa
interpretador.
Tcnicas de traduo e interpretao
muito parecidas.
12
Linguagens, Nveis e Mquinas
Virtuais
Semelhana em ltima anlise as
instrues em L1 so executadas por um
conjunto equivalente de instrues em L0.
Diferena:
Na traduo programa em L1 primeiro
convertido em L0 L1 descartado L0
carregado na memria e executado o
programa em L0 que est rodando e
controlando o computador.
13
Linguagens, Nveis e Mquinas
Virtuais
Na interpretao instruo em L1
executada imediatamente aps ter sido
examinada e reconhecida pelo interpretador
no h gerao de programa algum o
prprio interpretador controla o computador
durante a execuo para o interpretador, o
programa em L1 tratado como dado de
entrada.
14
Linguagens, Nveis e Mquinas
Virtuais
Ambas as metodologias so usadas para
diminuir a distncia entre o computador e
seu usurio.
So muito utilizadas atualmente.
Est cada vez mais comum uma
metodologia hbrida (combinao de
ambas) conceito de mquina virtual.
1
Linguagens, Nveis e Mquinas
Virtuais
Foi visto o conceito de tradutor e
interpretador.
Em vez de traduo ou interpretao, pode-
se imaginar um computador hipottico
(mquina virtual) com linguagem de
mquina L1.
Mquina virtual M1 Linguagem L1.
Mquina virtual M0 Linguagem L0.
2
Linguagens, Nveis e Mquinas
Virtuais
Se M1 pudesse ser construda e preo no
muito alto no haveria necessidade de
L0 nem de M0.
Poderamos escrever programas em L1 e ter
um computador para executar.
Poderamos escrever programas para
mquinas virtuais como se realmente
existissem.
3
Linguagens, Nveis e Mquinas
Virtuais
Para tornar a traduo ou a interpretao
uma tarefa prtica L1 e L0 no podem
ser muito diferentes.
Conseqncia apesar de L1 ser melhor
que L0, ainda est distante do ideal.
Soluo inventar um outro conjunto de
instrues mais prximo das pessoas e mais
distante das mquinas.
Neste caso L2 com sua M2.
4
Linguagens, Nveis e Mquinas
Virtuais
Pode-se escrever programas em L2 como se
a mquina M2 existisse.
Tais programas podem ser traduzidos para
L1 ou executados por um interpretador
escrito em L1.
A idia poderia prosseguir de forma
indefinida.
Normalmente se projetam mquinas com 6
nveis de abstrao.
5
Mquina de Vrios Nveis
Mquina virtual Mn com a
linguagem de mquina Ln
Mquina virtual M1 com a
linguagem de mquina L1
Mquina virtual M0 com a
linguagem de mquina L0
Programa em Ln interpretado por
interpretador que rode em um
nvel abaixo, ou traduzido para Ln-1
Programa em L1 interpretado por
interpretador que rode em M0, ou
traduzido para L0
Programa em L0 executado por
circuitos eletrnicos
nvel 0
nvel 1
nvel n
6
Computador com Seis Nveis
Nvel das linguagens de alto nvel Nvel 5
Nvel da linguagem do montador Nvel 4
Nvel do sistema operacional Nvel 3
Nvel da arquitetura do conjunto
de instrues
Nvel 2
Nvel da microarquitetura Nvel 1
Nvel da lgica digital Nvel 0
Hardware
Interpretao (microprograma)
Interpretao parcial
Traduo (montador)
Traduo (compilador)
7
Computador com Seis Nveis
Nvel da lgica digital transistores
componente analgico modelam portas
lgicas diversas portas formam uma
memria de 1 bit (armazena 0 ou 1)
diversas memrias (ex: 32) formam
registradores (de 32 bits) cada
registrador pode guardar um nico valor
binrio (at um valor mximo).
8
Computador com Seis Nveis
Nvel da microarquitetura 8 a 32
registradores formam uma memria local
e um circuito chamado UAL (Unidade
Aritmtica e Lgica) realiza operaes
aritmticas muito simples.
Registradores conectados UAL formam
o caminho de dados fluxo de dados.
9
Computador com Seis Nveis
Operao bsica do caminho de dados
selecionar um ou dois registradores para
que a UAL opere sobre eles (ex: somar dois
contedos e por o resultado em registrador)
Em alguns tipos de mquinas operao
do caminho de dados controlada por um
programa microprograma.
10
Computador com Seis Nveis
Em outros tipos de mquinas caminho
de dados controlado diretamente pelo
hardware.
Microprograma interpretador para a
interpretao das instrues de nvel 2
busca, decodifica e executa as instrues,
uma a uma, usando o caminho de dados.
11
Computador com Seis Nveis
Ex: execuo de uma instruo de soma
(ADD) instruo deve ser buscada na
memria operandos devem ser
localizados e trazidos para registradores
soma calculada na UAL resultado
encaminhado para local apropriado.
12
Computador com Seis Nveis
Em mquinas cujo caminho de dados
controlado por hardware mesma
execuo mas sem a existncia de um
interpretador para a interpretao das
instrues de nvel 2.

Vous aimerez peut-être aussi