2. Compilador – transforma o programa escrito
em linguagem de alto nível, num outro
programa, mas este último escrito em
linguagem máquina.
Este processo designa-se por compilação.
16-03-2014Prof. Nobre - Programação e Linguagem Máquina 2
3. Programa Fonte (source program) – trata-se do
programa original, escrito em linguagem de
alto nível.
Programa Objecto (object program) – trata-se
do programa obtido depois da compilação.
16-03-2014Prof. Nobre - Programação e Linguagem Máquina 3
4. Interpretador – atua no momento em que cada
instrução é executada.
Objetivo:
transformar determinada instrução de alto nível
no código máquina que o processador executa.
Desvantagem:
o processo da interpretação torna mais lenta a
execução dos programas “interpretados”
16-03-2014Prof. Nobre - Programação e Linguagem Máquina 4
5. 16-03-2014Prof. Nobre - Programação e Linguagem Máquina 5
Linguagem de
Alto Nível
Linguagem
Máquina
Compilador Interpretador
CPU
6. COMPILADOR INTERPRETADOR
Atua como tradutor
Transforma “texto”
escrito numa
linguagem, num outro
texto, escrito noutra
linguagem
Atua como intérprete
Traduz no momento
estabelecendo a
ponto entre dois
interlocutores
16-03-2014Prof. Nobre - Programação e Linguagem Máquina 6
7. Para programas compilados, a compilação e a
linkagem, são as fases necessárias para se
obter um programa executável.
16-03-2014Prof. Nobre - Programação e Linguagem Máquina 7
LinkagemCompilação
Do codigo objecto resultante da
compilação, são adicionadas
rotinas complementares
(disponibilizadas pelo
compilador).
Destas rotinas produz-se o
programa executável
Transformação do código fonte
em código objeto
8. 16-03-2014Prof. Nobre - Programação e Linguagem Máquina 8
Código em Linguagem de Alto
Nível
Código Objecto
Compilador
Linkagem
Funções
Complementares
Programa Executável
9. 16-03-2014Prof. Nobre - Programação e Linguagem Máquina 9
No processo de Linkagem, vários módulos objecto podem ser
agregados para produzir um único programa executável
10. 16-03-2014Prof. Nobre - Programação e Linguagem Máquina 10
Código em Linguagem de Alto
Nível
Código Objecto
Compilador
Linkagem
Funções
Complementares
Programa Executável
Código em Linguagem de Alto
Nível
Código Objecto
11. Trata-se de um modelo de linkagem na qual
todas as rotinas que fazem parte do
programa são integradas no programa
executável e carregadas para a memória
quando o programa é executado.
Exemplo para os programas concebidos para
serem executados sob o Sistema Operativo
MS-DOS.
16-03-2014Prof. Nobre - Programação e Linguagem Máquina 11
12. Um aplicação pode ser constituída por um
programa executável e por vários ficheiros
contendo código executável.
Esses ficheiros apresentam-se com extensão
DLL (Dynamic Linking Libraries), sendo
carregados para a memória apenas quando
necessário.
Este tipo de processo é utilizado para o
ambiente Windows.
16-03-2014Prof. Nobre - Programação e Linguagem Máquina 12
13. O dinamismo na linkagem apenas ocorre
quando da chamada destas rotinas. A
linkagem trata-se de um processo eficaz que
permite que aplicações muito extensas
possam ser “repartidas” num núcleo
fundamental que integra o programa
executável em vários ficheiros de código
complementar que são carregados para a
memoria apenas quando necessário.
16-03-2014Prof. Nobre - Programação e Linguagem Máquina 13