A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

COMPILADORES 02 Prof. Marcos. COMPILADORES Do Programa à Execução Computadores das mais variadas arquiteturas têm funcionamento:

Apresentações semelhantes


Apresentação em tema: "COMPILADORES 02 Prof. Marcos. COMPILADORES Do Programa à Execução Computadores das mais variadas arquiteturas têm funcionamento:"— Transcrição da apresentação:

1 COMPILADORES 02 Prof. Marcos

2 COMPILADORES Do Programa à Execução Computadores das mais variadas arquiteturas têm funcionamento:

3 COMPILADORES Do Programa à Execução A UCP (ou CPU) contém um conjunto relativamente pequeno de instruções que é capaz de executar. Cada processador contém um conjunto diferente de instruções, apesar de similaridadeses entre si. As instruções que o processador executa são buscadas da memória.

4 COMPILADORES Do Programa à Execução Essas instruções podem ser desde operações matemáticas a interações com os dispositivos de entrada e saída. Chamamos de PROGRAMA/CLASSE um conjunto de instruções que será executado pelo processador em uma determinada seqüência. Esse programa leva o computador a executar alguma tarefa.

5 COMPILADORES Do Programa à Execução Um programa nada mais é que um tipo de algoritmo.

6 COMPILADORES Do Programa à Execução Um algoritmo é uma seqüência de passos bem definida que resolve determinado problema, através da transformação de dados iniciais na resposta desejada, devendo ser:  Finito;  Passos bem definidos;  Eficaz;  Possuir uma entrada;  Produzir uma saída ou resultado.

7 COMPILADORES Do Programa à Execução Algoritmo (Nome-do-Algoritmo); Declaração de constantes e variáveis; Início Atribuições Comandos de E/S Estruturas de controle Seleção Repetição Fim.

8 COMPILADORES Do Programa à Execução Para possibilitar programação em larga escala, é necessária a criação de um código que relacionasse a linguagem de máquina a uma linguagem mais fácil de ser compreendida. Para que um programa escrito na linguagem de programação de alto nível (fonte) possa ser executado, é necessário que seu código seja traduzido para o código de máquina.

9 COMPILADORES Do Programa à Execução O compilador, a partir do código em linguagem de alto nível, chamado de código-fonte, gera um arquivo com o código em linguagem de máquina, conhecido como códigoobjeto. Esse código-objeto fica em disco e só é carregado em memória no momento da execução.

10 COMPILADORES Do Programa à Execução O interpretador faz o mesmo trabalho, porém não gera o arquivo em código-objeto. As instruções são traduzidas para linguagem de máquina em tempo de execução, instrução a instrução.

11 COMPILADORES Do Programa à Execução SÍNTESE ANÁLISE Programa Fonte Programa Objeto.exe Analisador Lerxico Analisador Sintático Analisador Semântico Ger Codigo Intermed Otimizador de Código Ger Codigo Objeto Atendimento a Erros

12 COMPILADORES Do Programa à Execução A introdução de linguagens de alto nível como Pascal, C, C++, Cobol, C#, Java,... entre outras, aumentou a produtividade dos programadores, permitindo que programas mais complexos e com mais interfaces gráficas fossem escritos. Além disso, os códigos tendem à portabilidade, ou seja, independentes da plataforma, não necessitando novas compilações do código-fonte.

13 COMPILADORES Do Programa à Execução A execução de determinadas operações em linguagem de máquina pode ser extremamente Complexa (exemplo: operações interface com os dispositivos de entrada e saída). Esse tipo de operação não é importante apenas em linguagens de programação. Este é um dos motivos pelos quais os sistemas operacionais são construídos.

14 COMPILADORES Do Programa à Execução Os Sistemas Operacionais também fornecem uma interface para que os programas possam utilizar as chamadas de sistema, ou system calls, e o conjunto de operações disponibilizadas são as bibliotecas do sistema operacional. Os compiladores utilizam essas interfaces em vez de implementar as operações complexas por si mesmos.

15 COMPILADORES Do Programa à Execução Quando o compilador encontra chamadas ao sistema operacional no código-fonte em linguagem de alto nível, transforma-as em referências “não resolvidas” no código-objeto. Para que esse código possa ser executado, precisa ser ligado ao código. Esta é a segunda etapa da compilação e ´c conhecido como ligação do código ou linkedição.

16 COMPILADORES Do Programa à Execução

17 COMPILADORES Do Programa à Execução Um código-objeto compilado em um sistema operacional não poderá ser executado em outro sistema operacional. Para que um programa funcione em outro sistemas operacional, o código-fonte deverá ser compilado neste sistema operacional.

18 COMPILADORES Do Programa à Execução A linguagem Java tem uma arquitetura diferente, o que fornece mais portabilidade. A compilação não gera código executável, em vez disso, gera um código “pseudo-executável”, chamado bytecode. Esse código é uma espécie de código de baixo nível que, porém, não é uma linguagem de máquina. Para que esse código possa ser executado em sistema operacional, é necessário que o software esteja instalado (JVM).

19 COMPILADORES Do Programa à Execução

20 COMPILADORES Do Programa à Execução DÚVIDAS ???


Carregar ppt "COMPILADORES 02 Prof. Marcos. COMPILADORES Do Programa à Execução Computadores das mais variadas arquiteturas têm funcionamento:"

Apresentações semelhantes


Anúncios Google