Prévia do material em texto
CENTRO UNIVERSITÁRIO JORGE AMADO Curso Superior em Gestão da Tecnologia da Informação EAD Aluna: Daiana Santos Santana Matrícula: 2210284905 Disciplina: Organização e Arquitetura De Computadores (Il10326) Tutor: Magno Luã De Jesus Souza COMPILAÇÃO X INTERPRETAÇÃO SALVADOR/BA 2023 Compilação x Interpretação Independentemente da arquitetura de computadores, e podemos tomar como base o modelo da arquitetura de Von Newmann, tanto o processo de compilação quanto o processo de interpretação são possíveis. É fato que programadores de computadores ficam em dúvidas quanto à diferenciação da compilação e da interpretação de programas. Muitas das vezes, isso ocorre por falta de conhecimento aprofundado acerca da arquitetura de computadores e de como os programas são executados nas máquinas. Tomando como base as etapas de um ciclo de máquina apresentadas por Corrêa (2016), faça a representação gráfica dos dois processos, compilação e interpretação, explicando, no final, a real diferença existente entre eles. Linguagem de programação é um conjunto de regras léxicas (ortografia) e sináticas (gramática) para se escrever um programa. IDE: Software para editar e testar o programa; Código Fonte: Escrito pelo programador em linguagem de alto nível; Código Objeto: Instruções em uma linguagem de computador, geralmente numa linguagem de máquina (linguagem de baixo nível). Método: Compilador A compilação e a transformação de código fonte em código objeto, durante a compilação o compilador faz a analise léxica e sintática do código, caso haja algum erro a compilação é interrompida e o programador é obrigado a corrigir o erro e iniciará o processo novamente. Após o código fonte ser compilado e transformado em código objeto, ele passa por um gerador de código para que seja feito um processo de construção (build) para que seja criado o código executável permitindo a execução pelo sistema operacional. Exemplos de linguagens que utilizam a compilação: C, C++ Vantagens: • Costumam ser mais rápidos pois toda a verificação léxica e sintática foi feita antes de criar o código executável; • O código executável ele roda diretamente em cima do sistema operacional; • Menos suscetível a bugs pois o compilador ajuda a verificar os erros antes de criar o executável; • Auxílio do compilador antes da execução; Desvantagens: • A portabilidade dos códigos compilados se torna um problema pois ao criar um código executável será especifico para um sistema operacional e caso algum dia queira usar em outro sistema terá que fazer mudanças no código e compilar novamente. Na Compilação o código é escrito na linguagem fonte e transformado para código objeto e depois ligado e carregado para ser executado. Método: Interpretador Interpretação: O software chamado de interpretador realiza a leitura do código fonte e realizará a analise léxica e sintática para gerar o código executável (sob demanda), ou seja, gradualmente o interpretador lê o código fonte e traduz para o código executável e executando. Exemplos de linguagens que utilizam a interpretação: PHP, JavaScript, Python, Ruby. Vantagens: • Flexibilidade de manutenção do programa, pois basta modificar os arquivos fontes que é necessário sem a necessidade de recompilar o programa. • Código fonte não precisa ser recompilado para rodas em outras plataformas. Desvantagens: • A linguagem interpretada é mais difícil de programar, pois elas são mais relaxadas a tipagem e mais fraca, pode ser uma brecha para bugs se não for escrita de uma forma correta. • A análise do código e a geração do executável e feita pelo modo Just in time, ou seja, no momento está executando tende a ser mais lento. O interpretador vai lendo o código fonte e traduzindo para o código executável e executando. REFERÊNCIAS BIBLIOGRÁFICAS: Luby Software LLC. Qual é a diferença entre Compilação e Interpretação?. Disponível em: https://luby.com.br/desenvolvimento/software/diferenca-entre-compilacao-e-interpretacao/ Geek Hunter. Métodos de tradução: interpretador x compilador. Disponível em: https://blog.geekhunter.com.br/metodos-de-traducao-compiladores-ou-interpretadores/