Prova da disciplina de compiladores
DEPARTAMENTO DE COMPUTAÇÃO
DISCIPLINA: COMPILADORES
Nome:______________________________________________Data:13/09/2012
1. Quem faz a análise do código fonte através da gramática é o:
A. Analisador SintáticoB. Analisador SemânticoC. Analisador LéxicoD. Otimizador de código
2. A principal diferença entre o interpretador “puro” e o compilador é que o compilador
A. Apenas interpreta o código fonte B. Gera código de máquina
C. Interpreta o código intermediárioD. Ambos interpretam código intermediário
3. “Faz a leitura do código fonte caractere a caractere e agrupa os tokens por tipo”. Esta definição se refere a:
A. Analisador SintáticoB. Analisador SemânticoC. Analisador LéxicoD. Otimizador de código
4. Sobre os sistemas de interpretação híbridos, é correto afirmar que:
A. Utilizam a rapidez dos interpretadores para gerar programas em código binário B. A decodificação é feita apenas três vezes, tendo menos passos para a geração de programas
C. Ao invés de traduzir código em linguagem linguagem intermediária para código de máquina, ele simplesmente interpreta o código intermediário.
D. O código de máquina gerado por esse tipo de linguagem é um código otimizado.
5. Sobre o modelo de compilação, marque a afirmativa correta
A. É dividido em Análise, Otimização e SínteseB. É dividido em Análise, Léxica e Síntese
C. É dividido em Análise e Síntese
D. É dividido em Tradução e Síntese
6. É considerado erro léxico:
A. Uma variável de um tipo que recebe um valor de outro tipo B. Um símbolo mal formado ou não declarado
C. Uma variável vazia
D. Um caractere não esperado
7. A Forma de Backus-Naur (BNF) é composta de variáveis não-terminais que são usados para descrever a gramática de uma linguagem. Sobre esse formalismo é possível dizer que:
A. Do lado direito da produção pode haver apenas um terminalB. Do lado esquerdo da produção pode haver apenas não-terminais ou terminais
C. Do lado direito da