Buscar

Técnicas de Compilação

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 6 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 6 páginas

Prévia do material em texto

22/11/2022 22:40 EPS
https://simulado.estacio.br/alunos/ 1/6
JULIO CESAR DE SOUZA LIMA
Avaliação AV
202209217897 POLO CENTRO - NILÓPOLIS - RJ
 avalie seus conhecimentos
1 ponto
Atualmente o JAVA passou a utilizar uma segunda fase de compilação para acelerar a
execução. Está técnica é denominada: 
 (Ref.: 202213230237)
1 ponto
O componente do processo de tradução que a partir dos programas objetos gera o módulo
de carga é o: 
 (Ref.: 202213230236)
1 ponto
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. 
Disc.: CCT0838 - COMPILADORES Período: 2022.3 EAD (G)
Aluno: JULIO CESAR DE SOUZA LIMA Matr.: 202209217897
Prof.: ROBSON LORBIESKI Turma: 9001
Lupa VERIFICAR E ENCAMINHAR
Prezado(a) Aluno(a),
Responda a todas as questões com atenção. Somente clique no botão FINALIZAR PROVA ao ter certeza de que respondeu a
todas as questões e que não precisará mais alterá-las. 
A prova será SEM consulta. O aluno poderá fazer uso, durante a prova, de uma folha em branco, para rascunho. Nesta folha
não será permitido qualquer tipo de anotação prévia, cabendo ao aplicador, nestes casos, recolher a folha de rascunho do aluno.
Valor da prova: 10 pontos.
 
1.
Linkedição
JIT
Bytecode
Montagem
JVM
 
 
2.
Interpretador 
Carregador 
Montador 
Ligador 
Compilador 
 
 
3.
javascript:voltar();
javascript:diminui();
javascript:aumenta();
22/11/2022 22:40 EPS
https://simulado.estacio.br/alunos/ 2/6
Considere o diagrama de Sintaxe abaixo:
Que expressão regular faria exatamente a mesma definição no GALS? 
 (Ref.: 202213230365)
1 ponto
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? 
 (Ref.: 202213230359)
Inteiro : [0-9]+ 
Inteiro : [0-9]* 
Inteiro : [Digito]*
Inteiro : [0-9]? 
Inteiro : [Digito]+ 
 
 
4. Σ δ
Σ
δ
∈
22/11/2022 22:40 EPS
https://simulado.estacio.br/alunos/ 3/6
1 ponto
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:
 (Ref.: 202213232201)
 
 
5.
Somente em I
Somente em II
Em I e III
Em II e III
Em I e II
 
22/11/2022 22:40 EPS
https://simulado.estacio.br/alunos/ 4/6
1 ponto
Na implementação de Analisadores Sintáticos Descendentes Preditivo, é criada uma tabela para determinar que
produção utilizar em função do símbolo não terminal no topo da pilha e do símbolo que está sendo lido na entrada.
Para auxiliar no trabalho de criação da tabela, são definidos dois conjuntos o First e o Follow
Considere a seguinte gramática
X→abY|c
Y→dY|ε
Z→e
Qual seria o conjunto Follow para o não terminal X?
 (Ref.: 202213232216)
1 ponto
As árvores como representações intermediárias gráficas são muito utilizadas para armazenar informações que
auxiliam na execução dos passos da etapa de análise da compilação. 
Quanto a estes aspectos podemos afirmar que: 
Arvores de Derivação Anotadas prestam um auxílio valioso à Análise Semântica 
Porque 
Como seus nós possuem atributos associados podem ser validados quanto a vários aspectos, por exemplo, o tipo
de variáveis. 
Com base nas afirmativas acima podemos concluir que:
 (Ref.: 202213231870)
1 ponto
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. 
IV. Código de três endereços possuem o formato básico r ← x op y 
Estão corretas apenas as afirmativas:
 (Ref.: 202213231874)
 
6.
{ε}
{$}
{c}
{b}
{a}
 
 
7.
As duas são corretas e a segunda não justifica a primeira
As duas afirmativas são falsas
A primeira é falsa e a segunda correta
As duas são corretas e a segunda justifica a primeira
A primeira é verdadeira e a segunda falsa
 
 
II e III
I e IV
I, II e IV
I, II e III
II, III e IV {ε} 
javascript:check();regrava('8','V8MLP96A33992188','3992188','2','1');
22/11/2022 22:40 EPS
https://simulado.estacio.br/alunos/ 5/6
1 ponto
O produto final da etapa de síntese do compilador é o código de montagem que será submetido ao montador para
gerar o módulo objeto.
Em seu trabalho o montador deve, entre outras coisas, determinar os endereços em memória das instruções , dos
rótulos e das variáveis.
Considere o trecho de código abaixo:
Sabendo-se que VALOR e RESULTADO tiveram seus endereços determinados nesta ordem, na tabela de símbolos
seus endereços seriam respectivamente
 (Ref.: 202213232807)
1 ponto
A montagem e a ligação são as últimas etapas na criação de um programa executável. A partir deste instante o
programa fica disponível para ser executado e quando o usuário solicitar que ele rode o Carregador irá alocá-lo na
memória.
Várias técnicas foram desenvolvidas para realizar tanto a ligação como o carregamento.
Dentro deste contexto analise as afirmativas abaixo:
 
I Na montagem e carregamento combinados não é criado o módulo objeto
II Carregamento e Ligação Dinâmicos sempre ocorrem em tempo de execução
III Carregador de ligação direta usam relocação de código
 
É verdadeiro o que se afirma em:
 (Ref.: 202213232800)
 
 
9.
$1000 e $3000
$3000 e $3001
$1001 e $1000
$1000 e $1001
$3001 e $3000
 
 
10.
I e II
I e III
Somente I
Somente II
I, II e III
 
 
 
22/11/2022 22:40 EPS
https://simulado.estacio.br/alunos/ 6/6
VERIFICAR E ENCAMINHAR
 
 
 
 Não respondida Não gravada Gravada
 
 
 
 
javascript:abre_colabore();

Outros materiais