Logo Passei Direto
Buscar

Teste de Conhecimento Compiladores

User badge image
Tiago Walter

em

Ferramentas de estudo

Questões resolvidas

Por melhor que seja a fórmula de hashing adotada na implementação de uma tabela de símbolos usando uma tabela hash, as colisões sempre irão ocorrer.
Quando estas ocorrem se torna necessário fazer o seu tratamento. Este tratamento pode ser realizado de várias formas e uma preocupação constante deve ser o de minimizar o tempo de resposta e poupar o espaço de armazenamento. Quanto a estes aspectos analise as afirmativas abaixo:
I. no hash aberto os símbolos que colidem são encadeados em uma lista apontada pelo slot que a fórmula calculou.
II. no endereçamento aberto é realizado um rehashing para determinar o novo slot para o símbolo que causou a colisão.
III. o hash de balde utiliza duas fórmulas de hashing para tratar a colisão.
IV. Para minimizar o espaço de armazenamento pode ser utilizada uma pilha para armazenar os símbolos que colidiram no hash aberto.
É correto o que se afirma apenas em I e III
II, III e IV
I, II e III
I, II e IV
I e II

Durante o processo de Análise o scanner lê os caracteres um por um e tenta associá-los ao padrão correspondente a algum token. Neste processo ele eventualmente pode encontrar algum padrão que não corresponda ao tokens. Nesse caso, ele deve:
Passar o erro para o analisador sintático para que este o trate.
Tentar corrigir o erro reescrevendo a parte onde foi encontrado.
Continuar a análise após realizar a recuperação do erro e anotá-lo para informação posterior.
Ignorar totalmente o erro e prosseguir a análise como se nada tivesse acontecido.
Abortar a análise e reportar imediamente o erro.

Com base nas afirmativas acima podemos concluir que: 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
As duas afirmativas são falsas
A primeira é verdadeira e a segunda falsa
As duas são corretas e a segunda justifica a primeira
As duas são corretas e a segunda não justifica a primeira
A primeira é falsa e a segunda correta

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

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

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

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

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

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

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

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

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

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

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

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

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

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

Por melhor que seja a fórmula de hashing adotada na implementação de uma tabela de símbolos usando uma tabela hash, as colisões sempre irão ocorrer.
Quando estas ocorrem se torna necessário fazer o seu tratamento. Este tratamento pode ser realizado de várias formas e uma preocupação constante deve ser o de minimizar o tempo de resposta e poupar o espaço de armazenamento. Quanto a estes aspectos analise as afirmativas abaixo:
I. no hash aberto os símbolos que colidem são encadeados em uma lista apontada pelo slot que a fórmula calculou.
II. no endereçamento aberto é realizado um rehashing para determinar o novo slot para o símbolo que causou a colisão.
III. o hash de balde utiliza duas fórmulas de hashing para tratar a colisão.
IV. Para minimizar o espaço de armazenamento pode ser utilizada uma pilha para armazenar os símbolos que colidiram no hash aberto.
É correto o que se afirma apenas em I e III
II, III e IV
I, II e III
I, II e IV
I e II

Durante o processo de Análise o scanner lê os caracteres um por um e tenta associá-los ao padrão correspondente a algum token. Neste processo ele eventualmente pode encontrar algum padrão que não corresponda ao tokens. Nesse caso, ele deve:
Passar o erro para o analisador sintático para que este o trate.
Tentar corrigir o erro reescrevendo a parte onde foi encontrado.
Continuar a análise após realizar a recuperação do erro e anotá-lo para informação posterior.
Ignorar totalmente o erro e prosseguir a análise como se nada tivesse acontecido.
Abortar a análise e reportar imediamente o erro.

Com base nas afirmativas acima podemos concluir que: 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
As duas afirmativas são falsas
A primeira é verdadeira e a segunda falsa
As duas são corretas e a segunda justifica a primeira
As duas são corretas e a segunda não justifica a primeira
A primeira é falsa e a segunda correta

Prévia do material em texto

