SlideShare uma empresa Scribd logo
1 de 14
Baixar para ler offline
LICENCIATURA EM CIÊNCIAS DA
COMPUTAÇÃO
LCC2 - 2014
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
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
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
16-03-2014Prof. Nobre - Programação e Linguagem Máquina 5
Linguagem de
Alto Nível
Linguagem
Máquina
Compilador Interpretador
CPU
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
 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
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
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
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
 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
 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
 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
CONCEITOS DA LINGUAGEM
LCC2 - 2014

Mais conteúdo relacionado

Mais procurados

Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem Capolllorj
 
1.1 o que é computador
1.1 o que é computador1.1 o que é computador
1.1 o que é computadorAline Soares
 
Aula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPAula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPDaniel Brandão
 
Comandos ms-dos - Atualizado 29/10/2014
Comandos ms-dos - Atualizado 29/10/2014Comandos ms-dos - Atualizado 29/10/2014
Comandos ms-dos - Atualizado 29/10/2014Evandro Júnior
 
Algoritmos - Formas de Representação de Algoritmos
Algoritmos - Formas de Representação de AlgoritmosAlgoritmos - Formas de Representação de Algoritmos
Algoritmos - Formas de Representação de AlgoritmosElaine Cecília Gatto
 
Word basico 2016
Word basico 2016Word basico 2016
Word basico 2016Tiago Dill
 
Logica Algoritmo 03 Tipos Expressoes Variaveis Operadores
Logica Algoritmo 03 Tipos Expressoes Variaveis OperadoresLogica Algoritmo 03 Tipos Expressoes Variaveis Operadores
Logica Algoritmo 03 Tipos Expressoes Variaveis OperadoresRegis Magalhães
 
Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Mariana Camargo
 
Tutorial Paint
Tutorial PaintTutorial Paint
Tutorial Paintandreadc
 
Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros Karoline Tavares
 

Mais procurados (20)

Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem C
 
1.1 o que é computador
1.1 o que é computador1.1 o que é computador
1.1 o que é computador
 
Aula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPAula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHP
 
Algoritmos de busca
Algoritmos de buscaAlgoritmos de busca
Algoritmos de busca
 
Comandos ms-dos - Atualizado 29/10/2014
Comandos ms-dos - Atualizado 29/10/2014Comandos ms-dos - Atualizado 29/10/2014
Comandos ms-dos - Atualizado 29/10/2014
 
Algoritmos - Procedimentos
Algoritmos - ProcedimentosAlgoritmos - Procedimentos
Algoritmos - Procedimentos
 
Algoritmos - Formas de Representação de Algoritmos
Algoritmos - Formas de Representação de AlgoritmosAlgoritmos - Formas de Representação de Algoritmos
Algoritmos - Formas de Representação de Algoritmos
 
Word basico 2016
Word basico 2016Word basico 2016
Word basico 2016
 
Introdução a React Native
Introdução a React NativeIntrodução a React Native
Introdução a React Native
 
Aula01 - Logica de Programação
Aula01 - Logica de ProgramaçãoAula01 - Logica de Programação
Aula01 - Logica de Programação
 
Logica Algoritmo 03 Tipos Expressoes Variaveis Operadores
Logica Algoritmo 03 Tipos Expressoes Variaveis OperadoresLogica Algoritmo 03 Tipos Expressoes Variaveis Operadores
Logica Algoritmo 03 Tipos Expressoes Variaveis Operadores
 
C++ Funções
 C++ Funções C++ Funções
C++ Funções
 
Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }
 
Aula básica de internet
Aula básica de internetAula básica de internet
Aula básica de internet
 
Tutorial Paint
Tutorial PaintTutorial Paint
Tutorial Paint
 
Aula gerenciamento de arquivos e pastas
Aula   gerenciamento de arquivos e pastasAula   gerenciamento de arquivos e pastas
Aula gerenciamento de arquivos e pastas
 
Introdução ao JavaScript
Introdução ao JavaScriptIntrodução ao JavaScript
Introdução ao JavaScript
 
Aula 07 - Visualg e Pseudocódigo
Aula 07 - Visualg e PseudocódigoAula 07 - Visualg e Pseudocódigo
Aula 07 - Visualg e Pseudocódigo
 
Páginas dinâmicas
Páginas dinâmicasPáginas dinâmicas
Páginas dinâmicas
 
Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros
 

Destaque

Aula 2 programas e linguagens de programação
Aula 2   programas e linguagens de programaçãoAula 2   programas e linguagens de programação
Aula 2 programas e linguagens de programaçãoLCCIMETRO
 
Gerador de Código-Objeto - Compiladores
Gerador de Código-Objeto - CompiladoresGerador de Código-Objeto - Compiladores
Gerador de Código-Objeto - CompiladoresAnderson Favaro
 
Aula 1 apresentação - conteudo programático
Aula 1   apresentação - conteudo programáticoAula 1   apresentação - conteudo programático
Aula 1 apresentação - conteudo programáticoLCCIMETRO
 
