·

Engenharia da Computação ·

Programação

Send your question to AI and receive an answer instantly

Ask Question

Preview text

Questão 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 otimização do código geração do código análise semântica análise léxica análise sintática Explicação A resposta correta é análise semântica Questão 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 IV V VI I e II II VI V IV I e III II V VI IV I e III III VI IV I e II II VI I e II Explicação A resposta correta é II VI V IV I e III Questão Considere a seguinte especificação de tokens com sua descrição informal TOKEN LEXEMA EXEMPLO DESCRIÇÃO INFORMAL DO PADRÃO Se Se Comando Se Senão Senão Cláusula senão do comando Se OpRela Operadores Relacionais como ou ou ou OpArit Operadores Aritméticos como ou ou Id Área lado atribuição Número Inteiro Número Inteiro TermCom Terminador de Comando Se fosse submetida ao Analisador a seguinte expressão Soma 0 Soma A B O símbolo não reconhecido e seu lexema seriam respectivamente Id e Soma Id e A TermCom e NumInt e 0 Explicação A resposta correta é Id e A Questão As árvores de sintaxe são a forma mais comum de representação intermediária gráfica Dentro destas árvores temos as de Derivação Sintática e Derivação Anotada Com relação a estas árvores avalie as afirmativas abaixo I Decorrem da á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 eliminandose 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 III I e III I e II II Explicação Resposta correta I e II A ideia básica é eliminar todos os nós 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 não teriam nas raízes das subárvores Questão 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 II e III III I e II I I e III Explicação Resposta correta II e III Questão Um programa pode ter parte de sua funcionalidade implementada por um procedimento Procedimentos são normalmente compilados a parte e estão ligados ao código principal Quando um procedimento é chamado gera informação e além disso pode solicitar informações de contexto suas variáveis locais parâmetros etc Assim sendo se um procedimento D chama um procedimento E podemos afirmar que E registero é ativado e este é top do pilha Porque Os registros de algumas das operações devem ser simplificados na ordem inversa do retorno Com as duas afirmativas acima podemos concluir que As duas afirmativas são falsas A primeira é verdadeira e a segunda é primeira A das duas é a segunda falsa A primeira é verdadeira e a segunda falsa Explicação Resposta correta A primeira é verdadeira e a segunda falsa