14/04/2023, 10:20 Estácio: Alunos
https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp#ancora_10 1/7
Teste de
Conhecimento
 avalie sua aprendizagem
Por melhor que seja a fórmula de hashing adotada na implementação de uma tabela de símbolos usando uma
tabela hash, as colisões sempre irão ocorrer. 
Quando estas ocorrem se torna necessário fazer o seu tratamento. 
Este tratamento pode ser realizado de várias formas e uma preocupação constante deve ser o de minimizar o tempo
de resposta e poupar o espaço de armazenamento. 
Quanto a estes aspectos analise as a rmativas abaixo: 
I. no hash aberto os símbolos que colidem são encadeados em uma lista apontada pelo slot que
a fórmula calculou 
II. no endereçamento aberto é realizado um rehashing para determinar o novo slot para o símbolo que causou
a colisão 
III. o hash de balde utiliza duas fórmulas de hashing para tratar a colisão 
IV. Para minimizar o espaço de armazenamento pode ser utilizada uma pilha para armazenar os símbolos que
colidiram no hash aberto 
É correto o que se a rma apenas em:
COMPILADORES Lupa 
CCT0838_202203023209_TEMAS
Disc.: COMPILADORES 2023.1 EAD (G) / EX
Prezado (a) Aluno(a),
ANÁLISE SEMÂNTICA
 
1.
I e II
I e III
I, II e III
II, III e IV
I, II e IV
Data Resp.: 14/04/2023 10:15:30
14/04/2023, 10:20 Estácio: Alunos
https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp#ancora_10 2/7
Uma tabela de simbolos pode ser organizada de várias formas diferentes, cada uma com suas vantagens e
desvantagens. 
Quanto as formas de organização da tabela, avalie as a rmativas abaixo: 
I na Lista linear o algoritmo de busca exige O(n) sondagens por pesquisa, na média, onde n é o número de símbolos na
tabela. 
II Na Busca binária a pesquisa possui uma complexidade de O(n²)
III Na tabela de hash a complexidade de busca tende a ser, na média, O(1) 
IV No hashing aberto a complexidade de busca é O(Log2n) 
Com base nas a rmativas podemos concluir que estão corretas apenas
O que faz a análise léxica? 
Considere os seguintes passos da compilação: 
I. Otimização 
Explicação:
Resposta correta: I, II e IV
 
2.
II e III
I e II
III e IV
I e III
II e IV
Data Resp.: 14/04/2023 10:16:08
Explicação:
Resposta correta: I e III
O COMPILADOR
 
3.
É 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; 
Tratar erros de tipo no programa fonte; 
Lê caractere por caractere do texto encontrando sequências que constituem tokens; 
Veri ca se a estrutura gramatical do programa está correta; 
Veri ca se as estruturas do programa irão fazer sentido 4 durante a execução; 
Data Resp.: 14/04/2023 10:16:37
Explicação:
A resposta correta é: Lê caractere por caractere do texto encontrando sequências que constituem
tokens; 
 
4.
14/04/2023, 10:20 Estácio: Alunos
https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp#ancora_10 3/7
II. Análise Léxica 
III. Geração de Código 
IV. Geração de Código Intermediário 
V. Análise Semântica 
VI. Análise Sintática 
A ordem correta dos passos durante a compilação é: 
Durante o processo de Análise o scanner lê os caracteres um por um e tenta associa-los ao padrão
correspondente a algum token. 
Neste processo ele eventualmente pode encontrar algum padrão que não corresponda ao tokens.
Nesse caso, ele deve: 
Considere a seguinte especicação de tokens com sua descrição informal: 
II, V, VI, IV, I e III 
III, V, VI, IV, I e II
III, IV, V, VI, I e II 
III, IV, VI, V, I e II
II, VI, V, IV, I e III 
Data Resp.: 14/04/2023 10:17:04
Explicação:
A resposta correta é: II, VI, V, IV, I e III.
ANÁLISE LÉXICA
 
