Buscar

Compiladores e Autômatos

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

1a 
 Questão 
Acerto: 1,0 / 1,0 
 
Os compiladores são responsáveis por abstrair a complexidade da programação e 
proporcionar uma vida mais tranquila para os desenvolvedores. Sobre a análise 
léxica e sintática executadas pelos compiladores, assinale a opção correta. 
 
 
Os analisadores léxico e sintático somente se comunicam via tabela 
de simbolos. 
 
O analisador sintático processa diretamente o programa fonte a procura de 
erros. 
 
Técnicas para análise léxica são mais complexas do que as necessárias 
para a análise sintática. 
 
Um analisador léxico serve como o passo final de um analisador sintático. 
 Um analisador léxico gera a entrada para o analisador sintático. 
Respondido em 06/06/2023 22:06:42 
 
Explicação: 
O analisador léxico realiza o primeiro passo da etapa de análise da compilação. Uma de 
suas responsabilidades é gerar a entrada para o analisador sintático. 
 
 
2a 
 Questão 
Acerto: 1,0 / 1,0 
 
O tradutor que gera um código objeto a partir de uma linguagem de baixo nível é 
o : 
 
 
Interpretador 
 
Ligador 
 
Compilador 
 Montador 
 
Carregador 
Respondido em 06/06/2023 22:06:50 
 
Explicação: 
A resposta correta é: Montador. 
 
 
3a 
 Questão 
Acerto: 1,0 / 1,0 
 
 O GALS é um gerador de analisadores léxicos que a partir de expressões 
regulares cria um autômato finito determinístico que as analisa. 
Para que possa funcionar ele deve ter os seus tokens especificados. 
Como seria a especificação do token no GALS para 
identificadores (Id) formados pela primeira letra maiúscula sendo seguido de pelo 
menos uma ou mais letras minúsculas deverá existir pelo menos um letra? 
 
 Id:[A-Z] [a-z]+. 
 
Id:[A-Z]* 
 
Id:[a-z]+ 
 
Id: [A-Za-z]+ 
 
Id:[A-Z] [a-z]*. 
Respondido em 07/06/2023 00:33:55 
 
Explicação: 
A resposta correta é: Id:[A-Z] [a-z]+. 
 
 
4a 
 Questão 
Acerto: 1,0 / 1,0 
 
(CESPE/CEBRASPE/2022 - Adaptada) 
Autômatos são estruturas matemáticas que representam uma máquina de estados 
finitos. Eles são usados para modelar processos computacionais, como a validação 
de entradas de linguagens formais (por exemplo, verificar se uma string é uma 
sentença válida em uma dada linguagem), e para implementar algoritmos em 
processamento de linguagem natural e inteligência artificial. Nesse sentido, o 
autômato finito determinístico. 
 
 pode, para cada entrada, transitar a partir do seu estado atual em um e 
somente um estado. 
 
consegue estar em vários estados ao mesmo tempo. 
 
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. 
Respondido em 06/06/2023 23:59:08 
 
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 finitos determinísticos (DFA), autômatos finitos 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ífica e é projetado para 
atender a determinadas restrições computacionais e de tempo de execução. 
 
 
5a 
 Questão 
Acerto: 1,0 / 1,0 
 
ANO: 2010 BANCA: CESPE ÓRGÃO: INMETRO PROVA: PESQUISADOR - 
CIÊNCIAS DA COMPUTAÇÃO 
Considere que, em uma linguagem de programação hipotética, um comando 
condicional IF exija o uso de THEN, representando a cláusula então. Nesse caso, se 
a instrução THEN não for usada no código fonte, uma resposta do compilador na 
identificação do erro de programação estará 
 
 
no nível léxico 
 
no nível semântico 
 
no nível lógico 
 
nos níveis sintático e semântico, ao mesmo tempo 
 no nível sintático 
Respondido em 06/06/2023 23:40:18 
 
Explicação: 
Resposta correta: no nível sintático 
 
 
6a 
 Questão 
Acerto: 1,0 / 1,0 
 
Uma gramática é uma descrição formal de uma linguagem, composta por regras que 
determinam como as sentenças são formadas na linguagem. O que são símbolos 
terminais em uma gramática formal? 
 
 
Símbolos que representam operações matemáticas ou lógicas. 
 
Símbolos que representam estruturas de dados como listas, árvores ou 
grafos. 
 
Símbolos que representam conjuntos de regras da gramática. 
 Símbolos que representam unidades sintáticas indivisíveis da linguagem 
descrita pela gramática. 
 
Símbolos que representam estruturas sintáticas compostas, formadas por 
outros símbolos. 
Respondido em 07/06/2023 00:54:46 
 
