Professional Documents
Culture Documents
PUCC
Agenda - Aula 01
Computador Programas Elementos bsicos da mquina Mquina multinvel Evoluo dos computadores
PUCC
Computador Digital
Mquina capaz de resolver problemas atravs da execuo de instrues que lhe so passadas. Os circuitos eletrnicos do computador executam um conjunto limitado de instrues simples: adio, subtrao, deslocamento, OR, AND.
PUCC
Computador Digital
Memria CPU CPU
Execuo Execuodas das instrues instruesde deum um programa programa Programas + Dados Teclado
E/S
Buffers
Vdeo
4
PUCC
Computador Digital
oUnid. controle
Memria
Programas + Dados Teclado
IR Reg.
PC AC AC
ALU
oUnid. processamento
E/S
Buffers
Vdeo
5
PUCC
Programa
Seqncia de instrues que mostra como executar uma determinada tarefa. Pode ser escrita em uma linguagem especfica. Por exemplo: - Some dois nmeros. - Imprima positivo se o resultado for > 0. - Imprima negativo se o resultado for < 0.
PUCC
Programa
Problema
Programa
Computador
Soluo
Programa
Computador executa um conjunto limitado de instrues simples: adio, subtrao, deslocamento, OR, AND. Os programas so convertidos nestas instrues antes de serem executados. Cada instruo deve ser executada pela mquina na qual o programa est instalado. Apenas algumas linguagens contm instrues que podem ser diretamente executadas.
PUCC
Programa
Traduo e Execuo Os programas cujas instrues no podem ser diretamente executadas devem ser compilados ou interpretados para a linguagem que permita a execuo direta de suas instrues.
PUCC
Programa
Compilao Execuo
linguagem no executvel programa fonte linguagem executvel programa objeto
0100111 0101101
dados entrada
sada
Mquina
PUCC
10
Programa
Compilao Interpretao
O processo de compilao traduz todo o programa fonte para um programa objeto. A interpretao traduz comando a comando do programa fonte, que so executados medida que so traduzidos.
0100111 0101101
Mquina
PUCC
11
Programa
O processo de execuo de um programa envolve: Executar cada instruo do programa objeto. Obter os dados necessrios para a computao. Produzir as sadas resultantes da computao. 0100111 0101101
dados entrada sada
Mquina
PUCC
12
13
14
15
Mquina Multinvel
Linguagem Assembly swap: muli $2, $5, 4 add $2, $4, $2 lw $15, 0($2) lw $16, 4($2) sw $16, 0($2) sw $15, 4($2) jr $31 Linguagem C Swap (int v[], int k) {int temp: temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; } Cdigo Executvel 00000000101000010000000000011000 00000000100011100001100000100001 10001100011000100000000000000000 10001100111100100000000000000100 10101100111100100000000000000000
PUCC
16
Mquina Multinvel
Uma mquina pode ser vista como tendo vrios nveis, cada um capaz de executar um conjunto de instrues especficas. Isto , cada nvel possui linguagens apropriadas para descrever as instrues que nele podem ser executadas. MQUINA VIRTUAL A maioria dos computadores possui dois ou mais nveis. Descreveremos a organizao de uma mquina de seis nveis.
PUCC
17
Mquina Multinvel
Nvel 5: Nvel 4: Nvel 3: Nvel 2: Nvel 1: Nvel 0: linguagem orientada a problemas linguagem de montagem sistema operacional
Interpretao Parcial (SO) Traduo (Compilador) Traduo (Montador)
mquina convencional
Interpretao (Microprograma)
microprogramao
Executados Diretos pelo Hardware
PUCC
18
Mquina Multinvel
linguagem orientada a problemas linguagem de montagem sistema operacional mquina convencional microprogramao lgica digital dispositivos
PUCC
19
Mquina Multinvel
linguagem orientada a problemas linguagem de montagem sistema operacional mquina convencional microprogramao lgica digital dispositivos
PUCC
Portas lgicas e CI. Implementam a manipulao de sinais executando funes lgicas bsicas: AND, OR, NOT, deslocamento de bits, etc.
soma
vai um
20
Mquina Multinvel
linguagem orientada a problemas linguagem de montagem sistema operacional mquina convencional microprogramao lgica digital dispositivos
PUCC
Microinstrues constituem de microprogramas que controlam a entrada e sada de sinais para os vrios dispositivos e controlam as vrias portas lgicas. Instrues binrias.
21
Mquina Multinvel
linguagem orientada a problemas linguagem de montagem sistema operacional mquina convencional microprogramao lgica digital dispositivos
PUCC
Comandos para executar funes especficas da mquina: formato de instrues endereamento, interrupes, dependente da arquitetura utilizada.
MOV 0 ACC; ADD 03FC;
22
Mquina Multinvel
linguagem orientada a problemas linguagem de montagem sistema operacional mquina convencional microprogramao lgica digital dispositivos
PUCC
Comandos para executar funes especficas da mquina: Gerenciamento de tarefas, Sistema de arquivos, Memria virtual e paginao.
23
Mquina Multinvel
linguagem orientada a problemas Assembler linguagem de montagem sistema operacional mquina convencional microprogramao lgica digital dispositivos
PUCC
Cada comando corresponde exatamente a uma instruo a ser executada. Utiliza-se mnemnicos e endereos simblicos.
MOV 0 ACC; MOV 0 R1; ... GTO A R1
24
Mquina Multinvel
linguagem orientada a problemas linguagem de montagem sistema operacional mquina convencional microprogramao lgica digital dispositivos
PUCC
25
PUCC
PUCC
27
PUCC
29
30
PUCC
31
PUCC
32
33