Notacion bnf

Solo disponible en BuenasTareas
  • Páginas : 2 (488 palabras )
  • Descarga(s) : 0
  • Publicado : 6 de noviembre de 2010
Leer documento completo
Vista previa del texto
Notación BNF
Las gramáticas de tipo 2 (que incluyen a las gramáticas de tipo 3) tienen métodos alternativos útiles para desplegar las producciones. Una alternativa que se encuentra con frecuencia esla notación BNF (forma Backus-Naur). Se sabe que los lados izquierdos de todas las producciones en una gramática de tipo 2 son símbolos no terminales únicos. Para cada uno de tales símbolos w, secombina todas las producciones que tienen a w como lado izquierdo. El símbolo w permanece a la izquierda, y todos los lados derechos asociados con w son enumerados juntos, separados por el símbolo |. Elsímbolo relacional se reemplaza por el símbolo ::=. Por último, los símbolos no terminales, cuando aparezcan, serán encerrados entre paréntesis agudos < >. Esto tiene la ventaja adicional de que lossímbolos no terminales pueden tener espacios dentro de ellos. Así, muestra que la cadena entre paréntesis debe considerarse como una "palabra", no como dos palabras. Es decir, se puede utilizar elespacio como una "letra" conveniente y legítima en una palabra, mientras que se utilice los paréntesis agudos para delimitar las palabras.
Una especificación de BNF es un sistema de reglas dederivación, escrito como:
::=
donde es un no terminal, y la expresión consiste en secuencias de símbolos o secuencias separadas por la barra vertical, '|', indicando una opción, el conjunto es una posiblesubstitución para el símbolo a la izquierda. Los símbolos que nunca aparecen en un lado izquierdo son terminales.
Ejemplo
Como ejemplo, considere este BNF para una dirección postal de los E.E.U.U::=
::= | "."
::= []
|
::= []
::= ","
Esto se traduce a español como:
• Un dirección postal consiste de un nombre, seguido por una dirección, seguida por unapartado postal.
• Una parte "personal" consiste en un nombre o una inicial seguido(a) por un punto.
• Un nombre consiste de: una parte personal seguida por un apellido seguido opcionalmente por...
tracking img