GoConqr hat ein neues Design! Sag uns, wie es dir gefällt.

Mindmap

Tabela de Símbolos

Kykaze . Portugiesisch

Inhalt der Mindmap

Tabela de Símbolos

  1. A Tabela de símbolos (TS) começa a ser preenchida no analisador léxico quando, ao reconhecer o token o léxico, faz a inserção do par (token, lexema).

  2. Outros atributos do token somente poderão ser identificados na análise sintática, a qual irá consultar a TS para acrescentar atributos, alterar ou mesmo incluir novos elementos na TS.

  3. Ela é acessada em todas as etapas do processo de compilação, seu tamanho não é fixo, apresenta um grande número de elementos (quanto maior o programa, maior a tabela) e muitos acessos de buscas são realizados durante as análises léxica, sintática e semântica.

  4. Implementação

    • Segundo Sedgewick (2011) podemos definir a tabela de símbolos (TS) como uma estrutura de dados para o par chave-valor que suporta inserção e busca de valores associados a uma dada chave.
    • Tabela Hash
      • A função hash transforma a chave de busca em um código que permite a busca direta.
      • Como o índice de um vetor é um ideal longe de ser alcançado, muitas vezes, a função hash gera um mesmo código para representar diferentes chaves, conflito em que se diz que ocorreu uma colisão, que precisará ser tratada.
      • A função de hash deve sempre retornar um mesmo código hash para a mesma chave.
  5. Ferramenta CUP

    • A ferramenta CUP (Constructor of Useful Parsers - construtor de analisadores úteis) gera analisadores sintáticos de forma integrada ao Jflex, permite a implementação completa da fase de análise de um compilador e facilita o desenvolvimento também da fase de síntese no futuro.
    • O código do analisador sintático gerado pelo CUP implementa um analisador LALR (Look-Ahead Left-to-Right), ou seja um analisador ascendente (bottom-up), que seja analisa as produções de baixo para cima (das folhas para a raiz) com análise preditiva (análise de símbolos a frente).
    • Regras para a montagem do arquivo de especificação da gramática
      • Diretivas do CUP e código Java que se deseja incluir na classe que será gerada.
      • Definição dos símbolos terminais e não-terminais.
      • Definição das precedências.
      • Definição das produções gramaticais.

Informationen

Beschreibung
Mindmap am Tabela de Símbolos, erstellt von Kykaze . am 06/05/2020.
Erstellt von
Kykaze .
Aufrufe
0
Bewertung

Feedback

Worum geht es?

Wie gefällt dir das neue Design?

Dein Eindruck