Logo Passei Direto
Buscar

AV1 COMPILADORES

User badge image
Fernandes

em

Ferramentas de estudo

Questões resolvidas

O que faz a análise léxica?

Tratar erros de tipo no programa fonte;
Verifica 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;
Verifica se as estruturas do programa irão fazer sentido durante a execução;
Lê caractere por caractere do texto encontrando sequências que constituem tokens;

Considerando a ciência da criação de um compilador, há vários objetos que são importantes para o processo de compilação. Esse é um componente importante para o processo e representa uma estrutura de dados que contém um registro para cada nome de variável, com campos para os atributos do nome. Assinale a alternativa que apresenta o nome desse componente.


Tabela de Símbolos.
Árvore de Sintaxe.
Ligador (Linker).
Fluxo de tokens.
Otimizador de código.

Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

Questões resolvidas

O que faz a análise léxica?

Tratar erros de tipo no programa fonte;
Verifica 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;
Verifica se as estruturas do programa irão fazer sentido durante a execução;
Lê caractere por caractere do texto encontrando sequências que constituem tokens;

Considerando a ciência da criação de um compilador, há vários objetos que são importantes para o processo de compilação. Esse é um componente importante para o processo e representa uma estrutura de dados que contém um registro para cada nome de variável, com campos para os atributos do nome. Assinale a alternativa que apresenta o nome desse componente.


Tabela de Símbolos.
Árvore de Sintaxe.
Ligador (Linker).
Fluxo de tokens.
Otimizador de código.

Prévia do material em texto

Acerto: 0,2 / 0,2
O que faz a análise léxica? 
Tratar erros de tipo no programa fonte; 
Verifica 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; 
Verifica se as estruturas do programa irão fazer sentido 4 durante a execução; 
 Lê caractere por caractere do texto encontrando sequências que constituem tokens; 
Respondido em 02/10/2023 19:21:32
Explicação:
A resposta correta é: Lê caractere por caractere do texto encontrando sequências que constituem
tokens; 
Acerto: 0,2 / 0,2
Considerando a ciência da criação de um compilador, há vários objetos que são importantes para o
processo de compilação. Esse é um componente importante para o processo e representa uma estrutura de
dados que contém um registro para cada nome de variável, com campos para os atributos do nome.
Assinale a alternativa que apresenta o nome desse componente.
 Tabela de Símbolos.
