Buscar

Análise de 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 14 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 14 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 9, do total de 14 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

Prévia do material em texto

1a
 Questão
	Acerto: 1,0 / 1,0
	
	Um compilador está verificando se uma variável foi declarada somente uma vez, se foi declarada antes do seu primeiro uso, se foi declarada e nunca foi usada e se os tipos de dados em uma expressão aritmética são compatíveis. Essas verificações são realizadas na fase de:
	
	
	
	otimização do código
	
	geração do código.
	
	análise léxica.
	
	análise sintática.
	 
	análise semântica.
	Respondido em 25/09/2022 19:22:39
	
	Explicação:
A resposta correta é: análise semântica.
	
	
	2a
 Questão
	Acerto: 0,0 / 1,0
	
	Os compiladores são responsáveis por abstrair a complexidade da programação e proporcionar uma vida mais tranquila para os desenvolvedores. Sobre a análise léxica e sintática executadas pelos compiladores, assinale a opção correta.
	
	
	 
	Um analisador léxico gera a entrada para o analisador sintático.
	 
	Um analisador léxico serve como o passo final de um analisador sintático.
	
	Os analisadores léxico e sintático somente se comunicam via tabela de simbolos.
	
	O analisador sintático processa diretamente o programa fonte a procura de erros. 
	
	Técnicas para análise léxica são mais complexas do que as necessárias para a análise sintática. 
	Respondido em 25/09/2022 19:24:43
	
	Explicação:
O analisador léxico realiza o primeiro passo da etapa de análise da compilação. Uma de suas responsabilidades é gerar a entrada para o analisador sintático.
	
	
	3a
 Questão
	Acerto: 0,0 / 1,0
	
	Considere a seguinte especificação de tokens com sua descrição informal: 
SE fosse submetida ao Analisador a seguinte expressão: 
Soma = 0; 
Soma = A + B; 
O sétimo token reconhecido e seu lexema seriam respectivamente: 
	
	
	
	Id e Soma 
	
	TermCom e ; 
	 
	OpArit e + 
	 
	Id e A 
	
	NumInt e 0 
	Respondido em 25/09/2022 19:31:16
	
	Explicação:
A resposta correta é: Id e A 
	
	
	4a
 Questão
	Acerto: 0,0 / 1,0
	
	Durante o processo de Análise o scanner lê os caracteres um por um e tenta associa-los ao padrão correspondente a algum token. 
Neste processo ele eventualmente pode encontrar algum padrão que não corresponda ao tokens. Nesse caso, ele deve: 
	
	
	
	Ignorar totalmente o erro e prosseguir a análise como se nada tivesse acontecido.
	 
	Passar o erro para o analisador sintático para que este o trate.
	
	Abortar a análise e reportar imediamente o erro.
	
	Tentar corrigir o erro reescrevendo a parte onde foi encontrado. 
	 
	Continuar a análise após realizar a recuperação do erro e anotá-lo para informação posterior.
	Respondido em 25/09/2022 19:30:44
	
	Explicação:
A resposta correta é: Continuar a análise após realizar a recuperação do erro e anotá-lo para informação posterior.
	
	
	5a
 Questão
	Acerto: 1,0 / 1,0
	
	Enade 2011
Considere a gramática a seguir, em que S, A e B são símbolos não terminais, 0 e 1 são terminais e Ɛ é a cadeia vazia.
A respeito dessa gramática, analise as afirmações a seguir.
I. Nas cadeias geradas por essa gramática, o último símbolo é 1.
II. O número de zeros consecutivos nas cadeias geradas pela gramática é, no máximo, dois.
III. O número de uns em cada cadeia gerada pela gramática é maior que o número de zeros.
IV. Nas cadeias geradas por essa gramática, todos os uns estão à esquerda de todos os zeros.
É correto apenas o que se afirma em
	
	
	
	II e IV
	
	I e III
	 
	II
	
	I
	
	III e IV
	Respondido em 25/09/2022 19:33:01
	
	Explicação:
Resposta correta: II
	
	
	6a
 Questão
	Acerto: 1,0 / 1,0
	
	Ao realizarmos a análise sintática, podem ser detectados erros que não foram vistos durante a análise léxica.
