SóProvas


ID
72091
Banca
CESGRANRIO
Órgão
IBGE
Ano
2010
Provas
Disciplina
Arquitetura de Computadores
Assuntos

Ao realizar testes durante a elaboração de um compilador, um analista descobriu que havia, no compilador, um erro na checagem de tipos de variáveis em expressões, permitindo, por exemplo, a multiplicação entre tipos de dados que não poderia ocorrer. Em compiladores, a checagem de tipos de variáveis em expressões é uma função do



Alternativas
Comentários
  • Fases da Compilaçãoa) Análise Léxica (ou scanner): primeira fase do compilador. Tem como função ler o código fonte, caracter a caracter, buscando a separação e identificação dos elementos componentes do programa fonte, denominados símbolos léxicos ou tokens. É também de responsabilidade desta fase a eliminação de elementos "decorativos" do programa, tais como espaços em branco, marcas de formatação de texto e comentários.b) Análise Sintática (ou análise gramatical): determina se uma cadeia de símbolos léxicos pode ser gerada por uma gramática. No caso de analisadores sintáticos top-down, temos a opção de escrevê-los à mão ou gerá-los de forma automática, mas os analisadores bottom-up só podem ser gerados automaticamente. A maioria dos métodos de análise sintática cai em uma dessas duas classes denominadas top-down e botton-up.c) Análise Semântica: As análises léxica e sintática, não estão preocupadas com o significado ou semântica dos programas que elas processam. O papel do analisador semântico é prover métodos pelos quais as estruturas construídas pelo analisador sintático possam ser avaliadas ou executadas. As gramáticas livres de contexto não são suficientemente poderosas para descrever uma série de construções das linguagens de programação, como por exemplo regras de escopo, regras de visibilidade e consistência de tipos. É papel do analisador semântico assegurar que todas as regras sensíveis ao contexto da linguagem estejam analisadas e verificadas quanto à sua validade. Um exemplo de tarefa própria do analisador semãntico é a checagem de tipos de variáveis em expressões. Um dos mecanismos comumente utilizados por implementadores de compiladores é a Gramática de Atributos, que consiste em uma gramática livre de contexto acrescentada de um conjunto finito de atributos e um conjunto finito de predicados sobre estes atributos.
  • Gabarito A

    Análise semântica: verificações são realizadas para assegurar que componentes de um programa se combinam de forma significativa.
    Esta fase verifica erros semânticos no programa fonte e captura informações de tipo para a fase subseqüente de geração de código. Utiliza a estrutura hierárquica determinada pela fase de análise sintática, a fim de identificar os operadores e operandos das expressões e enunciados.

     

     

     

     

    "Retroceder Nunca Render-se Jamais !"
    Força e Fé !
    Fortuna Audaces Sequitur !