Árvore de Sintaxe.
Ligador (Linker).
Fluxo de tokens.
Otimizador de código.
Respondido em 02/10/2023 19:24:12
Explicação:
A tabela de símbolos é uma estrutura de dados utilizada pelo compilador para armazenar informações sobre
nomes de variáveis, constantes, funções, etc. presentes no código fonte. Ela é construída durante a fase de
análise sintática e mantida atualizada ao longo do processo de compilação. A tabela de símbolos é importante
pois permite ao compilador realizar verificações de semântica, alocação de memória, geração de código objeto,
entre outras tarefas.
Acerto: 0,2 / 0,2
(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:
árvore AVL
 árvore sintática
gramática livre de contexto
fluxo (stream) de tokens
 Questão1a
 Questão2a
 Questão3a
gramática dirigida a sintaxe
Respondido em 02/10/2023 19:25:42
Explicação:
A Árvore Sintática é útil na análise sintática, pois permite verificar 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: 0,2 / 0,2
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:
I e III
II
III
 I e II
II e III
Respondido em 02/10/2023 19:26:41
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.
 
Acerto: 0,2 / 0,2
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
 Questão4a
 Questão5a
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 é falsa e a segunda correta
 A primeira é verdadeira e a segunda falsa
As duas são corretas e a segunda justifica a primeira
As duas afirmativas são falsas
Respondido em 02/10/2023 19:31:03
Explicação:
Resposta correta: A primeira é verdadeira e a segunda falsa
Acerto: 0,2 / 0,2
(ITEP - RN/2018 - Adaptada) Sobre o funcionamento e as características dos compiladores e
interpretadores, assinale a alternativa correta.
O interpretador converte o código todo para um código-objeto. Esse código objeto é uma tradução
do código para uma linguagem que o computador entende.
 Uma vez que um compilador gera com sucesso um código-objeto, este último pode ser executado
diretamente pelo computador.
O código-objeto é a entrada para o compilador, o qual compila esse código-objeto gerando um
arquivo binário.
Um compilador lê, linha por linha, o código do programa, executando a instrução específica de cada
linha.
O código-objeto é a entrada para o interpretador, o qual executa o programa.
Respondido em 02/10/2023 19:32:50
Explicação:
Um compilador gera um código-objeto a partir do código fonte, que pode ser executado diretamente pelo
computador após ser gerado com sucesso. O código-objeto é uma versão traduzida do programa em uma
linguagem de baixo nível compreendida pelo computador.
Acerto: 0,2 / 0,2
(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.
permite zero, uma ou n transições para os estados de entrada.
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.
 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.
 Questão6a
 Questão7a
Respondido em 02/10/2023 19:34:24
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.
Acerto: 0,2 / 0,2
Autômatos finitos são equivalentes a gramáticas livres de contexto. O que são gramáticas livres de contexto
(GLC)?
Gramáticas que descrevem linguagens regulares.
Gramáticas que descrevem linguagens ambíguas.
Gramáticas que descrevem apenas frases curtas e simples.
 Gramáticas que não dependem do contexto em que a frase ou palavra é usada.
Gramáticas que descrevem apenas linguagens formais.
Respondido em 02/10/2023 19:35:43
Explicação:
As gramáticas livres de contexto (GLC) são gramáticas formais que descrevem a estrutura sintática de uma
linguagem sem considerar o contexto em que as palavras ou frases são usadas. Isso significa que as regras da
GLC determinam a estrutura sintática de uma frase independentemente do significado das palavras ou do
contexto em que elas são usadas.
Acerto: 0,2 / 0,2
(PEFOCE/2012 - Adaptada) Levando em consideração o processo de compilação, avalie as assertivas a
seguir:
I. A tabela de símbolos utilizada no processo de compilação contém informações sobre tipose atributos de
cada nome definido pelo usuário no programa.
II. Essas informações são colocadas na tabela de símbolos pelos analisadores léxico e sintático e usadas
pelo analisador semântico e pelo gerador de código.
III. Compiladores são ferramentas de software que convertem código fonte escrito em uma linguagem de
programação para código de máquina, que pode ser executado pelo computador.
Marque a alternativa correta.
III, apenas.
II, apenas.
 I, II e III.
I, apenas.
I e II, apenas.
Respondido em 02/10/2023 19:37:26
Explicação:
 Questão8a
 Questão9a
Compiladores são ferramentas de software que convertem código fonte escrito em uma linguagem de
programação para código de máquina, que pode ser executado pelo computador. O processo de compilação inclui
verificação de erros sintáticos e semânticos no código fonte e geração de um arquivo executável que contém
instruções que o processador do computador entende.
Acerto: 0,2 / 0,2
Variáveis são espaços de memória que são usados para armazenar dados ou informações em um programa
de computador. Elas têm um nome (ou identificador) que é usado para acessá-las e podem ter diferentes
tipos de dados associados a elas, como números, strings de texto, booleanos, entre outros. Avalie o código
abaixo escrito em linguagem C
Onde as variáveis float nota1, nota2 seriam alocadas?
No heap.
 Na área de dados estáticos.
No código-objeto.
Na fila.
Na memória secundária.
Respondido em 02/10/2023 19:41:09
Explicação:
As variáveis float nota1 e nota2 são variáveis globais e estão declaradas fora da função principal. Sendo assim,
elas serão alocadas na área de dados estáticos.
 Questão10a

Mais conteúdos dessa disciplina