Buscar

Simulado 2 Compiladores Estácio

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

Prévia do material em texto

14/04/2023, 09:14 Estácio: Alunos
https://simulado.estacio.br/bdq_simulados_avaliacao_parcial_resultado.asp?cod_hist_prova=306149118&cod_prova=61790028… 1/5
 
Meus
Simulados
Teste seu conhecimento acumulado
Disc.: COMPILADORES   
Aluno(a): TIAGO WALTER FAGUNDES 202203023209
Acertos: 10,0 de 10,0 14/04/2023
Acerto: 1,0  / 1,0
O que faz a análise léxica?  
Veri�ca se as estruturas do programa irão fazer sentido 4 durante a execução; 
Tratar erros de tipo no programa fonte;  
Veri�ca se a estrutura gramatical do programa está correta;  
É um sistema que aceita como entrada um programa escrito em uma linguagem de programação
e produz como resultado um programa equivalente em outra linguagem;  
 Lê caractere por caractere do texto encontrando sequências que constituem tokens;  
Respondido em 14/04/2023 09:09:45
Explicação:
A resposta correta é: Lê caractere por caractere do texto encontrando sequências que constituem
tokens;  
Acerto: 1,0  / 1,0
O tradutor que gera um código objeto a partir de uma linguagem de baixo nível é o :
Compilador 
 Montador 
Carregador 
Ligador 
Interpretador 
Respondido em 14/04/2023 09:10:07
Explicação:
A resposta correta é: Montador.
 Questão1
a
 Questão2
a
https://simulado.estacio.br/alunos/inicio.asp
javascript:voltar();
14/04/2023, 09:14 Estácio: Alunos
https://simulado.estacio.br/bdq_simulados_avaliacao_parcial_resultado.asp?cod_hist_prova=306149118&cod_prova=61790028… 2/5
Acerto: 1,0  / 1,0
(INSTITUTO AOCP/2019) A estrutura típica de um compilador possui 3 elementos. Assinale a alternativa que
apresenta corretamente esses elementos.
Front end, analisador, back end.
Front end, interpretador, back end.
 Front end, otimizador, back end.
Front end, compilador, base de dados.
Front end, interpretador, base de dados.
Respondido em 14/04/2023 09:10:48
Explicação:
A Compilação abrange duas grandes etapas: A Análise (front-end) e a Síntese (back-end). A etapa de Análise implica
em três passos internos: Análise Léxica, Análise Sintática e Análise Semântica. Já a etapa de Síntese é composta pela
Geração de Código Intermediário, Otimização e Geração de Código de Montagem.
Acerto: 1,0  / 1,0
(CESPE/CEBRASPE/2022 - Adaptada)
Autômatos são estruturas matemáticas que representam uma máquina de estados �nitos. Eles são usados para
modelar processos computacionais, como a validação de entradas de linguagens formais (por exemplo, veri�car
se uma string é uma sentença válida em uma dada linguagem), e para implementar algoritmos em
processamento de linguagem natural e inteligência arti�cial. Nesse sentido, o autômato �nito determinístico.
corresponde à função de transição que recebe um estado ou um símbolo de entrada que sempre retorna
um conjunto de estados como resultado.
tem a capacidade de adivinhar algo sobre sua entrada ao testar valores.
permite zero, uma ou n transições para os estados de entrada.
consegue estar em vários estados ao mesmo tempo.
 pode, para cada entrada, transitar a partir do seu estado atual em um e somente um estado.
Respondido em 14/04/2023 09:11:16
Explicação:
Um Autômato Finito Determinístico é um autômato no qual para cada estado e para cada entrada só há zero ou uma
transição possível. Existem vários tipos de autômatos, como autômatos �nitos determinísticos (DFA), autômatos
�nitos não-determinísticos (NFA), autômatos de Pilha, autômatos de Estados Múltiplos (Mealy) e autômatos de
Estados Moore. Cada tipo de autômato é adequado para uma tarefa especí�ca e é projetado para atender a
determinadas restrições computacionais e de tempo de execução.
Acerto: 1,0  / 1,0
(CESGRANRIO/2012) 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:
 Questão3
a
 Questão4
a
 Questão5
a
14/04/2023, 09:14 Estácio: Alunos
https://simulado.estacio.br/bdq_simulados_avaliacao_parcial_resultado.asp?cod_hist_prova=306149118&cod_prova=61790028… 3/5
gramática livre de contexto
 árvore sintática
árvore AVL
�uxo (stream) de tokens
gramática dirigida a sintaxe
Respondido em 14/04/2023 09:11:38
Explicação:
A Árvore Sintática é útil na análise sintática, pois permite veri�car a correta ordenação dos tokens e a estrutura da
sentença de forma visual e fácil de entender. Além disso, a Árvore Sintática pode ser usada como base para a geração
de código em outras etapas do processo de compilação.
Acerto: 1,0  / 1,0
(FCM/2018 - Adaptada) A Hierarquia de Chomsky é uma classi�cação das gramáticas formais, proposta pelo
linguista Noam Chomsky, que divide as gramáticas em 4 classes. Nesse sentido, Linguagens livres de contexto
são exatamente as linguagens que podem ser reconhecidas por:
autômatos �nitos não determinísticos.
máquinas de Turing.
expressões regulares.
autômatos �nitos determinísticos.
 autômatos com pilha.
