Arquitetura e Org. de Computadores
Compilação: metodologia onde cada instrução escrita em linguagem de alto nível é substituída por uma sequência equivalente de instruções escritas em linguagem de baixo nível.
Na compilação o programa em alto nível é convertido para baixo nível pelo processo de compilação e montagem, sendo posteriormente descartado. O novo programa em baixo nível é carregado na memória e executado.
Interpretação: metodologia que consiste em escrever programas em baixo nível que admitam como entrada programas escritos em alto nível.
Na interpretação o programa em alto nível é interpretado linha a linha, sendo que a linha seguinte só será executada quando do término da linha anterior. Não há geração de programa algum.
Máquina Virtual: É uma máquina implementada por software, que executa programas como um computador real, cuja linguagem de máquina é de alto nível.
Os programas poderiam ser escritos em linguagem de alto nível, para a máquina virtual e serem executados:
- diretamente na maquina virtual se esta máquina fosse de baixo custo de construção,
- ou serem traduzidos ou interpretados para linguagem de baixo nível e executados em uma máquina real.
2. Qual a diferença entre interpretação e compilação? Cite vantagens e desvantagens de cada.
Tempo de execução: Menor na compilação
É maior na interpretação pois cada vez que o programa é executado, o interpretador executa as três fases (compilação, ligação e execução). Já o compilador é só executar o programa-objeto já gerado na primeira vez.
Consumo de memória: É menor na compilação
O interpretador precisa permanecer na memória durante todo o tempo de execução. Já o compilador fica na memória somente durante o tempo de compilação. Quando o programa é executado, somente o programa-objeto fica na memória.
Repetição da interpretação: O método de interpretação torna-se mais lento que o de compilação.