<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Una gramatica libre de contexto implica que sin importar las
instrucciones que lo precedan o antecedan, la expresión tendra el mismo
significado<br>
<br>
Por ejemplo en el español se puede hacer un comentario que segun el
contexo cambia el significado<br>
<br>
<br>
Liudnet Caballero Duboy escribió:
<blockquote
 cite="mid0470B17A392EDA499A0F26DE9971ECD4026E5A57@ucixs12.uci.cu"
 type="cite">
  <pre wrap="">Muchas Gracias 
sí aclaro mi duda..... ahora tengo otra preguntica
a que denomino Gramatica de Libre Contexto  
 
 
 
 
 
Liudnet Caballero Duboy 
Estudiante de Tercer Año
Universidad de las Ciencias Informáticas
  

________________________________

De: <a class="moz-txt-link-abbreviated" href="mailto:cconclase-bounces@listas.conclase.net">cconclase-bounces@listas.conclase.net</a> en nombre de Steven Davidson
Enviado el: Mar 13/03/2007 15:35
Para: <a class="moz-txt-link-abbreviated" href="mailto:cconclase@listas.conclase.net">cconclase@listas.conclase.net</a>
Asunto: Re: [C con Clase] Compiladores



Hola Liudnet,

El pasado 2007-03-13 18:22:48, Liudnet Caballero duboy escribió:

LCd> Hola a todos:
LCd> escribo por que estoy comenzando con el tema de compiladores y  a la hora de entender la gramatica que se debe seguir no entiendo  bien lo que tiene que ver con  las reglas de produccion  y lo del conjunto de simbolos no terminales... si alguien pudiera darme una ayudita se lo agradeceria

Una gramática se basa en axiomas o reglas. Para describir tal gramática, usamos reglas de producción para describir los axiomas del lenguaje. Las reglas de producción se basan en definir símbolos no terminales y terminales. El metalenguaje popular que solemos usar es el llamado BNF: Nomenclatura de Backus-Naur o a veces Nomenclatura Normal de Backus. Por ejemplo, para describir un lenguaje que acepte cualquier "palabra" hecha por series aes y bes con tal de que comience y termine con 'a'. Podemos describir tal lenguaje con BNF de la siguiente manera:

(*) <palabra> ::= a<letras>a | aa
<letras> ::= a<letras> | b<letras> | a | b

Esto describe la sintaxis del lenguaje y con ello podemos verificar si una "palabra" pertenece a nuestro lenguaje o no. Por ejemplo, la palabra "baabaa" no pertenece a nuestro lenguaje. Podemos verificarlo aplicando las reglas establecidas. Empezamos con la producción <palabra>:
baabaa
^

<palabra> ::= a<letras>a

b != a, entonces no se trata de la primera definición de <palabra>. Probemos la segunda:

<palabra> ::= aa

b != a. Como ninguna definición de <palabra> acepta la palabra entrante "baabaa", entonces establecemos que existe un error sintáctico.

Una técnica popular de usar BNF es crear una MEF: Máquina de Estados Finitos. Supongo que lo verás cuando sigas estudiando el tema de compiladores y lenguajes en general.


Espero que todo esto te aclare las dudas.

Steven
_______________________________________________
Lista de correo Cconclase <a class="moz-txt-link-abbreviated" href="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</a>
<a class="moz-txt-link-freetext" href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a>
Bajas: <a class="moz-txt-link-freetext" href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a>


  </pre>
  <pre wrap="">
<hr size="4" width="90%">
_______________________________________________
Lista de correo Cconclase <a class="moz-txt-link-abbreviated" href="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</a>
<a class="moz-txt-link-freetext" href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a>
Bajas: <a class="moz-txt-link-freetext" href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a></pre>
</blockquote>
<br>
</body>
</html>

__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis! 
Regístrate ya - http://correo.yahoo.com.mx/