5.
Passar o erro para o analisador sintático para que este o trate.
Tentar corrigir o erro reescrevendo a parte onde foi encontrado. 
Ignorar totalmente o erro e prosseguir a análise como se nada tivesse acontecido.
Abortar a análise e reportar imediamente o erro.
Continuar a análise após realizar a recuperação do erro e anotá-lo para informação posterior.
Data Resp.: 14/04/2023 10:17:31
Explicação:
A resposta correta é: Continuar a análise após realizar a recuperação do erro e anotá-lo para
informação posterior.
 
6.
14/04/2023, 10:20 Estácio: Alunos
https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp#ancora_10 4/7
SE fosse submetida ao Analisador a seguinte expressão: 
Soma = 0; 
Soma = A + B; 
O sétimo token reconhecido e seu lexema seriam respectivamente: 
Ao realizarmos a análise sintática, podem ser detectados erros que não foram vistos durante a análise léxica.
Considerando a seguinte gramática
L: [A-Z]
D: [0-9]
Op:["+""-"]
At:["="]
Id:{L} ({L}|{D})*
Int:{D}+
Oper:{Op}
Atrib:{At}
Fc : ;
::= Id Atrib ;
::= | Id | Int;
::= Oper;
OpArit e + 
Id e Soma 
TermCom e ; 
NumInt e 0 
Id e A 
Data Resp.: 14/04/2023 10:17:59
Explicação:
A resposta correta é: Id e A 
ANÁLISE SINTÁTICA
 
7.
14/04/2023, 10:20 Estácio: Alunos
https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp#ancora_10 5/7
Qual das opções abaixo possui apenas erro sintático.
Enade 2011
Considere a gramática a seguir, em que S, A e B são símbolos não terminais, 0 e 1 são terminais e Ɛ é a cadeia vazia.
A respeito dessa gramática, analise as a rmações a seguir.
I. Nas cadeias geradas por essa gramática, o último símbolo é 1.
II. O número de zeros consecutivos nas cadeias geradas pela gramática é, no máximo, dois.
III. O número de uns em cada cadeia gerada pela gramática é maior que o número de zeros.
IV. Nas cadeias geradas por essa gramática, todos os uns estão à esquerda de todos os zeros.
É correto apenas o que se a rma em
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 a rmar
que
 O registro de ativação de E estará no topo da pilha
10 * 5;
d - 10
A = C
A = b + C;
A := 7;
Data Resp.: 14/04/2023 10:18:24
Explicação:
Resposta correta: A := 7;
 
8.
I e III
I
II
III e IV
II e IV
Data Resp.: 14/04/2023 10:18:49
Explicação:
Resposta correta: II
GERAÇÃO DE CÓDIGO
 
9.
14/04/2023, 10:20 Estácio: Alunos
https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp#ancora_10 6/7
Porque
Os registros de ativação dos diversos procedimento são empilhados na ordem inversa do retorno
Com base nas a rmativas acima podemos concluir que:
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 a rmar que o código 2 é melhor que o código 1
Porque
As duas a rmativas são falsas
A primeira é verdadeira e a segunda falsa
As duas são corretas e a segunda justica a primeira
As duas são corretas e a segunda não justica a primeira
A primeira é falsa e a segunda correta
Data Resp.: 14/04/2023 10:19:19
Explicação:
Resposta correta: A primeira é verdadeira e a segunda falsa
 
10.
14/04/2023, 10:20 Estácio: Alunos
https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp#ancora_10 7/7
Seu custo é 12 enquanto o do código 1 é 12
Com base nas a rmativas acima podemos concluir que:
 
As duas são corretas e a segunda justica a primeira
As duas são corretas e a segunda não justica a primeira
A primeira é falsa e a segunda correta
As duas a rmativas são falsas
A primeira é verdadeira e a segunda falsa
Data Resp.: 14/04/2023 10:20:01Explicação:
Respsota correta: A primeira é verdadeira e a segunda falsa
 Não Respondida Não Gravada Gravada
Exercício inciado em 14/04/2023 10:14:47.
	Página 1
	Página 2
	Página 3
	Página 4
	Página 5
	Página 6
	Página 7

Mais conteúdos dessa disciplina