Buscar

Passos da Compilação e Análise de Programas

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

29/03/2021 Estácio: Alunos
https://simulado.estacio.br/alunos/ 1/7
 
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 é: 
COMPILADORES 
Lupa Calc.
 
 
CCT0838_201908040459_ESM 
Aluno: JOSEILDON DA SILVA DANTAS Matr.: 201908040459
Disc.: COMPILADORES 2021.1 EAD (G) / EX
Prezado (a) Aluno(a),
Você fará agora seu TESTE DE CONHECIMENTO! Lembre-se que este exercício é opcional, mas não valerá ponto para sua
avaliação. O mesmo será composto de questões de múltipla escolha.
Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para se
familiarizar com este modelo de questões que será usado na sua AV e AVS.
O COMPILADOR
 
1.
II, V, VI, IV, I e III 
III, IV, VI, V, I e II
III, V, VI, IV, I e II
III, IV, V, VI, I e II 
II, VI, V, IV, I e III 
 
 
Explicação:
A resposta correta é: II, VI, V, IV, I e III.
javascript:voltar();
javascript:voltar();
javascript:diminui();
javascript:aumenta();
javascript:calculadora_on();
29/03/2021 Estácio: Alunos
https://simulado.estacio.br/alunos/ 2/7
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:
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: 
Os Meta-caracteres são caracteres especiais na especificação de Expressões Regulares, que
 
2.
análise semântica.
análise sintática.
otimização do código
análise léxica.
geração do código.
 
 
Explicação:
A resposta correta é: análise semântica.
ANÁLISE LÉXICA
 
3.
Id e A 
NumInt e 0 
TermCom e ; 
Id e Soma 
OpArit e + 
 
 
Explicação:
A resposta correta é: Id e A 
 
4.
29/03/2021 Estácio: Alunos
https://simulado.estacio.br/alunos/ 3/7
aumentam muito sua expressividade. Eles podem ser quantificadores, definidores de
classes de caracteres, definidores de lista etc.... 
O Meta-caracter que corresponde a seguinte classe [A-Za-z0-9] é o 
A ordem correta dos passos durante a compilação é: 
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
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:["+""-"]
\w
\d
\C
\W
\c 
 
 
Explicação:
A resposta correta é: \w
ANÁLISE SINTÁTICA
 
5.
II
I
II e IV
I e III
III e IV
 
 
Explicação:
Resposta correta: II
 
6.
29/03/2021 Estácio: Alunos
https://simulado.estacio.br/alunos/ 4/7
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.
Verificação de tipos é uma atividade extremamente importante na análise semântica já que determinados erros somente são
percebidos nesta atividade, pois passam despercebidos nas Análises Léxicas e Sintáticas. 
Considere o seguinte trecho de programa :
inteiro a,b,c; 
{ 
.... 
c:= a + b; 
.... 
} 
 
Quanto a expressão c:= a + b; podemos afirmar que:
 
O seu tipo será inteiro 
porque 
todos os operandos são do tipo inteiro 
 
Com base nas afirmativas podemos concluir que:
A = b + C;
d - 10
10 * 5;
A := 7;
A = C
 
 
Explicação:
Resposta correta: A := 7;
ANÁLISE SEMÂNTICA
 
7.
A primeira é falsa e a segunda correta
As duas são corretas e a segunda não justifica a primeira
As duas afirmativas são falsas
A primeira é verdadeira e a segunda falsa
As duas são corretas e a segunda justifica a primeira
 
29/03/2021 Estácio: Alunos
https://simulado.estacio.br/alunos/ 5/7
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:
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:
 
Explicação:
Resposta correta: As duas são corretas e a segunda justifica a primeira
 
8.
I, II e III
I, II e IV
II, III e IV
I e III
I e II
 
 
Explicação:
Resposta correta: I, II e IV
GERAÇÃO DE CÓDIGO
 
9.
As duas são corretas e a segunda justifica a primeira
A primeira é verdadeira e a segunda falsa
As duas são corretas e a segunda não justifica a primeira
A primeira é falsa e a segunda correta
As duas afirmativas são falsas
 
 
Explicação:
Resposta correta: A primeira é verdadeira e a segunda falsa
29/03/2021 Estácio: Alunos
https://simulado.estacio.br/alunos/ 6/7
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:
 
 
10.
As duas são corretas e a segunda não justifica a primeira
As duas são corretas e a segunda justifica a primeira
As duas afirmativas são falsas
A primeira é falsa e a segunda correta
A primeira é verdadeira e a segunda falsa
 
 
Explicação:
Respsota correta: A primeira é verdadeira e a segunda falsa
29/03/2021 Estácio: Alunos
https://simulado.estacio.br/alunos/ 7/7
 Não Respondida Não Gravada Gravada
Exercício inciado em 24/03/2021 11:31:38.

Continue navegando