Escolar Documentos
Profissional Documentos
Cultura Documentos
Assinale a alternativa que representa a principal tarefa realizada pela Análise léxica.
Resposta c.
Selecionada: Varrer o arquivo fonte, lendo-o caractere por caractere e agrupá-los
em blocos de um ou mais elementos de acordo com o significado
dentro da linguagem.
Resposta d.
Selecionada:
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.
Resposta a.
Selecionada: É 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.
Resposta b.
Selecionada: 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 5 0,5 em 0,5 pontos
- 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 afirmou.
Resposta a.
Selecionada: Ambas as assertivas são verdadeiras, sendo a segunda a
justificativa da primeira.
Resposta d.
Selecionada: Dentre a categoria de analisadores descendentes podemos citar os
parses Descendentes Recursivos, de Cocke‐Younger‐Kasami e os
analisadores do tipo LR(k).
P. L → (S)
S → I,S | I
I→a|L
Resposta a.
Selecionada: (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.
Os diferentes elementos básicos que compõe uma linguagem, tais como as palavras
reservadas, identificadores, 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.
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.
Resposta e.
Selecionada: Todos itens são verdadeiros e os motivos apresentados justificam
a separação dos analisadores.
Resposta Selecionada:
e.
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.