Buscar

Questionário Unidade I - Compiladores e Computabilidade

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

03/09/2020 Revisar envio do teste: QUESTIONÁRIO UNIDADE I – D571_...
https://ava.ead.unip.br/webapps/assessment/review/review.jsp?attempt_id=_43450290_1&course_id=_101256_1&content_id=_1374070_1&retur… 1/4
 
Revisar envio do teste: QUESTIONÁRIO UNIDADE I
COMPILADORES E COMPUTABILIDADE D571_13701_R_20202 CONTEÚDO
Usuário WILKER SARTORI DE OLIVEIRA
Curso COMPILADORES E COMPUTABILIDADE
Teste QUESTIONÁRIO UNIDADE I
Iniciado 03/09/20 07:36
Enviado 03/09/20 07:52
Status Completada
Resultado da tentativa 5 em 5 pontos  
Tempo decorrido 16 minutos
Resultados exibidos Respostas enviadas, Perguntas respondidas incorretamente
Pergunta 1
Resposta
Selecionada:
e.
Os diferentes elementos básicos que compõe uma linguagem, tais como as palavras reservadas,
identi�cadores, operadores e quaisquer 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 de�nido como um autômato �nito, dada a natureza regular dos elementos da linguagem. 
Julgue cada uma das a�rmativas 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 e�cientes,
para a descrição dos lexemas tornado a implementação do reconhecedor mais fácil. 
III) O analisador sintático �caria 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 justi�cam a separação dos
analisadores.
Pergunta 2
Resposta Selecionada:
e. 
 Analisadores sintáticos do tipo LL(k) realizam a veri�caçã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).
UNIP BIBLIOTECAS MURAL DO ALUNO
WILKER OLIVEIRA
CONTEÚDOS ACADÊMICOS
0,5 em 0,5 pontos
0,5 em 0,5 pontos
http://company.blackboard.com/
https://ava.ead.unip.br/webapps/blackboard/execute/courseMain?course_id=_101256_1
https://ava.ead.unip.br/webapps/blackboard/content/listContent.jsp?course_id=_101256_1&content_id=_1367580_1&mode=reset
https://ava.ead.unip.br/webapps/portal/execute/tabs/tabAction?tab_tab_group_id=_49_1
https://ava.ead.unip.br/webapps/portal/execute/tabs/tabAction?tab_tab_group_id=_27_1
https://ava.ead.unip.br/webapps/portal/execute/tabs/tabAction?tab_tab_group_id=_47_1
https://ava.ead.unip.br/webapps/portal/execute/tabs/tabAction?tab_tab_group_id=_25_1
https://ava.ead.unip.br/webapps/login/?action=logout
03/09/2020 Revisar envio do teste: QUESTIONÁRIO UNIDADE I – D571_...
https://ava.ead.unip.br/webapps/assessment/review/review.jsp?attempt_id=_43450290_1&course_id=_101256_1&content_id=_1374070_1&retur… 2/4
Pergunta 3
Resposta
Selecionada:
e.
No modelo de Análise e Síntese o processo é dividido em duas grandes etapas. Na primeira, são
realizadas todas as tarefas pertinentes a análise e compreensão do código fonte, enquanto na segunda,
as atividades de otimização e a geração do código propriamente dito. Cada uma destas grandes etapas
pode ser decompostas em fases, de propósito especí�co e cujo resultado de seu processamento servirá
como dado de entrada para a próxima fase. Analise as alternativas a seguir e assinale aquela cuja
atividade não corresponde a nenhuma das subfases deste modelo.
A fase de link edição, ou ligação, é responsável por criar o arquivo executável
combinando todos os arquivos objetos em um único módulo de carga.
Pergunta 4
Resposta
Selecionada:
a.
Uma das tarefas primordiais ao processo de compilação é que durante a veri�cação da sintática do
programa o compilador reporte ao 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.
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.
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
pre�xos 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 (pre�xo), 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 � | if E then S � | 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 � | K
R → else S | ε
0,5 em 0,5 pontos
0,5 em 0,5 pontos
0,5 em 0,5 pontos
03/09/2020 Revisar envio do teste: QUESTIONÁRIO UNIDADE I – D571_...
https://ava.ead.unip.br/webapps/assessment/review/review.jsp?attempt_id=_43450290_1&course_id=_101256_1&content_id=_1374070_1&retur… 3/4
Pergunta 6
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 codi�caçã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í�co. 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 7
Resposta
Selecionada:
d.
 
A gramática dada a seguir é LL(1). Nela os elementos +, *, (, ) e id con�guram 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.
Sobre a construção de analisadores sintáticos deste tipo é incorreto a�rmar 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 8
Resposta
Selecionada:
a.
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
(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.
0,5 em 0,5 pontos
0,5 em 0,5 pontos
0,5 em 0,5 pontos
03/09/2020 Revisar envio do teste: QUESTIONÁRIO UNIDADE I – D571_...
https://ava.ead.unip.br/webapps/assessment/review/review.jsp?attempt_id=_43450290_1&course_id=_101256_1&content_id=_1374070_1&retur… 4/4
Quinta-feira, 3 de Setembro de 2020 07h52min47s GMT-03:00
Pergunta 9
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 10
Resposta
Selecionada:
a.
Para o desenvolvimento de um compilador é possível que se adote um dos diferentes modelos de
construção. Um destes é o que chamamos de modelo de múltiplas passagens, em que as atividades
relacionadas a tradução e a escrita do código alvo são realizadas em etapas encadeadas. Cada fase
realiza sua tarefa percorrendo todo o código fonte e, após uma conclusão bem-sucedida, inicia-se a
etapa subsequente tendo como entrada o resultado da fase anterior. Acerca deste modelo analise as
seguintes considerações. 
- Trata-se de um modelo bastante didático, pois a modularização do processo permite o
desenvolvimento gradativo do compilador enquanto se estuda com mais detalhes as atividades
pertinentes a cada etapa. 
- Por outro lado, uma desvantagem inerente ao modelo é que por exemplo um erro semântico localizado
nas primeiras linhas do código fonte somente seria detectado após a conclusão das análises léxica e
sintática de todas as linhas do programa. 
Assinale a alternativa que representa o melhor juízo cabível sobre o que se a�rmou.
Ambas as assertivas são verdadeiras, sendo a segunda a justi�cativa da primeira.
← OK
0,5 em 0,5 pontos
0,5 em 0,5 pontos
javascript:launch('/webapps/blackboard/content/listContent.jsp?content_id=_1367580_1&course_id=_101256_1&nolaunch_after_review=true');

Continue navegando