Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Gramáticas
COMPILADORES
• Definição de uma Gramática
• Constituição de uma Gramática
• Gramática Regular
• Gramática Livre de Contexto
• Diferenças entre as Gramáticas
ROTEIRO 
● Uma gramática 'G' pode ser formalmente descrita 
usando quatro tuplas como G = (V, T, S, P) onde,
● V = Conjunto de Variáveis ​​ou Símbolos 
Não-Terminais
● = Conjunto de Símbolos Terminais
● S = Símbolo inicial
● P = Regras de Produção para Terminais e 
Não-Terminais
DEFINIÇÃO DE UMA GRAMÁTICA 
● Uma regra de produção tem a forma 𝛂→𝛃 onde 𝛂 e 𝛃
são cadeias em V ⋃ T, e pelo menos um símbolo de 𝛂
pertence a V.
Exemplo: G = ({S, A, B}, {a, b}, S, {S→AB, A→a, B→b})
● Noam Chomsky apresentou um modelo matemático 
de gramática que é eficaz para linguagens de 
computador.
● De acordo com Chomsky, há quatro tipos de 
Gramática e a Gramática Tipo 3 é a Gramática 
Regular que aceita Linguagens Regulares.
CONSTITUIÇÃO DE UMA GRAMÁTICA
https://www.geeksforgeeks.org/chomsky-hierarchy-in-theory-of-computation/
● A Gramática Regular é a gramática Tipo 3 de 
acordo com a Hierarquia de Chomsky. 
● Apresenta um único símbolo não-terminal do lado 
esquerdo, um único terminal do lado direito, ou 
um único terminal seguido por um não-terminal.
● A Gramática Regular aceita e gera linguagens 
regulares.
● Todas as produções deverão ser no formato de:
A –> xB
A –> x
A –> Bx
onde A, B ∈ V (Conjunto de Variáveis), ex ∈ T*, 
ou seja, a sequência de terminais.
GRAMÁTICA REGULAR
● Tipos
● A gramática regular pode ser dividida em dois tipos:
● Gramática Linear Esquerda (LLG)
● Uma gramática é considerada Linear Esquerda se 
todas as produções forem da forma:
● A –> Bx
● A –> x
● onde A, B ∈ V (símbolos não-terminais) e x ∈ T*, ou 
seja, a sequência de terminais.
● Na LLG, o símbolo não-terminal fica à esquerda do 
símbolo terminal.
GRAMÁTICA REGULAR
● Tipos (Cont.)
● A gramática regular pode ser dividida em dois tipos:
● Gramática Linear Esquerda (LLG)
● Uma gramática é considerada Linear Direita se 
todas as produções forem da forma:
● A –> xB
● A –> x
● onde A, B ∈ V (símbolos não-terminais) e x ∈ T*, ou 
seja, a sequência de terminais.
● No RLG, o símbolo não-terminal fica à direita do 
símbolo terminal.
GRAMÁTICA REGULAR
● Uma gramática livre de contexto (GLC) é definida 
por um conjunto de regras de produção que 
descrevem como as sentenças de uma linguagem 
podem ser geradas. 
● Cada regra de produção consiste em um símbolo 
não-terminal que é substituído por uma sequência 
de símbolos terminais e não-terminais. 
GRAMÁTICA LIVRE DE CONTEXTO
● A gramática livre de contexto pode ser definida 
usando quatro tuplas V, T, P e S.
● G= (V, T, P, S) 
● G significa a gramática 
● T contém um conjunto finito de símbolos 
chamados Terminais.
● V contém um conjunto finito de símbolos que 
não são terminais
● S denota o símbolo inicial. 
GRAMÁTICA LIVRE DE CONTEXTO
● Continuação
● Uma linguagem é definida sobre algum alfabeto, 
por exemplo, o conjunto de tokens produzidos 
por um lexer, ou o conjunto de caracteres 
alfanuméricos. Esses símbolos do alfabeto são 
chamados de terminais. 
● O símbolo inicial é usado para derivar uma 
string. Pode-se derivar uma string substituindo, 
repetidamente, um não-terminal do lado direito 
da produção até que todos os não-terminais 
tenham sido substituídos por símbolos 
terminais.
GRAMÁTICA LIVRE DE CONTEXTO
● Suponha que temos os seguintes conjuntos
● Conjunto de Símbolos Terminais (T): {a, b}
● Conjunto de Símbolos Não-Terminais (N): {S, A, B}
● Símbolo Inicial (S): S
● Algumas regras de produção para a gramática 
● Regra de Produção S:
● S → aA
● Isso significa que o símbolo não-terminal S pode 
ser substituído pela sequência "aA".
GRAMÁTICA LIVRE DE CONTEXTO
● Algumas regras de produção para a gramática (cont.)
● Regra de Produção A:
● A → aA
● A → bB
● A → ε
● Isso significa que o símbolo não-terminal A pode 
ser substituído por "aA", "bB" ou ε (a cadeia 
vazia).
GRAMÁTICA LIVRE DE CONTEXTO
● Algumas regras de produção para a gramática (cont.)
● Regra de Produção B:
● A → bB
● B → ε
● Isso significa que o símbolo não-terminal B pode 
ser substituído por "bB" ou ε.
GRAMÁTICA LIVRE DE CONTEXTO
● Essas regras de produção permitem gerar sequências 
de símbolos terminais e não-terminais. O processo de 
aplicar essas regras começa com o símbolo inicial (S) 
e, em seguida, as regras são usadas iterativamente 
para expandir os não-terminais até que não haja mais 
não-terminais na sequência.
GRAMÁTICA LIVRE DE CONTEXTO
● Por exemplo, usando as regras anteriores, podemos gerar a 
sequência "aabb" da seguinte forma:
S (inicial)
aA (aplicando a regra de produção S)
aabB (aplicando a regra de produção A)
aabb (aplicando a regra de produção B)
● Assim, a gramática livre de contexto permite descrever 
estruturas complexas em linguagens de programação e é 
amplamente utilizada na análise sintática de compiladores.
GRAMÁTICA LIVRE DE CONTEXTO
● Comparativo entre as gramáticas
DIFERENÇAS ENTRE AS GRAMÁTICAS
1.Compiladores: princípios, técnicas e ferramentas
2.Compiladores: princípios e práticas
3.https://www.geeksforgeeks.org/difference-between-context-free-grammar-
and-regular-grammar/
4.https://www.geeksforgeeks.org/chomsky-hierarchy-in-theory-of-computation/
REFERÊNCIAS
https://plataforma.bvirtual.com.br/Acervo/Publicacao/280
https://integrada.minhabiblioteca.com.br/reader/books/9788522128532/pageid/0
https://www.geeksforgeeks.org/difference-between-context-free-grammar-and-regular-grammar/
https://www.geeksforgeeks.org/chomsky-hierarchy-in-theory-of-computation/

Mais conteúdos dessa disciplina