Logo Passei Direto
Buscar

Compiladores AV2 - NOTA 10

Ferramentas de estudo

Passei Direto Aniversário

Quer receber 70% de desconto para assinar o PasseIA?

Questões resolvidas

Um compilador está verificando se uma variável foi declarada somente uma vez, se foi declarada antes do seu primeiro uso, se foi declarada e nunca foi usada e se os tipos de dados em uma expressão aritmética são compatíveis. Essas verificações são realizadas na fase de:
análise léxica.
otimização do código
análise sintática.
análise semântica.
geração do código.

Considere a seguinte especificação de tokens com sua descrição informal: SE fosse submetida ao Analisador a seguinte expressão: Soma = 0; Soma = A + B;
O sétimo token reconhecido e seu lexema seriam respectivamente:
TermCom e ;
NumInt e 0
OpArit e +
Id e A
Id e Soma

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.

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 afirmacoes a seguir.
É correto apenas o que se afirma em
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.
I
III e IV
II e IV
II
I e III

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; Qual das opções abaixo possui apenas erro sintático.
A = C
10 * 5;
d - 10
A = b + C;
A := 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 afirmativas 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)
I e III
II e III
III e IV
II e IV
I e II

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.
III
II e III
I
I e III
I e II

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
A primeira é falsa e a segunda correta
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
As duas são corretas e a segunda justifica a primeira

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Questões resolvidas

Um compilador está verificando se uma variável foi declarada somente uma vez, se foi declarada antes do seu primeiro uso, se foi declarada e nunca foi usada e se os tipos de dados em uma expressão aritmética são compatíveis. Essas verificações são realizadas na fase de:
análise léxica.
otimização do código
análise sintática.
análise semântica.
geração do código.

Considere a seguinte especificação de tokens com sua descrição informal: SE fosse submetida ao Analisador a seguinte expressão: Soma = 0; Soma = A + B;
O sétimo token reconhecido e seu lexema seriam respectivamente:
TermCom e ;
NumInt e 0
OpArit e +
Id e A
Id e Soma

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.

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 afirmacoes a seguir.
É correto apenas o que se afirma em
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.
I
III e IV
II e IV
II
I e III

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; Qual das opções abaixo possui apenas erro sintático.
A = C
10 * 5;
d - 10
A = b + C;
A := 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 afirmativas 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)
I e III
II e III
III e IV
II e IV
I e II

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.
III
II e III
I
I e III
I e II

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
A primeira é falsa e a segunda correta
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
As duas são corretas e a segunda justifica a primeira

Prévia do material em texto

17/11/2022 10:58 Estácio: Alunos
https://simulado.estacio.br/alunos/ 1/7
 
Meus
Simulados
Teste seu conhecimento acumulado
 
Disc.: COMPILADORES 
Aluno(a): EDUARDO CÉSAR MAIA MOREIRA OLIVEIRA 202003315371
Acertos: 10,0 de 10,0 01/11/2022
 
 
Acerto: 1,0 / 1,0
Um compilador está verificando se uma variável foi declarada somente uma vez, se foi
declarada antes do seu primeiro uso, se foi declarada e nunca foi usada e se os tipos
de dados em uma expressão aritmética são compatíveis. Essas verificações são
realizadas na fase de:
análise sintática.
análise léxica.
otimização do código
geração do código.
 análise semântica.
Respondido em 01/11/2022 10:40:20
 
 
Explicação:
A resposta correta é: análise semântica.
 
 
Acerto: 1,0 / 1,0
Considere os seguintes passos da compilação: 
I. Otimização 
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 é: 
III, V, VI, IV, I e II
 Questão1
a
 Questão2
a
https://simulado.estacio.br/alunos/inicio.asp
javascript:voltar();
17/11/2022 10:58 Estácio: Alunos
https://simulado.estacio.br/alunos/ 2/7
III, IV, V, VI, I e II 
III, IV, VI, V, I e II
 II, VI, V, IV, I e III 
II, V, VI, IV, I e III 
Respondido em 01/11/2022 10:40:57
 
 
Explicação:
A resposta correta é: II, VI, V, IV, I e III.
 
 
Acerto: 1,0 / 1,0
Considere a seguinte especificação de tokens com sua descrição informal: 
SE fosse submetida ao Analisador a seguinte expressão: 
Soma = 0; 
Soma = A + B; 
O sétimo token reconhecido e seu lexema seriam respectivamente: 
 Id e A 
Id e Soma 
TermCom e ; 
NumInt e 0 
OpArit e + 
Respondido em 01/11/2022 10:41:14
 
 
Explicação:
A resposta correta é: Id e A 
 
 
Acerto: 1,0 / 1,0
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. 
 Questão3
a
 Questão4
a
17/11/2022 10:58 Estácio: Alunos
https://simulado.estacio.br/alunos/ 3/7
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.
Respondido em 01/11/2022 10:41:30
 
 
Explicação:
A resposta correta é: Continuar a análise após realizar a recuperação do erro e
anotá-lo para informação posterior.
 
 
Acerto: 1,0 / 1,0
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 afirmaçõ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 afirma em
I
III e IV
II e IV
 II
I e III
Respondido em 01/11/2022 10:41:50
 
 
Explicação:
Resposta correta: II
 
 
Acerto: 1,0 / 1,0
Ao realizarmos a análise sintática, podem ser detectados erros que não foram vistos durante a análise léxica.
 Questão5
a
 Questão6
a
17/11/2022 10:58 Estácio: Alunos
https://simulado.estacio.br/alunos/ 4/7
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;
Qual das opções abaixo possui apenas erro sintático.
A = C
10 * 5;
d - 10
A = b + C;
 A := 7;
Respondido em 01/11/2022 10:42:09
 
 
Explicação:
Resposta correta: A := 7;
 
 
Acerto: 1,0 / 1,0
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 afirmativas 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 afirmativas podemos concluir que estão corretas apenas
 I e III
II e III
III e IV
II e IV
I e II
Respondido em 01/11/2022 10:42:27
 
 
Explicação:
Resposta correta: I e III
 Questão7
a
17/11/2022 10:58 Estácio: Alunos
https://simulado.estacio.br/alunos/ 5/7
 
 
Acerto: 1,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:
III
 II e III
I
I e III
I e II
Respondido em 01/11/2022 10:42:54
 
 
Explicação:
Resposta correta: II e III
 
 
Acerto: 1,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:
 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
As duas são corretas e a segunda não justifica a primeira
Respondido em 01/11/2022 10:43:14
 
 
Explicação:
Resposta correta: A primeira é verdadeira e a segunda falsa
 
 Questão8
a
 Questão9
a
17/11/2022 10:58 Estácio: Alunos
https://simulado.estacio.br/alunos/ 6/7
 
Acerto: 1,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:
 
 A primeira é verdadeira e a segunda falsa
As duas afirmativas são falsas
As duas são corretas e a segunda justifica a primeira
A primeira é falsa e a segunda correta
As duas são corretas e a segunda não justifica a primeira
Respondido em 01/11/2022 10:44:18
 
 
Explicação:
Respsota correta: A primeira é verdadeira e a segunda falsa
 Questão10
a
17/11/2022 10:58 Estácio: Alunos
https://simulado.estacio.br/alunos/ 7/7
 
 
 
 
 
 
 
 
 
 
 
javascript:abre_colabore('38403','297360188','5844305215');

Mais conteúdos dessa disciplina