Explicação: 
Em uma gramática formal, símbolos terminais são os símbolos que representam as 
unidades sintáticas indivisíveis da linguagem descrita pela gramática. Esses símbolos não 
podem ser derivados a partir de outros símbolos e são usados para formar as sentenças 
válidas da linguagem. Por exemplo, em uma gramática para a linguagem portuguesa, os 
símbolos terminais poderiam ser as palavras da linguagem, como "gato", "cachorro", "corre". 
 
 
7a 
 Questão 
Acerto: 1,0 / 1,0 
 
As árvores de sintaxe são a forma mais comum de representação intermediária 
gráfica. Dentre estas árvores temos as de Derivação, Sintática e Derivação Anotada. 
Com relação a estas árvores avalie as afirmativas abaixo: 
I. Decorar uma árvore é o ato de, durante a fase de parser, realizar a associação dos 
símbolos aos seus atributos na árvore de derivação. 
II. A Árvore Sintática é obtida eliminando-se os nós referentes aos símbolos não 
terminais na árvore de derivação. 
III. A árvore de Derivação possui em suas folhas apenas símbolos não terminais. 
Podemos afirmar que está correto o que se afirma apenas em: 
 
 
II e III 
 
II 
 I e II 
 
III 
 
I e III 
Respondido em 06/06/2023 23:47:01 
 
Explicação: 
Resposta correta: I e II. 
A ideia básica é eliminar todos os nós com símbolos não terminais, mantendo apenas os 
nós com símbolos terminais. 
Na árvore de Derivação, cada nó é rotulado por um símbolo da gramática, sendo que os 
símbolos terminais aparecem nas folhas e os não terminais, nas raízes das subárvores. 
 
 
 
8a 
 Questão 
Acerto: 0,0 / 1,0 
 
Apesar de ser considerada o terceiro passo da etapa de análise, a Análise Semântica 
é normalmente realizada de forma concomitante com a Análise Sintática, sendo que 
o parser vai executar as ações semânticas estabelecidas para as produções da 
gramática. 
A respeito da situação descrita podemos afirmar que: 
I. Quando um esquema de tradução não produz efeitos colaterais ele é chamado de 
Gramática de Atributos. 
II. O Esquema de Tradução corresponde a uma restrição aplicada a Gramática Livre 
de Contexto (GLC) que define a linguagem de programação. 
III. A Tradução Dirigida por Sintaxe é a técnica que permite realizar a Análise 
Semântica de forma concomitante com a análise sintática. 
É correto o que se afirma apenas em: 
 
 I e III 
 
I e II 
 
III 
 II e III 
 
I 
Respondido em 07/06/2023 00:17:29 
 
Explicação: 
Resposta correta: II e III 
 
 
9a 
 Questão 
Acerto: 0,0 / 1,0 
 
Um programa pode ter parte de sua funcionalidade implementada por um 
procedimento. Procedimentos são normalmente compilados a parte e depois ligados 
ao código principal. Quando um procedimento é chamado é criado para ele um 
Registro de Ativação que possui informações de contexto, suas variáveis locais, 
parâmetros etc. 
Com base nisso se um procedimento G chama um procedimento D que chama um 
procedimento E podemos afirmar que 
 O registro de ativação de E estará no topo da pilha 
Porque 
Os registros de ativação dos diversos procedimento são empilhados na ordem 
inversa do retorno 
Com base nas afirmativas acima podemos concluir que: 
 
 
As duas são corretas e a segunda não justifica a primeira 
 A primeiraé verdadeira e a segunda falsa 
 
As duas afirmativas são falsas 
 
A primeira é falsa e a segunda correta 
 As duas são corretas e a segunda justifica a primeira 
Respondido em 07/06/2023 00:51:34 
 
Explicação: 
Resposta correta: A primeira é verdadeira e a segunda falsa 
 
 
10a 
 Questão 
Acerto: 0,0 / 1,0 
 
Para determinar qual código é mais otimizado podemos utilizar uma métrica que calcule o 
custo de cada opção e determinar qual é o mais otimizado, ou seja qual tem o menor custo. 
Considere um processador com o seguinte conjunto de instruções: 
 
Sabendo que a métrica utilizada gera um custo de 1 para instruções que não acessam a 
memória RAM e um custo de 2 para as que não acessam analise os trechos de código abaixo 
 
Como base na análise podemos afirmar que o código 2 é melhor que o código 1 
Porque 
Seu custo é 12 enquanto o do código 1 é 12 
Com base nas afirmativas acima podemos concluir que: 
 
 
 
As duas são corretas e a segunda justifica a primeira 
 As duas afirmativas são falsas 
 
As duas são corretas e a segunda não justifica a primeira 
 A primeira é verdadeira e a segunda falsa 
 
A primeira é falsa e a segunda correta 
Respondido em 07/06/2023 00:50:41 
 
Explicação: 
Respsota correta: A primeira é verdadeira e a segunda falsa

Mais conteúdos dessa disciplina