Análise sintática (computação): diferenças entre revisões
Conteúdo apagado Conteúdo adicionado
m Foram revertidas as edições de Pedro White para a última revisão de 177.19.111.69, de 2015-05-29T00:51:05 (UTC) |
Adicionado os objetivos, sobre os dois analisadores Etiquetas: Referências removidas Editor Visual |
||
Linha 7:
A vasta maioria dos analisadores sintáticos implementados em compiladores aceitam alguma [[gramática livre de contexto|linguagem livre de contexto]] para fazer a análise. Estes analisadores podem ser de vários tipos, como o [[Analisador sintático LL|LL]], [[Analisador sintático LR|LR]] e [[Analisador sintático SLR|SLR]].
== Objetivo ==
O objetivo do analisador sintático é verificar se uma determinada gramatica com uma sequencia ẟ de símbolos terminais(Frase) é uma frase válida da linguagem. Mas não só analisar se pertence ou não a linguagem, o analisador sintática reconhece a forma da frase exemplo: "O rato roeu a roupa do rei de roma", se colocarmos "O '''ratos''' roeu a roupa do rei de roma" para que a estrutura esteja correta, é necessário que antes do plural o artigo, esteja no plural. Então o analisador iria verificar e apontar um error.
== Tipos de analisadores sintáticos ==
Existem dois tipos gerais de estratégias de analisador sintático(parsing) são elas: '''top-down''' e '''bottom-up.'''
=== Top-Down ===
A árvore é construída da raiz para as folhas. Em cada vértice seleciona uma produção com um símbolo não terminal A à esquerda e constrói os vértices filhos do símbolo não terminal A com símbolos à direita nessa produção, então seleciona o vértice e continua e terminará quando todas as folhas forem símbolos terminais. A aceitação se dá quando o ẟ termina. O "lookahead" toma decisões para observar o próximo símbolo e fazer a analise.
=== Bottom-up ===
A árvore é construída das folhas para a raiz, os símbolos de α são associados até reconhecer o lado direito de uma produção e a aceitação se dá se, esgotada a sequência α e o símbolo inicial estiver na raiz da árvore.
==
O analisador sintático utiliza diversos conceitos da ciência da computação como por exemplo a estrutura de dados: árvore é um exemplo. Ao receber os dados do analisador léxico no caso do compilador ele verifica se a sintaxe está correta.
{{Referências|Compiladores - Princípios , Técnicas e Ferramentas ( Aho, Alfred V.; Jeffrey; Sethi, Ravi; Lam, Monica S. = Compiladores - Princípios , Técnicas e Ferramentas (Cód: 8873692)
Aho, Alfred V.; Jeffrey; Sethi, Ravi; Lam, Monica S.}}
== Ver também ==
|