Buscar

Linguagens e Compiladores - Semana 3 - Nota 10

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

Linguagens e Compiladores - Semana 3 
 
 
PERGUNTA 1 
O _________ expressa o fato de que faz sentido identificar os estados restantes e de 
transição e combinar suas verificações à frente. Ao fazer isso, precisamos sempre 
concluir com um ________ idêntico ao DFA de itens LR(0), exceto que cada estado é 
composto por itens com ________ de verificações à frente. 
 
Preencha as lacunas escolhendo a alternativa CORRETA. 
 
a. algoritmo, LR(0), sequências. 
 
b. DAF, LALR(1), itens. 
 
c. algoritmo de análise sintática LALR(1), DFA, conjuntos. 
 
d. algoritmo de análise sintática LALR(1), LR(0), conjuntos. 
 
e. LALR(1), conjuntos, DFA. 
 
PERGUNTA 2 
A tarefa principal de um analisador carrega-reduz é determinar o gancho seguinte 
durante uma análise sintática. É importante observar que a cadeia de um gancho 
sempre forma um lado direito completo para a sua produção (a qual será utilizada na 
redução seguinte), e a posição à direita da cadeia do gancho corresponderá ao topo da 
pilha quando a redução ocorrer. Portanto, parece plausível que um analisador carrega-
reduz determine suas ações com base nas posições à direita das produções. 
 
Com relação às características de um analisador carrega-reduz, avalie as afirmativas a 
seguir. 
 
I. Quando as posições atingem o final à direita de uma produção, esta será candidata à 
redução. 
II. O analisador carrega-reduz não tem a necessidade de determinar o gancho seguinte 
durante uma análise sintática. 
III. Atingindo a posição final à direita de uma produção, esta será candidata à redução. 
Com isso, o gancho poderá estar no topo da pilha. 
IV. Para ser o gancho, entretanto, basta que a cadeia no topo da pilha case esteja com 
o lado direito de uma produção. 
 
Está correto o que se afirma em: 
 
a. I, II e IV, apenas. 
 
b. II, apenas. 
 
c. I e III, apenas. 
 
d. I, II e III, apenas. 
 
e. I, III e IV, apenas. 
 
PERGUNTA 3 
A análise sintática LR(1) simples, ou SLR(1), utiliza o DFA de conjuntos de itens LR(0). 
Ela aumenta o poder da análise LR(0) de maneira significativa. Avalie as afirmações a 
seguir em relação à análise sintática. 
 
1. Estado corrente 
2. Gramática SLR(1) 
3. Análise sintática LR(1) simples 
 
I. Utiliza a marca seguinte na cadeia de entrada para dirigir suas ações. 
II. Envolve a aplicação das regras de análise sintática para não resultar em 
ambiguidade. 
III. É definido quando está no topo da pilha de análise sintática. 
 
Assinale a alternativa que correlaciona adequadamente os dois grupos de 
informação. 
 
a. 1 – III; 2 – II; 3 – I. 
 
b. 1 – II; 2 – I; 3 – III. 
 
c. 1 – I; 2 – II; 3 – III. 
 
d. 1 – II; 2 – III; 3 – I. 
 
e. 1 – I; 2 – III; 3 – II. 
 
PERGUNTA 4 
É conhecido que um algoritmo depende do acompanhamento do estado corrente do 
DFA de conjuntos de itens. Dessa forma, precisamos alterar a pilha de análise sintática 
para armazenar não apenas símbolos, mas também números de estados. 
 
Considerando os fatores apresentados, analise as afirmativas a seguir e assinale V para 
a(s) verdadeira(s) e F para a(s) falsa(s). 
 
I. ( ) Para o armazenamento de números de estados, é necessário inserir um novo 
número de estado na pilha após a colocação de cada símbolo. 
II. ( ) Os estados não podem conter todas as informações sobre os símbolos. 
III. ( ) Os estados contêm toda a informação sobre os símbolos, portanto poderíamos 
dispensar os símbolos propriamente ditos e registrar apenas os números dos estados 
na pilha. 
IV. ( ) Não podemos dispensar os símbolos propriamente ditos. 
 
Assinale a alternativa que apresenta a sequência CORRETA. 
 
a. V, V, V, V. 
 
b. V, F, V, F. 
 
c. F, F, F, V. 
 
d. V, V, F, F. 
 
e. F, V, V, V. 
 
PERGUNTA 5 
Um analisador sintático ascendente usa uma pilha explícita para efetuar uma análise, 
de maneira similar a um analisador descendente não recursivo. A pilha conterá tanto 
marcas como não terminais, além de informações adicionais de estados. 
 
Assinale a alternativa que corresponda corretamente às duas ações possíveis do 
analisador ascendente. 
 
a. Inicial e final. 
 
b. Carregar e reduzir. 
 
c. Descarregar e aumentar. 
 
d. Terminal e não terminal. 
 
e. Entrada e saída. 
 
PERGUNTA 6 
Sabemos que é mais fácil lidar com a verificação à frente nos analisadores ascendentes 
do que nos descendentes. Um analisador ascendente pode carregar os símbolos de 
entrada para a pilha até determinar que ação deve executar (assumindo que possa ser 
uma ação a qual não exija que os símbolos sejam carregados de volta para a entrada). 
Um analisador ascendente, porém, pode precisar de outros elementos da pilha, além do 
topo, para determinar a ação a ser executada. 
 
 
Com base nessas informações, assinale a alternativa correta. 
 
a. O tradutor, durante sua execução, realiza operações de análise sintática. 
 
b. A análise ascendente requer verificações, somente atrás, na pilha. 
 
c. A análise ascendente não requer verificações. 
 
d. A análise ascendente requer verificações à frente arbitrárias na pilha. 
 
e. O analisador não constrói a pilha. 
 
PERGUNTA 7 
A análise sintática LALR(1) preserva alguns dos benefícios da análise sintática LR(1), 
com relação à análise sintática SLR(1), e também preserva o menor tamanho do DFA 
de itens LR(0). Formalmente, o núcleo de um estado do DAF de itens LR(1) é o conjunto 
de itens LR(0) composto pelos primeiros componentes de todos os itens LR(1) no 
estado. 
 
Com relação ao apresentado, analise as asserções a seguir e as relações propostas 
entre elas. 
 
I. A construção do DFA de itens LR(1) utiliza transições iguais à construção do DFA de 
itens LR(0), exceto por seu efeito nas partes de verificação à frente dos itens. 
PORQUE 
II. Dessa forma, não podemos obter dois fatos, que formam a base da construção da 
análise sintática LALR(1). 
 
Analisando as asserções anteriores, conclui-se que: 
 
a. as duas asserções são verdadeiras, e a segunda não justifica a primeira. 
 
b. a primeira asserção é falsa, e a segunda é verdadeira. 
 
c. a primeira asserção é verdadeira, e a segunda é falsa. 
 
d. as duas asserções são verdadeiras, e a segunda justifica a primeira. 
 
e. as duas asserções são falsas.

Outros materiais