Buscar

Av Compiladores

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

ENSINEME: ANÁLISE LÉXICA 
 
 
 1. Ref.: 3990673 Pontos: 1,00 / 1,00 
 
Autômatos Finitos são definidos por uma quíntupla (Q, ΣΣ, δδ, q0, F) 
onde: 
• Q é o conjunto finito de estados, 
• ΣΣ é o conjunto finito de símbolos de entrada, 
• δδ é a função de transição, 
• q0 é o estado inicial (q0 ∈∈ Q - o estado inicial é apontado por 
uma seta) 
• F o conjunto de estados finais ou de aceitação ( um estado inicial 
também pode ser final). 
 
E podem ser representados por grafos ou de forma tabular considere o 
seguinte grafo: 
 
Qual seria a sua representação tabular? 
 
 
 
 
 
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203990673.');
 
 
 
 
 
 
 
 
 2. Ref.: 3990679 Pontos: 1,00 / 1,00 
 
Diagramas de Sintaxe são forma gráficas e alternativas para representar 
as especificações de tokens, sem precisa recorrer as Expressões 
Regulares ao BNF. 
Considere o diagrama de Sintaxe abaixo: 
 
Que expressão regular faria exatamente a mesma definição no GALS? 
 
 Inteiro : [0-9]+ 
 Inteiro : [Digito]* 
 Inteiro : [Digito]+ 
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203990679.');
 Inteiro : [0-9]* 
 Inteiro : [0-9]? 
 
 
 
 
ENSINEME: ANÁLISE SEMÂNTICA 
 
 
 3. Ref.: 3992182 Pontos: 1,00 / 1,00 
 
As representações intermediárias gráficas se prestam a representar vários aspectos 
analisados do programa fonte. Cada uma delas possui características distintas e se 
prestam a uma determinada finalidade. 
A figura a seguirbaixo: corresponde a que tipo de representação intermediária gráfica? 
 
 
 
Arvore de Derivação 
 
Árvore Semântica 
 
Árvore de Derivação anotada 
 
Grafo de Dependência 
 Grafo acíclico direcionado 
 
 
 4. Ref.: 3992188 Pontos: 1,00 / 1,00 
 
As representações intermediárias lineares são utilizadas para produzir o resultado da 
Análise Semântica. 
As respeito destas representações analise as seguintes afirmativas: 
I. Código de máquina de pilha é um exemplo de código de um endereço 
II. Códigos de um endereço utilizam nomes implícitos 
III. Códigos de dois endereços não utilizam operações destrutivas. 
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203992182.');
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203992188.');
IV. Código de três endereços possuem o formato básico r ← x op y 
Estão corretas apenas as afirmativas: 
 
 I, II e IV 
 
II e III 
 
II, III e IV {ε} 
 
I e IV 
 
I, II e III 
 
 
 
 
ENSINEME: ANÁLISE SINTÁTICA 
 
 
 5. Ref.: 3992515 Pontos: 1,00 / 1,00 
 
Gramáticas Livres de Contexto se prestam à definição de Linguagens de programação. 
Porém, a existência de ambiguidade gera o problema do não determinismo para o parser, 
já que permite a criação de duas árvores sintáticas distintas para o mesmo comando. 
Considere as seguintes gramáticas 
I - A → A + A | A − A | a 
II -E → E + E | E → E * E | E → b 
III - S → S + T | S → T | T → T * F | F → c 
Existe ambiguidade: 
 
 Em I e II 
 
Somente em II 
 
Em II e III 
 
Somente em I 
 
Em I e III 
 
 
 6. Ref.: 3992462 Pontos: 1,00 / 1,00 
 
ANO: 2012 BANCA: CESGRANRIO ÓRGÃO: TRANSPETRO PROVA: ANALISTA DE SISTEMAS 
- INFRAESTRUTURA DE TI 
Um compilador é um programa que executa vários passos, dentre os quais o de analisar 
uma sequência de entrada para determinar sua estrutura gramatical segundo uma 
determinada gramática formal. 
O resultado típico dessa análise é uma estrutura conhecida como: 
 
 
Fluxo (stream) de tokens 
 
Gramática livre de contexto 
 Árvore sintática 
 
Gramática dirigida a sintaxe 
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203992515.');
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203992462.');
 
Árvore AVL 
 
 
 
 
ENSINEME: GERAÇÃO DE CÓDIGO 
 
 
 7. Ref.: 3993018 Pontos: 1,00 / 1,00 
 
As áreas em que se divide a memória do programa podem ser de tamanho fixo ou 
variável. As de tamanho fixo lidam normalmente com variáveis escalares e linhas de 
código, já as de tamanho variável são normalmente auxiliares para a execução do 
programa armazenando dados de tamanho variável etc. 
Dentre as áreas do programa duas delas crescem em direção uma da outra. 
Quais são elas? 
 
 
Memória livre e heap 
 
Pilha e memória livre 
 Pilha e heap 
 
Área de dados e pilha 
 
Área de dados e heap 
 
 
 8. Ref.: 3993004 Pontos: 1,00 / 1,00 
 
A alocação adequada de memória para a execução do programa é fundamental para que 
ele tenha um bom desempenho. 
A memória utilizada pelo programa é dividida em várias parte sendo cada uma delas mais 
adequada para um determinado uso. 
As áreas em que um programa é normalmente divido são 
I Área de Código Objeto 
II Área de Dados Estática 
III Heap 
IV Pilha 
Dentre estas a alocação estática é utilizada nas áreas: 
 
 
I e III 
 I e II 
 
III e IV 
 
II e III 
 
II e IV 
 
 
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203993018.');
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203993004.');
 
 
ENSINEME: O COMPILADOR 
 
 
 9. Ref.: 3990558 Pontos: 1,00 / 1,00 
 
Considere o extrato abaixo referente a especificação de um linguagem de 
programação 
::= inteiro | real | string 
 
declaração_variavel::= [ {, } ]; 
::= inteiro | real | string 
::= + |- | * | / 
::= {L} + {L}|{D} 
::= {D}+ 
::= {D} + [.{D}+] | .{D} 
::= ´{C}´ 
L ::= A..Z a..z 
D ::= 0..9 
 
Se a seguinte declaração fosse escrita que tipo de erro seria gerado 
Inteiro AB+, B, C 
 
 Léxico 
 Semântico 
 Execução 
 Sintático 
 Lógico 
 
 
 10. Ref.: 7674284 Pontos: 0,00 / 1,00 
 
(EMPREL/2019 - Adaptada) Qual é o componente de um compilador que lê um fluxo de 
entrada (caracteres) e produz um fluxo de saída que contém palavras das quais cada uma 
é rotulada com sua categoria sintática, equivalente a uma classe gramatical da palavra na 
linguagem do programa fonte? 
 
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203990558.');
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%207674284.');
 Gerador de Código Intermediário. 
 
Otimizador. 
 Analisador Léxico. 
 
Analisador Sintático. 
 
Analisador Semântico.

Mais conteúdos dessa disciplina