Buscar

COMPILADORES E COMPUTABILIDADE - QUESTIONÁRIO UNIDADE I

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 5 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

24/10/2021 22:11 Revisar envio do teste: QUESTIONÁRIO UNIDADE I – ... 
https://ava.ead.unip.br/webapps/assessment/review/review.jsp?attempt_id=_71056919_1&course_id=_177337_1&content_id=_2259695_1&retur… 1/5 
 
 
 
 
 
 
UNIP CONTEÚDOS ACADÊMICOS BIBLIOT ECAS MURAL DO ALUNO 
 
 
 
 
COMPILADORES E COMPUTABILIDADE D571_15801_R_20212 CONTEÚDO 
Revisar envio do teste: QUESTIONÁRIO UNIDADE I 
 
 
Usuário 
Curso COMPILADORES E COMPUTABILIDA DE 
Teste QUESTIONÁ RIO UNIDADE I 
Iniciado 24/10/21 21:51 
Enviado 24/10/21 21:57 
Status Completada 
Resultado da tentativa 5 em 5 pontos 
Tempo decorrido 6 minutos 
Resultados exibidos Respostas enviadas, Perguntas respondidas incorretamente 
 
 
Pergunta 1 0,5 em 0,5 pontos 
 
 
 
 
 
A gramática dada a seguir é LL(1). Nela os elementos +, *, (, ) e id conf iguram como 
símbolos terminais, enquanto os E, T, F, E’ e T’ são considerados não -terminais. A 
tabela de movimentos M fornece ao reconhecedor o número da reg ra que deve ser 
aplicada durante a análise da sentença, sendo necessário apenas conhecer o não - 
terminal a ser derivado e o primeiro símbolo presente no restante da entrada. 
 
 
 
 
 
 
 
 
Sobre a construção de analisadores sintáticos deste tipo é incorreto af irmar que: 
 
