Informática
Referência Bibliográfica
Structured Computer Organization, Fourth Edition. Andrew S. Tanenbaum. Prentice Hall, 1999. ISBN 0-13-095990-1. History of Computing Information: http://ftp.arl.army.mil/~mike/comphist/
Linguagens, Níveis e Máquinas Virtuais
• Linguagem: conjunto de instruções utilizadas para se construir programas • Linguagem de Máquina: linguagem (L0) do computador real • Linguagem Abstrata: linguagem (L1) mais adequada para pessoas • Tradução: substituição de cada instrução de um programa em L1 por uma seqüência equivalente de instruções em L0, obtendo um novo programa em L0 que pode ser executado no computador real • Interpretação: execução de um programa em L1 por outro programa (interpretador) em L0; o programa em L1 é input para o interpretador, que examina cada instrução em L1 e executa uma seqüência equivalente de instruções em L0 • Máquina Virtual: máquina (M1) hipotética, cuja linguagem de máquina é a linguagem L1 • Nível ou Camada: uma máquina (computador real ou virtual) e a correspondente linguagem, sobre a qual uma nova camada pode ser acrescentada
Máquina Multinível (Multicamada)
Máquina virtual Mn, com linguagem de máquina Ln
Programa em Ln pode ser interpretado por um interpretador executando em uma máquina mais abaixo, ou traduzido para a linguagem de máquina de uma máquina mais abaixo Programa em L2 pode ser interpretado por interpretadores executando em M1 ou em M0, ou traduzido para L1 ou L0
Máquina virtual M2, com linguagem de máquina L2
Máquina virtual M1, com linguagem de máquina L1
Programa em L1 pode ser interpretado por um interpretador executando em M0, ou traduzido para L0
Computador real M0, com linguagem de máquina L0
Programa em L0 é diretamente executado por circuitos eletrônicos
Máquina Multinível Contemporânea
Nível 5
Nível de Linguagem Orientada a Problemas
Tradução (compilador)
(BASIC, C, C++, Java, LISP, Prolog, ...) (mnemônicos para as