A maior rede de estudos do Brasil

Grátis
3 pág.
APOL 02 compiladores

Pré-visualização|Página 1 de 3

Questão 1/5 - Compiladores
O analisador sintático é, par a todos os efeitos, o segundo maior bloco funcional n o
processo de compilação ficand o entre o analisador léxico e o an alisador semântico.
Marque entre alternativas a seguir, aquela que contém apenas funcionalidades
atribuídas ao a nalisador sintático considerando- se os compiladores utilizados para a
linguagem C.
Nota: 20.0
A
Identificação dos lexemas para a criação da árvore semântica etiquetada;
B
Identificação de sentenças e montagem da árvore sintática;
Você acertou!
C
Identificação de sentenças para a criação de tokens;
D
Identificação de tokens para a determinação de tipos;
Questão 2/5 - Compiladores
A principal função do analisador sintá tico é construi r um a estrutura de dados que
permitirá a validação do código utilizando as regras de produção, símbolos term inais e
não terminais. Para permitir esta análise, qual a estrutura de dados que é utilizada p elos
analisadores sintáticos moder nos.
Nota: 20.0
A
um array de símbolos terminais não relacionados com as regras de produção;
B
uma árvore contendo símbolos terminais e não terminais que obedecem as regras de produção;
Você acertou!
C
um registro (struct), contendo as regras de produção arrumadas em um array de símbolos terminais;
D
um texto composto apenas dos símbolos não terminais;
E
um array multidimensional contendo símbolos terminais e não terminais.
Questão 3/5 - Compiladores
As gramáticas livres de contexto, utilizadas na defin ição de linguagen s formais, para a
criação de linguagens de pr ogramação definem, a partir de um conjunto de quatro
elementos, todas as regras que de terminam a linguagem. Essas regr as podem ser
expandidas pelo processo chamado de d erivação. Sendo assim, mar que a alternativa
correta.
Nota: 0.0

A
A derivação consiste na substituição de um símbolo não terminal par uma regra de produção;
B
A derivação consiste na substituição de um símbolo terminal por uma regra de produção;
C
A derivação consiste na substituição de um símbolo não terminal por um símbolo terminal;
D
A derivação consiste na substituição de uma regra de produção por um símbolo terminal;
E
A derivação consiste na substituição de uma regra de produção por um símbolo não terminal.
Questão 4/5 - Compiladores
As cadeias de caracteres, ou strings são artefatos de linguagens utilizados com
frequência pelas linguagens de p rogramaçã o já que, na maior parte das vezes, se
referem a textos que desejamos ler, gua rdar ou imprimir. Contudo, sua definição formal é
mais elucidativa se consideram os sua relação com o alfabeto. Sendo assim, dadas as
opções a seguir assinale a alter nativa falsa.
Nota: 20.0
A
Uma string é uma sequência ordenada de símbolos que existem em um determinado alfabeto;
B
Considerando a string “110110011” podemos dizer que ela faz parte de um alfabeto de números
binários;
C
A string vazia faz parte de todos os alfabetos possíveis;
D
Podemos usar símbolos que não façam parte de um alfabeto para marcar o começo e o fim de
uma string;
E
Dado um alfabeto qualquer, em linguagens formais, não é possível identificar uma string utiliz ando
uma máquina de estados finitos.
Você acertou!
Em linguagens formais, as máquinas de estados finitos e as expressões regulares são duas formas eficientes
de identificar strings de um alfabeto dado.
Questão 5/5 - Compiladores
Uma das principais caracter ísticas de uma linguagem formal é a existência de uma
estrutura rígida e precisamente especificad a. As linguagens formais são utilizada s na
programação de computadores há várias década s principalmente por que sua estr utura
rígida torna o processo de compilação possível. Ainda relaciona do as linguagens formais
qual das afirmativas abaixo é verdadeira?
Nota: 0.0

A
A língua portuguesa, graças a sua gramática estruturada é um exemplo de linguagem formal;
B
As linguagens formais não podem ser definidas com o uso de máquinas de estados finitos;
C
A linguagem de programação Java constitui um exemplo de linguagem natural usada em
programação;
D
Uma das formas de definir uma linguagem formal reside no uso de expressões regulares;
A resposta correta é a letra D, o teorema de Kleene declara que só podem ser classificadas como linguagens
formais aquelas que podem ser definidas com o uso de máquinas de estados finitos e/ou expressões
regulares.
E
O Teorema de Kleene, para a definição de linguagens naturais, torna mais eficiente o processo de
interpretação em máquinas que rodem o Javascript.