Conhecer as metodologias utilizadas por um compilador para a análise e síntese de um programa de computador pode ser muito útil para entender como um software funciona por dentro. Assim, atividades como a engenharia reversa podem ser mais facilmente entendidas e realizadas. A esse respeito, no que se refere aos programas de computadores e às fases de um compilador, assinale a alternativa correta.
- A. As fases de análise sintática e semântica tratam da grande maioria dos erros detectáveis pelo compilador.
- B. A fase de análise constrói o programa alvo desejado, com base nas respectivas representações intermediárias. É a fase que requer as técnicas mais especializadas.
- C. Durante a análise sintática do programa fonte, o compilador procura encontrar as construções que possuam a estrutura sintática correta, sem se preocupar com o significado da operação envolvida.
- D. A análise semântica, também chamada de análise gramatical, envolve o agrupamento dos tokens do programa fonte, no qual cada token representa uma sequência de caracteres logicamente coesa, em frases gramaticais que são usadas pelo computador, a fim de sintetizar a saída.
- E. A fase final do compilador é a geração de código intermediário, na qual as alocações de memória são realizadas para cada uma das variáveis utilizadas pelo programa.