Aula 6 emu8086
Aula 6   emu8086Aula 6   emu8086
Aula 6 emu8086LCCIMETRO
 
Aula 4 a linguagem assembly
Aula 4   a linguagem assemblyAula 4   a linguagem assembly
Aula 4 a linguagem assemblyLCCIMETRO
 
Conjunto de instruções mips - introdução
Conjunto de instruções mips - introduçãoConjunto de instruções mips - introdução
Conjunto de instruções mips - introduçãoElaine Cecília Gatto
 
Aula 5 instrução mov
Aula 5   instrução movAula 5   instrução mov
Aula 5 instrução movLCCIMETRO
 
Arquitetura de Computadores: Assembly
Arquitetura de Computadores: AssemblyArquitetura de Computadores: Assembly
Arquitetura de Computadores: AssemblyElaine Cecília Gatto
 
Criando um sistema operacional básico
Criando um sistema operacional básicoCriando um sistema operacional básico
Criando um sistema operacional básicoVHC Informatica
 
Do alto para o baixo nível - Entendendo as Diferenças
Do alto para o baixo nível - Entendendo as DiferençasDo alto para o baixo nível - Entendendo as Diferenças
Do alto para o baixo nível - Entendendo as DiferençasWelington Sampaio
 
Apostila lã³gica de programaã§ã£o
Apostila lã³gica de programaã§ã£oApostila lã³gica de programaã§ã£o
Apostila lã³gica de programaã§ã£oWELINGTON SILVA
 
Compilador analise lexica
Compilador analise lexicaCompilador analise lexica
Compilador analise lexicaAdilmar Dantas
 
Linguagens de Programação
Linguagens de ProgramaçãoLinguagens de Programação
Linguagens de Programação12anogolega
 
Assemblyparte1 140320111308-phpapp02
Assemblyparte1 140320111308-phpapp02Assemblyparte1 140320111308-phpapp02
Assemblyparte1 140320111308-phpapp02bruno santos ferreira
 

Destaque (20)

Aula 2 programas e linguagens de programação
Aula 2   programas e linguagens de programaçãoAula 2   programas e linguagens de programação
Aula 2 programas e linguagens de programação
 
Compiladores 4
Compiladores 4Compiladores 4
Compiladores 4
 
Gerador de Código-Objeto - Compiladores
Gerador de Código-Objeto - CompiladoresGerador de Código-Objeto - Compiladores
Gerador de Código-Objeto - Compiladores
 
Aula 1 apresentação - conteudo programático
Aula 1   apresentação - conteudo programáticoAula 1   apresentação - conteudo programático
Aula 1 apresentação - conteudo programático
 
Linguagem assembly
Linguagem assemblyLinguagem assembly
Linguagem assembly
 
Aula 6 emu8086
Aula 6   emu8086Aula 6   emu8086
Aula 6 emu8086
 
Aula 4 a linguagem assembly
Aula 4   a linguagem assemblyAula 4   a linguagem assembly
Aula 4 a linguagem assembly
 
Assembly
AssemblyAssembly
Assembly
 
Conjunto de instruções mips - introdução
Conjunto de instruções mips - introduçãoConjunto de instruções mips - introdução
Conjunto de instruções mips - introdução
 
Aula 5 instrução mov
Aula 5   instrução movAula 5   instrução mov
Aula 5 instrução mov
 
Arquitetura de Computadores: Assembly
Arquitetura de Computadores: AssemblyArquitetura de Computadores: Assembly
Arquitetura de Computadores: Assembly
 
Criando um sistema operacional básico
Criando um sistema operacional básicoCriando um sistema operacional básico
Criando um sistema operacional básico
 
Do alto para o baixo nível - Entendendo as Diferenças
Do alto para o baixo nível - Entendendo as DiferençasDo alto para o baixo nível - Entendendo as Diferenças
Do alto para o baixo nível - Entendendo as Diferenças
 
Apostila lã³gica de programaã§ã£o
Apostila lã³gica de programaã§ã£oApostila lã³gica de programaã§ã£o
Apostila lã³gica de programaã§ã£o
 
Compilador analise lexica
Compilador analise lexicaCompilador analise lexica
Compilador analise lexica
 
Apostila algoritmos
Apostila algoritmosApostila algoritmos
Apostila algoritmos
 
Modbus apostila
Modbus apostilaModbus apostila
Modbus apostila
 
Linguagens de Programação
Linguagens de ProgramaçãoLinguagens de Programação
Linguagens de Programação
 
Gcc
GccGcc
Gcc
 
Assemblyparte1 140320111308-phpapp02
Assemblyparte1 140320111308-phpapp02Assemblyparte1 140320111308-phpapp02
Assemblyparte1 140320111308-phpapp02
 

Semelhante a Compilador Interpretador

Linguagem de programação
Linguagem de programação Linguagem de programação
Linguagem de programação Marcos Gregorio
 
Construção de compiladores - introducao Compilador.pdf
Construção de compiladores - introducao Compilador.pdfConstrução de compiladores - introducao Compilador.pdf
Construção de compiladores - introducao Compilador.pdfGerhard Saboia
 