Resposta 
Selecionada: 
d. 
A aplicação da regra 8 deve ser feita antes da regra 7, segundo a 
interpretação que temos da tabela. Esse fato se comprova ao 
observarmos que o símbolo “(“ poderia ocorrer imediatamente após 
um “id” segundo o que determina as produções da gramática. 
 
 
 
 
 
 
Pergunta 2 0,5 em 0,5 pontos 
24/10/2021 22:11 Revisar envio do teste: QUESTIONÁRIO UNIDADE I – ... 
https://ava.ead.unip.br/webapps/assessment/review/review.jsp?attempt_id=_71056919_1&course_id=_177337_1&content_id=_2259695_1&retur… 2/5 
 
 
 
 
 
Supondo a gramática a seguir e a sentença (a,(a),(a,a)), quais seriam os movimentos 
realizados por um reconhecedor ascendente para esta cadeia? 
G = ({L,S}, {“(“, ”)”, ”a”, ”,”}, L, P ) 
P. L → (S) 
S → I,S | I 
I → a | L 
 
Resposta 
Selecionada: 
a. 
(a,(a),(a,a)) ⇒ (I,(a),(a,a)) ⇒ (I,(I),(a,a)) ⇒ (I,(S),(a,a)) ⇒ (I,L,(a,a)) ⇒ (I,I, 
(a,a)) ⇒ (I,I,(I,a)) ⇒(I,I,(I,I)) ⇒ (I,I,(I,S)) ⇒ (I,I,(S)) ⇒ (I,I,L) ⇒ (I,I,I) ⇒ (I,I,S) ⇒ 
(I,S) ⇒ (S) ⇒ L. 
 
 
 
 
 
 
Pergunta 3 0,5 em 0,5 pontos 
 
 
 
Um analisador sintático descendente constrói a árvore de derivação do programa de 
cima para baixo, isto é, partindo da raiz (símbolo inicial da gramática) e seguindo em 
direção as folhas (símbolos do programa). Todos os métodos que adotam esta 
estratégia seguem esta abordagem, variando pontualmente a forma como resolvem 
o problema de selecionar a regra a ser aplicada em cada momento. Pode-se af irmar 
sobre o Analisador Descendente Recursivo: 
 
Resposta 
Selecionada: 
a. 
É um reconhecedor obtido através da transcrição das regras de 
produção da gramática na forma de um conjunto de sub -rotinas. 
Assim, cada sub-rotina é responsável por verif icar os elementos 
relativos a uma produção em particular. O processo de 
reconhecimento se inicia com a chamada da sub-rotina equivalente 
a regra que deriva o símbolo inicial da gramática. A partir disto, 
chamadas subsequentes para outras sub-rotinas são realizadas 
sempre que um símbolo não terminal é encontrado na produção. 
Quando todos os elementos são consumidos, a chamada inicial 
retorna sinalizando que se trata de uma sentença é válida. 
 
 
 
 
 
 
Pergunta 4 0,5 em 0,5 pontos 
 
 
 
Durante a varredura do código fonte pelo Scanner (Analisador Léxico) várias tarefas 
ditas secundárias são realizadas. Assinale a alternativa cuja tarefa não corresponde 
as atribuições esperadas para um analisador léxico. 
 
Resposta e. 
Selecionada: 
24/10/2021 22:11 Revisar envio do teste: QUESTIONÁRIO UNIDADE I – ... 
https://ava.ead.unip.br/webapps/assessment/review/review.jsp?attempt_id=_71056919_1&course_id=_177337_1&content_id=_2259695_1&retur… 3/5 
 
 
Detectar os marcadores de início e de f im de blocos para que os 
comandos possam ser agrupados em um único elemento e 
entregues para a fase de análise sintática com um comando único. 
 
 
 
 
 
 
Pergunta 5 0,5 em 0,5 pontos 
 
 
 
Um processo algorítmico tem o objetivo de inst ruir o executor quanto às ações que 
deve realizar e a sua sequência. Para que isso ocorra é necessário que as instruções 
sejam dadas num formato compreensível àquele que as realizará. A programação 
de computadores é feita descrevendo o algoritmo em instruções de uma linguagem 
de programação e que, quando ditas de alto nível, ap resentam características mais 
próximas à estrutura das linguagens humanas do que a das máquinas. Analise as 
alternativas a seguir e assinale a que julgar incorreta. 
 
Resposta 
Selecionada: 
d. 
Os conhecimentos relacionados à construção de compiladores 
encerram-se estritamente nesta atividade, oferecendo pouco ou 
mesmo nenhuma possibilidade de aplicação em outras áreas que 
não seja a tradução para linguagem de máquina. 
 
 
 
 
 
 
Pergunta 6 0,5 em 0,5 pontos 
 
 
 
O processo de programar um computador para realizar uma determinada tarefa, 
quando analisado em relação às atividades que são necessárias desde a codif icação 
do algoritmo até a execução propriamente dita do programa, pode ser visto como 
um processo complexo e que envolve vários elementos, cada qual com propósito 
bastante específ ico. Nesse contexto, assinale a alternativa que descreve o propósito 
e a principal tarefa realizada pelos compiladores. 
 
Resposta 
Selecionada: 
b. 
Possibilitar a programação de computadores utilizando linguagens 
de alto nível (que permitem descrever as ideias em termos mais 
abstratos e mais independentes da arquitetura da máquina), pois 
são responsáveis pela tradução do algoritmo em seu 
correspondente em um linguagem de baixo nível. 
 
 
 
 
 
 
Pergunta 7 0,5 em 0,5 pontos 
24/10/2021 22:11 Revisar envio do teste: QUESTIONÁRIO UNIDADE I – ... 
https://ava.ead.unip.br/webapps/assessment/review/review.jsp?attempt_id=_71056919_1&course_id=_177337_1&content_id=_2259695_1&retur… 4/5 
 
 
Um analisador sintático LL(1) somente pode ser construído para uma classe restrita 
de gramáticas, que também recebem este mesmo nome. Uma de suas 
características é que suas produções não apresentem pref ixos comuns para cadeias 
distintas derivadas a partir de um mesmo não-terminal. Ou seja, se duas produções 
que começam com o mesmo símbolo ou conjunto de símbolos (pref ixo), por 
exemplo, como nas regras A→αβ e A→αδ e sendo First(α) ≠ ∅, implicará numa 
interseção entre os conjuntos First(αβ) e First(αδ) e o analisador não será capaz de 
decidir qual regra escolher utilizando um único símbolo da entrada. Usualmente o 
problema pode ser resolvido substituindo as produções da gramática que causam o 
problema por outras que acomodem essa restrição, mantendo a equivalência entre 
elas. Supondo a produção S → if E then S else S fi | if E then S fi | K e 
considerando ε como a sentença vazia, quais dentre as alternativas a seguir 
representa uma substituição válida para resolver o problema apresentado e obter 
uma gramática equivalente que seja LL(1)?. 
 
Resposta Selecionada: S → if E then S R f i | K 
a. R → else S | ε 
 
 
 
 
 
 
Pergunta 8 0,5 em 0,5 pontos 
 
 
 
Os métodos ligados a análise sintática se agrupam em ascendentes e descendentes, 
de acordo com a forma como derivam a estrutura sintática da sentença do 
programa. Assinale a alternativa incorreta a respeito dos analisadores sintáticos. 
 
Resposta 
Selecionada: 
d. 
Dentre a categoria de analisadores descendentes podemos citar os 
parses Descendentes Recursivos, de Cocke‐Younger‐Kasami e os 
analisadores do tipo LR(k). 
 
 
 
 
 
 
Pergunta 9 0,5 em 0,5 pontos 
 
 
 
Uma das tarefas primordiais ao processo de compilação é que durante a verif icação 
da sintática do programa o compilador reporteao programador todos os erros 
detectados para que ele os corrija. Neste contexto, a adoção de uma estratégia que 
permita o tratamento e eventual recuperação diante de erros é parte das decisões 
que envolvem a construção dos analisadores. Assinale a alternativa que não 
descreve de maneira apropriada essas estratégias. 
 
Resposta 
Selecionada: 
a. 
O Modo Pânico é aquele em que o compilador exibe as mensagens 
de erro e interrompe qualquer outra atividade do sistema 
operacional, evitando problemas de gravação dos dados no disco e 
a corrupção dos dados armazenados. 
24/10/2021 22:11 Revisar envio do teste: QUESTIONÁRIO UNIDADE I – ... 
https://ava.ead.unip.br/webapps/assessment/review/review.jsp?attempt_id=_71056919_1&course_id=_177337_1&content_id=_2259695_1&retur… 5/5 
 
 
 
Pergunta 10 0,5 em 0,5 pontos 
Durante o processo de verif icação da estrutura sintática de um programa, o 
analisador simula o processo de construção da árvore de derivação para o 
programa que está sendo compilado. Usualmente esse processo é realizado 
adotando-se uma dentre duas abordagens possíveis. a top-down, em que se parte 
do símbolo inicial da gramática e tenta-se alcançar os elementos que compõe o 
programa; e a botton-up, que segue o princípio contrário, partindo do código e 
realizado reduções na sentença até que se alcance o símbolo inicial que caracterize 
o elemento raiz da árvore. A respeito destas estratégias assinale a alternativa 
correta. 
Resposta a. 
Selecionada: Os métodos descendentes são usualmente mais convenientes em 
casos de implementação manual, enquanto os métodos 
ascendentes (botton-up) são considerados mais favoráveis para 
construtores automáticos de analisadores. 
Domingo, 24 de Outubro de 2021 21h58min04s GMT-03:00 ← OK

Continue navegando