Baixe o app para aproveitar ainda mais
Prévia do material em texto
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 semântica. geração do código. análise sintática. Respondido em 07/03/2023 20:03:39 Explicação: A resposta correta é: análise semântica. 2a Questão 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 II, VI, V, IV, I e III III, IV, V, VI, I e II III, IV, VI, V, I e II II, V, VI, IV, I e III Respondido em 07/03/2023 20:05:37 Explicação: A resposta correta é: II, VI, V, IV, I e III. 3a Questão Acerto: 1,0 / 1,0 Os Meta-caracteres são caracteres especiais na especificação de Expressões Regulares, que 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 é: \c \W \C \d \w Respondido em 07/03/2023 20:10:28 Explicação: A resposta correta é: \w 4a Questão Acerto: 1,0 / 1,0 O GALS é um gerador de analisadores léxicos que a partir de expressões regulares cria um autômato finito determinístico que as analisa. Para que possa funcionar ele deve ter os seus tokens especificados. Como seria a especificação do token no GALS para identificadores (Id) formados pela primeira letra maiúscula sendo seguido de pelo menos uma ou mais letras minúsculas deverá existir pelo menos um letra? Id:[A-Z] [a-z]*. Id: [A-Za-z]+ Id:[A-Z]* Id:[a-z]+ Id:[A-Z] [a-z]+. Respondido em 07/03/2023 20:16:46 Explicação: A resposta correta é: Id:[A-Z] [a-z]+. 5a Questão Acerto: 1,0 / 1,0 Considere a seguinte gramática S → XYZ X → aXb | ε Y → cYZcX | d Z → eZYe | f Levando-se em conta a necessidade de criar a tabela sintática, seriam gerados os conjuntos First e Follow de cada um dos não terminais. Qual seria o conjunto First de S? { a, d} {c, d, e} {a, c, d} {a, c, d, e} {a, c, e} Respondido em 07/03/2023 20:18:54 Explicação: Resposta correta: {a, c, d} 6a Questão Acerto: 1,0 / 1,0 ANO: 2010 BANCA: CESPE ÓRGÃO: INMETRO PROVA: PESQUISADOR - CIÊNCIAS DA COMPUTAÇÃO Considere que, em uma linguagem de programação hipotética, um comando condicional IF exija o uso de THEN, representando a cláusula então. Nesse caso, se a instrução THEN não for usada no código fonte, uma resposta do compilador na identificação do erro de programação estará no nível lógico no nível sintático nos níveis sintático e semântico, ao mesmo tempo no nível semântico no nível léxico Respondido em 07/03/2023 20:20:46 Explicação: Resposta correta: no nível sintático 7a Questão 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: I e III II e III II I e II III Respondido em 07/03/2023 20:21:43 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. 8a Questão Acerto: 0,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 I e III I e II II e III I Respondido em 07/03/2023 20:28:16 Explicação: Resposta correta: II e III 9a Questão Acerto: 0,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: As duas afirmativas são falsas As duas são corretas e a segunda 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 não justifica a primeira Respondido em 07/03/2023 20:32:51 Explicação: Resposta correta: A primeira é verdadeira e a segunda falsa 10a Questão Acerto: 0,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 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 As duas afirmativas são falsas
Compartilhar