Int. sistemas de informação iii
Int. sistemas de informação iiiInt. sistemas de informação iii
Int. sistemas de informação iiiRay Fran Pires
 
Aula 03 - Interpretador [mr_@@@@@].pdf
Aula 03 - Interpretador [mr_@@@@@].pdfAula 03 - Interpretador [mr_@@@@@].pdf
Aula 03 - Interpretador [mr_@@@@@].pdfmouzinhoconcursos
 
Introdução à Computação Aula 09 - Algoritmos (Linguagens de Programação)
Introdução à Computação Aula 09 - Algoritmos (Linguagens de Programação)Introdução à Computação Aula 09 - Algoritmos (Linguagens de Programação)
Introdução à Computação Aula 09 - Algoritmos (Linguagens de Programação)Leinylson Fontinele
 
Linguagens de programação 03-12-09
Linguagens de programação   03-12-09Linguagens de programação   03-12-09
Linguagens de programação 03-12-09essa
 
Linguagens de programação 03-12-09
Linguagens de programação   03-12-09Linguagens de programação   03-12-09
Linguagens de programação 03-12-09essa
 
Plataforma net pdf
Plataforma net pdfPlataforma net pdf
Plataforma net pdfAPlima
 
Linguagem de Programação
Linguagem de ProgramaçãoLinguagem de Programação
Linguagem de ProgramaçãoIgor Cambongue
 
Linguagem de programação
Linguagem de programaçãoLinguagem de programação
Linguagem de programaçãoIgor Cambongue
 
Programando em python introducao
Programando em python   introducaoProgramando em python   introducao
Programando em python introducaosamuelthiago
 
Sistemas Operacionais - Gnu/Linux Instalando Programas
Sistemas Operacionais - Gnu/Linux Instalando ProgramasSistemas Operacionais - Gnu/Linux Instalando Programas
Sistemas Operacionais - Gnu/Linux Instalando ProgramasLuiz Arthur
 

Semelhante a Compilador Interpretador (20)

Linguagem de programação
Linguagem de programação Linguagem de programação
Linguagem de programação
 
Construção de compiladores - introducao Compilador.pdf
Construção de compiladores - introducao Compilador.pdfConstrução de compiladores - introducao Compilador.pdf
Construção de compiladores - introducao Compilador.pdf
 
Int. sistemas de informação iii
Int. sistemas de informação iiiInt. sistemas de informação iii
Int. sistemas de informação iii
 
Paradigmas de Linguagem
Paradigmas de LinguagemParadigmas de Linguagem
Paradigmas de Linguagem
 
Aula 03 - Interpretador [mr_@@@@@].pdf
Aula 03 - Interpretador [mr_@@@@@].pdfAula 03 - Interpretador [mr_@@@@@].pdf
Aula 03 - Interpretador [mr_@@@@@].pdf
 
Introdução à Computação Aula 09 - Algoritmos (Linguagens de Programação)
Introdução à Computação Aula 09 - Algoritmos (Linguagens de Programação)Introdução à Computação Aula 09 - Algoritmos (Linguagens de Programação)
Introdução à Computação Aula 09 - Algoritmos (Linguagens de Programação)
 
Aplicativo aula01
Aplicativo aula01Aplicativo aula01
Aplicativo aula01
 
Compilador
CompiladorCompilador
Compilador
 
Iniciando com django
Iniciando com djangoIniciando com django
Iniciando com django
 
Linguagens de programação
Linguagens de programaçãoLinguagens de programação
Linguagens de programação
 
Apostila de C# & Asp.Net
Apostila de C# & Asp.NetApostila de C# & Asp.Net
Apostila de C# & Asp.Net
 
Linguagens de programação 03-12-09
Linguagens de programação   03-12-09Linguagens de programação   03-12-09
Linguagens de programação 03-12-09
 
Linguagens de programação 03-12-09
Linguagens de programação   03-12-09Linguagens de programação   03-12-09
Linguagens de programação 03-12-09
 
Plataforma net pdf
Plataforma net pdfPlataforma net pdf
Plataforma net pdf
 
Isc aula 7
Isc   aula 7Isc   aula 7
Isc aula 7
 
Linguagem de Programação
Linguagem de ProgramaçãoLinguagem de Programação
Linguagem de Programação
 
Linguagem de programação
Linguagem de programaçãoLinguagem de programação
Linguagem de programação
 
Programando em python introducao
Programando em python   introducaoProgramando em python   introducao
Programando em python introducao
 
Sistemas Operacionais - Gnu/Linux Instalando Programas
Sistemas Operacionais - Gnu/Linux Instalando ProgramasSistemas Operacionais - Gnu/Linux Instalando Programas
Sistemas Operacionais - Gnu/Linux Instalando Programas
 
Software
SoftwareSoftware
Software
 

Compilador Interpretador

  • 1. LICENCIATURA EM CIÊNCIAS DA COMPUTAÇÃO LCC2 - 2014
  • 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