Buscar

Prova1-compiladores

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1 
 
 
NOME: _ DATA: 
 
 
 
1 Sobre a Linkedição, assinale a alternativa correta: (1,0) 
 
I. Não obstante a linguagem de máquina gerada por um compilador possa ser executada diretamente no 
hardware, quase sempre ela deve ser executada juntamente com algum outro código. 
II. A maioria dos softwares desenvolvidos exigem a linkedição de programas do sistema operacional. 
III. Durante o processo de linkedição, o compilador cria chamadas a bibliotecas do sistema operacional. 
IV. O código de usuário e o de sistemas juntos, às vezes, são chamados de módulos de carga ou imagem de 
executável. 
V. O Linkeditor pode ser considerado um sistema de processamento de linguagem. 
 
 
a) As alternativas I, II e III são verdadeiras. 
 
b) Somente as alternativas I e III são verdadeiras. 
 
c) Somente as alternativas II e V são falsas. 
 
d) As alternativas II, III e V são falsas. 
 
e) Somente a alternativa V é falsa. 
 
 
2 Sobre Análise Sintática Top-Down, assinale a alternativa incorreta: (1,0) 
 
a) Os Analisadores Preditivos exigem que o símbolo sob o cabeçote de leitura defina univocamente a produção 
a ser aplicada. 
b) Os Analisadores Top-Down não recursivos, exigem que a gramática esteja fatorada. 
c) Os Analisadores Preditivos não-recursivos Tabulares implementam um autômato de pilha controlado por uma 
tabela de análise. 
d) A implementação de um Analisador Preditivo não-recursivo, exige que os símbolos que iniciam as regras de 
produção da gramática, definam univocamente qual produção deve ser a escolhida em cada momento do 
funcionamento do autômato de pilha. 
e) Um Analisador Top-Down jamais pode envolver recursividade. 
 
 
3 Ainda sobre a Análise Sintática Top-Down, assinale a alternativa correta: (1,0) 
 
a) A Análise Sintática Top-Down, ou redutiva, adota a estratégia de a cada passo do analisador, construir a árvore 
de derivação a partir do símbolo inicial da gramática, fazendo a árvore crescer até atingir suas folhas. 
b) Na estratégia top-down, em cada passo, um lado direito da regra de produção da gramática é substituído por 
um símbolo não-terminal. 
c) Na Análise Sintática Top-Down de Descendência Recursiva, se o token de entrada não define univocamente a 
produção a ser usada, então todas as alternativas vão ser tentadas até que se obtenha sucesso, ou até que a 
análise falhe irremediavelmente. 
d) Uma gramática recursiva à esquerda é completamente reconhecida através da utilização de um Analisador 
Sintático de Descendência Recursiva. 
e) Uma das vantagens do Analisador Sintático de Descendência Recursiva, é a facilidade na indicação da 
localização dos eventuais erros sintáticos mesmo com a aplicação de produções alternativas, conhecido como 
backtracking. 
Universidade Regional Integrada do Alto Uruguai e das Missões 
Campus de Erechim 
Departamento das Engenharias e Ciência da Computação 
Professor Fabio Zanin 
Compiladores - 2021 - A 
 
4 Relacione os itens 1, 2 e 3 de acordo com as alternativas. (1,0) 
 
1 – Implementação Compilada 
2 – Interpretação Pura 
3 – Interpretação Híbrida 
 
( ) – Gera um arquivo executável mais rápido. 
( ) – Os erros sempre acontecem em tempo de execução. 
( ) – É o método que provê maior portabilidade aos programas. 
( ) – Tende a ser o mais demorado entre os três processos (do fonte até o arquivo objeto ou execução). 
( ) – Garante a geração de programas mais livre de erros. 
( ) – Os erros de programação são mais fáceis de detectar. 
 
 
5 Sobre Processadores de Linguagens, assinale a alternativa correta: (1,0) 
 
 
I. Um processador é um programa que permite ao computador entender os comandos de alto nível escritos pelos 
usuários. 
II. Um tradutor é um programa que aceita como entrada um programa escrito em uma linguagem chamada 
"linguagem fonte" e executa diretamente as instruções dadas nesta linguagem. 
III. Os montadores e os compiladores são tipos de interpretadores. 
IV. Um Sistema de Processamento de Linguagens pode conter o uso de vários processadores para traduzir o 
programa fonte em um programa objeto. 
V. O pré-processador é um tipo de interpretador. 
 
a) Somente a alternativa I é verdadeira. 
b) Somente as alternativas I e IV são verdadeiras. 
c) As alternativas I, II, III e V são verdadeiras. 
d) As alternativas I, III e IV são falsas. 
e) Somente a alternativa V é falsa. 
 
 
6 Considerando a gramática abaixo, e a sua respectiva tabela de análise, verifique através do Autômato de 
Pilha se as sentenças sugeridas são reconhecidas ou não, e o número de iterações que foram necessárias para 
tal. (2,5) 
 
S aBa | AB | dA 
A bA | c 
B bA | cC | dAa 
C aCA | b 
 
A tabela de análise preditiva para esta gramática é mostrada abaixo: 
 
 a b c d $ 
S S aBa S AB S AB S dA - 
A - A bA A c - - 
B B B bA B cC B dAa B 
C C aCA C b - - - 
 
 
Sentenças: 
 
a) bccabbc Resposta: 
 
b) acabbbaa Resposta: 
 
7 Segundo a gramática e a tabela de precedência de operadores abaixo, diga se as expressões estão corretas 
ou não. Indique o número de iterações necessárias para o reconhecimento ou erro, e identifique o erro ocorrido 
se for o caso (2,5). 
 
 
E ::= E + E 
E ::= E – E 
E ::= E * E 
E ::= E / E 
E ::= (E) 
E ::= id 
Tabela de precedência de operadores: 
 
 Id + - / * ( ) $ 
Id E3 > > > > E3 > > 
+ < > > < < < > > 
- < > > < < < > > 
/ < > > > > < > > 
* < > > > > < > > 
( < < < < < < = E4 
) E3 > > > > E3 > > 
$ < < < < < < E2 E1 
 
 
Sentenças: 
 
a) id + id - id / id (id) 
 
Resposta: 
 
 
b) id * id + (id) / id 
 
Resposta:

Continue navegando