Buscar

Questionário AVA 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 6 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 6 páginas

Prévia do material em texto

Revisar envio do teste: QUESTIONÁRIO UNIDADE I 
COMPILADORES E COMPUTABILIDADE D571_13701_R_20192 CONTEÚDO 
Usuário RENATO ALVES FILHO 
Curso COMPILADORES E COMPUTABILIDADE 
Teste QUESTIONÁRIO UNIDADE I 
Iniciado 23/09/19 08:57 
Enviado 23/09/19 09:38 
Status Completada 
Resultado da tentativa 5 em 5 pontos   
Tempo decorrido 41 minutos 
Resultados exibidos Respostas enviadas, Perguntas respondidas incorretamente 
Pergunta 1 
Resposta Selecionada: e.
Analisadores sintáticos do tipo LL(k) realizam a verificação da sentença 
de modo descendente, entretanto tem como restrição poderem ser 
aplicados apenas aos casos em que a gramática da linguagem é LL(k). 
Considerando a produção S → S x K | K qual, dentre as alternativas a 
seguir, poderia substituí-la de modo a eliminar a recursão a esquerda e 
criar uma gramática equivalente? (Considere ε representando a 
sentença vazia). 
Pergunta 2 
A gramática dada a seguir é LL(1). Nela os elementos +, *, (, ) e id 
configuram 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 regra 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.
UNIP BIBLIOTECAS MURAL DO ALUNOCONTEÚDOS ACADÊMICOS
0,5 em 0,5 pontos
0,5 em 0,5 pontos
RENATO FILHO 1
Resposta 
Selecionada:
d.
Sobre a construção de analisadores sintáticos deste tipo é incorreto 
afirmar que:
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 3 
Resposta 
Selecionada:
d.
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.
Dentre a categoria de analisadores descendentes 
podemos citar os parses Descendentes Recursivos, 
de Cocke‐Younger‐Kasami e os analisadores do tipo 
LR(k).
Pergunta 4 
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 afirmar sobre o Analisador Descendente Recursivo:
0,5 em 0,5 pontos
0,5 em 0,5 pontos
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 verificar 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 5 
Resposta Selecionada:
a.
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 prefixos 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 (prefixo), 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)?.
S → if E then S R fi | K
R → else S | ε
Pergunta 6 
Os diferentes elementos básicos que compõe uma linguagem, tais 
como as palavras reservadas, identificadores, operadores e quaisquer 
0,5 em 0,5 pontos
0,5 em 0,5 pontos
Resposta 
Selecionada:
e.
outros lexemas estabelecidos por ela, também possuem uma estrutura 
sintática e podem ser descritos formalmente através de expressões 
regulares. Entretanto a tarefa de reconhecimento dos lexemas é 
realizada pelo Analisador Léxico, acontecendo de maneira separada da 
Análise Sintática do código. 
Assim, um analisador léxico é antes de mais nada um elemento 
reconhecedor destas estruturas e pode ser definido como um 
autômato finito, dada a natureza regular dos elementos da linguagem. 
Julgue cada uma das afirmativas a seguir e assinale a alternativa 
correta. 
I) As gramáticas regulares não permitem a descrição de estruturas 
aninhadas e portanto não são capazes de descrever simultaneamente 
os lexemas e também as demais estruturas típicas nas linguagem de 
programação, tais como parênteses balanceados e comandos 
aninhados. 
II) A separação das etapas permite utilizar gramaticas regulares, que 
são mais simples e mais eficientes, para a descrição dos lexemas 
tornado a implementação do reconhecedor mais fácil. 
III) O analisador sintático ficaria muito mais complexo, pois estaria a 
todo momento preocupado em prever a ocorrência de símbolos 
irrelevantes, tais como espaços em branco, que teriam sido eliminados 
pela análise léxica.
Todos itens são verdadeiros e os motivos 
apresentados justificam a separação dos 
analisadores.
Pergunta 7 
Resposta 
Selecionada:
d.
Um processo algorítmico tem o objetivo de instruir 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, apresentam 
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.
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.
0,5 em 0,5 pontos
Pergunta 8 
Resposta 
Selecionada:
b.
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 codificaçã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ífico. Nesse contexto, assinale a alternativa que 
descreve o propósito e a principal tarefa realizada pelos compiladores.
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 9 
Resposta 
Selecionada:
a.
Supondo a gramática a seguire 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
(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 10 
0,5 em 0,5 pontos
0,5 em 0,5 pontos
0,5 em 0,5 pontos
Segunda-feira, 23 de Setembro de 2019 09h38min47s BRT
Resposta 
Selecionada:
e.
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.
Detectar os marcadores de início e de fim 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. 
← OK

Continue navegando