Considerando a seguinte gramática
L: [A-Z]
D: [0-9]
Op:["+""-"]
At:["="]
Id:{L} ({L}|{D})*
Int:{D}+
Oper:{Op}
Atrib:{At}
Fc : ;
::= Id Atrib ;
::= | Id | Int;
::= Oper;
Qual das opções abaixo possui apenas erro sintático.
	
	
	
	A = C
	
	A = b + C;
	 
	A := 7;
	
	10 * 5;
	
	d - 10
	Respondido em 25/09/2022 19:35:09
	
	Explicação:
Resposta correta: A := 7;
	
	
	7a
 Questão
	Acerto: 0,0 / 1,0
	
	Uma tabela de simbolos pode ser organizada de várias formas diferentes, cada uma com suas vantagens e desvantagens. 
Quanto as formas de organização da tabela, avalie as afirmativas abaixo: 
I na Lista linear o algoritmo de busca exige O(n) sondagens por pesquisa, na média, onde n é o número de símbolos na tabela. 
II Na Busca binária a pesquisa possui uma complexidade de O(n²)
III Na tabela de hash a complexidade de busca tende a ser, na média, O(1) 
IV No hashing aberto a complexidade de busca é O(Log2n) 
Com base nas afirmativas podemos concluir que estão corretas apenas
	
	
	 
	I e III
	
	III e IV
	
	I e II
	 
	II e IV
	
	II e III
	Respondido em 25/09/2022 19:35:55
	
	Explicação:
Resposta correta: I e III
	
	
	8a
 Questão
	Acerto: 0,0 / 1,0
	
	Verificação de tipos é uma atividade extremamente importante na análise semântica já que determinados erros somente são percebidos nesta atividade, pois passam despercebidos nas Análises Léxicas e Sintáticas. 
Considere o seguinte trecho de programa :
inteiro a,b,c; 
{ 
.... 
c:= a + b; 
.... 
} 
 
Quanto a expressão c:= a + b; podemos afirmar que:
 
O seu tipo será inteiro 
porque 
todos os operandos são do tipo inteiro 
 
Com base nas afirmativas podemos concluir que:
	
	
	
	A primeira é falsa e a segunda correta
	 
	A primeira é verdadeira e a segunda falsa
	
	As duas afirmativas são falsas
	
	As duas são corretas e a segunda não justifica a primeira
	 
	As duas são corretas e a segunda justifica a primeira
	Respondido em 25/09/2022 19:37:08
	
	Explicação:
Resposta correta: As duas são corretas e a segunda justifica a primeira
	
	
	9a
 Questão
	Acerto: 0,0 / 1,0
	
	Um programa pode ter parte de sua funcionalidade implementada por um procedimento. Procedimentos são normalmente compilados a parte e depois ligados ao código principal. Quando um procedimento é chamado é criado para ele um Registro de Ativação que possui informações de contexto, suas variáveis locais, parâmetros etc.
Com base nisso se um procedimento G chama um procedimento D que chama um procedimento E podemos afirmar que
 O registro de ativação de E estará no topo da pilha
Porque
Os registros de ativação dos diversos procedimento são empilhados na ordem inversa do retorno
Com base nas afirmativas acima podemos concluir que:
	
	
	 
	A primeira é verdadeira e a segunda falsa
	 
	As duas são corretas e a segunda não justifica a primeira
	
	A primeira é falsa e a segunda correta
	
	As duas afirmativas são falsas
	
	As duas são corretas e a segunda justifica a primeira
	Respondido em 25/09/2022 19:38:51
	
	Explicação:
Resposta correta: A primeira é verdadeira e a segunda falsa
	
	
	10a
 Questão
	Acerto: 0,0 / 1,0
	
	Para determinar qual código é mais otimizado podemos utilizar uma métrica que calcule o custo de cada opção e determinar qual é o mais otimizado, ou seja qual tem o menor custo.
Considere um processador com o seguinte conjunto de instruções:
Sabendo que a métrica utilizada gera um custo de 1 para instruções que não acessam a memória RAM e um custo de 2 para as que não acessam analise os trechos de código abaixo
Como base na análise podemos afirmar que o código 2 é melhor que o código 1
Porque
Seu custo é 12 enquanto o do código 1 é 12
Com base nas afirmativas acima podemos concluir que:
 
	
	
	
	As duas afirmativas são falsas
	
	As duas são corretas e a segunda justifica a primeira
	 
	A primeira é falsa e a segunda correta
	
	As duas são corretas e a segunda não justifica a primeira
	 
	A primeira é verdadeira e a segunda falsa
	Respondido em 25/09/2022 19:38:55
	
	Explicação:
Respsota correta: A primeira é verdadeira e a segunda falsa

Continue navegando