2. Transformación de una BNF a un grafo
sintáctico.
REGLA 1: Las producciones de la forma
N α1
| α2
| …
| αn
Se representan con el siguiente grafo
α1
α2
α3
3. Transformación de una BNF a un grafo
sintáctico.
REGLA 2: Los términos de la forma
α a1
| a2
| …
| an
Se representan con el siguiente grafo
a1
a2
an
4. Transformación de una BNF a un grafo
sintáctico.
REGLA 3: Si un elemento tiene uno o cero ocurrencias,
o sea [α ]
Se representa con el siguiente grafo
α
5. Transformación de una BNF a un grafo
sintáctico.
REGLA 4: Si un elemento se repite arbitrariamente ( 0
veces inclusive) , o sea {α}
Se representa con el siguiente grafo
α
6. Transformación de una BNF a un grafo
sintáctico.
REGLA 5: Los símbolos no terminales N se
representaran dentro de un rectángulo.
N
REGLA 6: Los símbolos terminales t se representaran
dentro de un circulo o un ovalo.
t t
7. Ejemplo
Sea G = ( T , N , P , S ) que acepta
expresiones aritméticas como:
X + Y – X * Y
T = { X , Y , + , - , * , / , ( , ) }
N = { EXPR , TERM , FACTOR }
P = { EXPR TERM
| EXPR + TERM
| EXPR – TERM
TERM FACTOR
| TERM * FACTOR
| TERM / FACTOR
FACTOR X | Y | ( EXPR )
S = {EXPR}
TERM
EXPR
EXPR
TERM
TERM
+
-
EXPR
FACTOR
TERM
TERM
FACTOR*
/
TERM
FACTOR
EXPR( )
X
Y
FACTOR
Diagrama de Conway