Prévia do material em texto
17/11/2022 10:57 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 12/09/2022 Acerto: 1,0 / 1,0 O que faz a análise léxica? Tratar erros de tipo no programa fonte; Verifica se as estruturas do programa irão fazer sentido 4 durante a execução; Verifica se a estrutura gramatical do programa está correta; Lê caractere por caractere do texto encontrando sequências que constituem tokens; É 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; Respondido em 12/09/2022 11:59:21 Explicação: A resposta correta é: Lê caractere por caractere do texto encontrando sequências que constituem tokens; 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 é: Questão1 a Questão2 a https://simulado.estacio.br/alunos/inicio.asp javascript:voltar(); 17/11/2022 10:57 Estácio: Alunos https://simulado.estacio.br/alunos/ 2/7 II, V, VI, IV, I e III III, IV, V, VI, I e II III, IV, VI, V, I e II III, V, VI, IV, I e II II, VI, V, IV, I e III Respondido em 12/09/2022 12:00:02 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: OpArit e + Id e A Id e Soma NumInt e 0 TermCom e ; Respondido em 12/09/2022 12:00:45 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:57 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: Tentar corrigir o erro reescrevendo a parte onde foi encontrado. 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. Passar o erro para o analisador sintático para que este o trate. Ignorar totalmente o erro e prosseguir a análise como se nada tivesse acontecido. Respondido em 12/09/2022 12:01:27 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 II e IV I III e IV I e III II Respondido em 12/09/2022 12:02:35 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:57 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. 10 * 5; d - 10 A = b + C; A := 7; A = C Respondido em 12/09/2022 12:03:04 Explicação: Resposta correta: A := 7; 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 I e III III I e II II Respondido em 12/09/2022 12:03:36 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. Questão7 a 17/11/2022 10:57 Estácio: Alunos https://simulado.estacio.br/alunos/ 5/7 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: 1,0 / 1,0 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 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 não justifica a primeira As duas são corretas e a segunda justifica a primeira Respondido em 12/09/2022 12:04:23 Explicação: Resposta correta: As duas são corretas e a segunda justifica a primeira 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: Questão8 a Questão9 a 17/11/2022 10:57 Estácio: Alunos https://simulado.estacio.br/alunos/ 6/7 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 não justifica a primeira As duas são corretas e a segunda justifica a primeira A primeira é falsa e a segunda correta Respondido em 12/09/2022 12:05:11 Explicação: Respsota correta: A primeira é verdadeira e a segunda falsa 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 é Questão10 a 17/11/2022 10:57 Estácio: Alunos https://simulado.estacio.br/alunos/ 7/7 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 nasafirmativas acima podemos concluir que: 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 As duas são corretas e a segunda justifica a primeira Respondido em 12/09/2022 12:07:12 Explicação: Resposta correta: A primeira é verdadeira e a segunda falsa javascript:abre_colabore('38403','292988592','5641280291');