Sobre o processo de compilação e interpretação, analise as assertivas.
I - Os processadores da linguagem Java combinam interpretação e compilação. O programa fonte em Java é primeiro interpretado para uma linguagem intermediária, chamada de bytecode, e em seguida o bytecode é compilado por uma máquina virtual.
II - O compilador se subdivide em duas partes: análise e síntese. A parte de análise pode ser subdividida em: análise léxica, sintática e semântica.
III - Um compilador pode ser definido como um programa que recebe como entrada um programa em uma linguagem de programação e o traduz para um programa equivalente em outra linguagem, denominada linguagem objeto.
IV - Um interpretador é um tipo de processador de linguagem que executa diretamente as operações especificadas no programa fonte sobre as entradas fornecidas, em vez de produzir um programa objeto como resultado da tradução.
Está correto o que se afirma em
a) I e III, apenas.
b) II, III e IV, apenas.
c) I, II e IV, apenas.
d) II, apenas.