Respondido em 14/04/2023 09:11:47
Explicação:
Autômatos com pilha (Pushdown Automata) são usados para reconhecer a linguagem livre de contexto, que é uma
classe mais ampla de linguagens do que as reconhecidas pelos autômatos �nitos. A pilha permite que o autômato
mantenha o contexto e faça escolhas não-determinísticas.
Acerto: 1,0  / 1,0
(IBGE/2010) Ao realizar testes durante a elaboração de um compilador, um analista descobriu que havia, no
compilador, um erro na checagem de tipos de variáveis em expressões, permitindo, por exemplo, a multiplicação
entre tipos de dados que não poderiam ocorrer. Em compiladores, a checagem de tipos de variáveis em
expressões é uma função do:
otimizador de código.
analisador léxico.
linker.
scanner.
 analisador semântico.
Respondido em 14/04/2023 09:12:24
Explicação:
A análise semântica é responsável por veri�car a validade da semântica do programa, incluindo a checagem de tipos
de variáveis em expressões. Ela tem como objetivo identi�car erros de semântica, tais como operações inválidas com
 Questão6
a
 Questão7
a
14/04/2023, 09:14 Estácio: Alunos
https://simulado.estacio.br/bdq_simulados_avaliacao_parcial_resultado.asp?cod_hist_prova=306149118&cod_prova=61790028… 4/5
tipos de variáveis diferentes, declarações duplicadas de variáveis, etc. Por isso, é o analisador semântico que está
responsável por detectar o erro mencionado na questão.
Acerto: 1,0  / 1,0
(PC-DF/2012) Com relação aos softwares básicos envolvidos no processo de transformação de um programa
escrito em linguagem de alto nível para um código executável ou interpretado, assinale a alternativa correta.
Os link-editores são usados para resolver as referências aos símbolos internos de um programa,
produzindo um código-objeto simpli�cado.
Compilação e montagem são processos semelhantes; contudo, o processo de montagem é bem mais
complexo.
 No processo de análise semântica da compilação, é veri�cada a consistência dos tipos de variáveis
envolvidas em operações aritméticas.
No processo de compilação, o analisador léxico e o sintático estão preocupados com a semântica e os
signi�cados dos programas como um todo.
Os montadores buscam referências externas em rotinas de bibliotecas e inserem-nas no código-objeto.
Respondido em 14/04/2023 09:12:50
Explicação:
A análise semântica é uma das etapas do processo de compilação. Ela tem como objetivo veri�car a correção
semântica do código-fonte, incluindo a consistência dos tipos de variáveis envolvidos em operações aritméticas. Esse
processo veri�ca se o código está sendo usado corretamente de acordo com as regras da linguagem.
Acerto: 1,0  / 1,0
Procedimentos são rotinas que complementam as funcionalidades de um programa.
Quando um procedimento é chamado um Registro de Ativação é criado e colocado na pilha.
Neste registro são armazenadas a variáveis locais, o contexto e os parametrosdo procedimento.
Com base nisso considere a seguinte expressão onde p1 e p2 são funções
x = p1 (a,p2(b));
Sabendo-se que o código abaixo mostra a implementação do trecho em código intermediário em que ?1, ?2, ?3 e
?4 representam partes faltantes do código .
 
param a
param b
_t1 := call ?1, ?2
param _t1
x := call ?3, ?4
 
Quais seriam os valores de ?1, ?2, ?3 e ?4 respectivamente?
p2 - 2 - p1 - 1
 p2 - 1 - p1 - 2
 Questão8
a
 Questão9
a
14/04/2023, 09:14 Estácio: Alunos
https://simulado.estacio.br/bdq_simulados_avaliacao_parcial_resultado.asp?cod_hist_prova=306149118&cod_prova=61790028… 5/5
p2 - 2 - p1 - 2
p1 - 1 - p2 - 2
p1 - 2 - p2 - 1
Respondido em 14/04/2023 09:13:20
Explicação:
Resposta correta: p2 - 1 - p1 - 2
Acerto: 1,0  / 1,0
Existem varios tipos de representações intermediárias tanto gra�cas como textuais.
Durante a fase de síntese a Geração de Código Intermediário irá transformar o resultado da fase de análise em
uma outra representação.
Uma das formas de representação intermediária é a notação pos�xa.
Considerando a seguinte expressão em notação in�xa (a+b)*(c+d)
qual seria a notação pos�xa correspondente?
a b * c d + +
 a b + c d + *
a b * + c d +
a b + c d * +
a b + * c d +
Respondido em 14/04/2023 09:13:54
Explicação:
Resposta correta: a b + c d + *
 Questão10
a

Continue navegando