PROYECTO DE TEORIA DE LENGUAJE Y COMPILADOR.docx

download PROYECTO DE TEORIA DE LENGUAJE Y COMPILADOR.docx

of 19

Transcript of PROYECTO DE TEORIA DE LENGUAJE Y COMPILADOR.docx

PROYECTO DE CREACION DE UN COMPILADOR

ContenidoPROYECTO DE TEORIA DE LENGUAJE Y COMPILADOR2Qu es programa JAVA?2COMENZANDO CON EL PROGRAMA:2SOPORTE DEL PROYECTO31.Estructura de programa:32.Comentarios:43.Palabras reservadas:4-De tipo:4-De estructura:4-De Lenguaje:44.Identificadores:55.Numero:5-Entero:5-Decimal:56.Carcter:67.Cadena:68.Variables:69.Operadores:7-Aritmticos:7-Asignacin:7-Lgicos:7-Relacionales:810.Condicin:811.Sentencia:812.Expresin:913.Instrucciones de Control:9i.Instrucciones Selectivas:9ii.Instrucciones Repetitivas:11FUNCIONAMIENTO DEL PROYECTO12ANEXO:1

PROYECTO DE TEORIA DE LENGUAJE Y COMPILADOR

El presente proyecto consiste en la creacin de un compilador bsico del lenguaje JAVA con las fases de lexicogrfico, y sintctico. Los programas aceptados son bsicos y con programacin estructurada, es decir no soporta la Programacin Orientada a Objetos.Qu es programa JAVA?

Un programa Java es una coleccin de clases. Algunas clases se escriben y algunas forman parte del lenguaje Java. Un programa Java debe contener como mnimo un mtodo esttico denominado main(). El programa comienza especificando el nombre de esta clase al sistema Java al tiempo de ejecucin que llama al mtodo main().COMENZANDO CON EL PROGRAMA:

Los programas en Java son escritos en mtodos o tambin llamados funciones, estas a su vez estn contenidas en clases, las cuales pertenecen a un paquete determinado.Como ya se menciono el mtodo que debe incluirse como mnimo y principal es el mtodo esttico main ().

Ejemplo:

*Ejemplo del esquema de un proyecto en el ID NetBeans 7.3

Como se puede apreciar la clase MiProyecto.java se encuentra dentro del paquete miproyecto. Nombre del Paquete Nombre de la Clase Nombre de los Mtodos

Este es el esquema de una clase en lenguaje Java.SOPORTE DEL PROYECTO

A continuacin se menciona el soporte y alcance que tiene el proyecto, los ejemplos son soportados por este.1. Estructura de programa:

El proyecto reconoce el esquema bsico de un programa en java, es decir: Nombre del Paquete Nombre de la Clase Nombre del Mtodo main()//programacin estructurada

Ejemplo:package miproyecto;

public class MiProyecto {

public static void main(String[] args) { // programacion estructurada }}

2. Comentarios:

Los comentarios permiten aadir al cdigo fuente notas o comentarios de texto que son ignorados por el compilador, los comentarios aceptados por el proyecto son:a- //Comentario de una sola lneab- /* Comentario De varias lneas */

3. Palabras reservadas:

Ciertas palabras estn reservadas para su uso interno por Java y no se pueden utilizar como nombres de variables. De tipo:

byteshortint

longfloatdouble

booleancharString

De estructura:

ifelsefor

switchwhilecase

dobreakdefault

De Lenguaje:

importJOptionPanenewprintawttextpackagestatic

javapublicreturnprintlneventswingmainequals

utilclassvoiderrioaddargsfalse

ScannerprivateSystemapplangsuperintrue

javaxprotectedoutletnetthisJFrame

4. Identificadores:

Un identificador es el nombre de variables, mtodos, clases e interfaces. Un identificador es una secuencia ilimitada de caracteres alfabticos o dgitos (Unicode) que comienzan con un carcter alfabtico.

Gramtica:identificador letra | identificador digito | identificador letraletra a|b|c..|x|y|z|A|B|C.|X|Y|Z|digito 0|1|2|3|4|5|6|7|8|9Ejemplo: sistemas5

5. Numero:

Entero:

El proyecto reconoce a enteros positivos como negativos.Gramtica:entero digito | - digito | entero digitodigito 0|1|2|3|4|5|6|7|8|9Ejemplo: 77, -1234 Decimal:

El proyecto reconoce a decimales positivos como negativos.Gramtica:decimal entero . digito | decimal digitoentero digito | - digito | entero digitodigito 0|1|2|3|4|5|6|7|8|9Ejemplo: 77.77, -1234.5678

6. Carcter:

Un carcter esta constituido por un solo CARCTER UNICODE entre comillas simples, el proyecto no acepta como CARCTER UNICODE a comillas dobles () y a comillas simples ()Ejemplo: m, A, 2, + no acepta y

7. Cadena:

Una cadena esta constituida por un CARCTER UNICODE o una serie de estos entre comillas dobles, el proyecto no acepta como CARCTER UNICODE a comillas dobles () y a comillas simples ()Ejemplo: m, dominguez, 2, 3+3=6 no acepta y

8. Variables:

Las variables son unidades bsicas de almacenamiento en Java. Una variable se define por la combinacin de un identificador, un tipo y un inicializador opcional. Declaracin de variables:Nombretipo identificador ;Nombretipo identificador = expresin;

Es posible declarar dos o ms variables a la vez:

Nombretipo id1, id2, ;

Ejemplo:

Acepta: cuando es una declaracin de variable mltiple, solo se inicialice una y esta debe ser el ultimo en ser mencionado.int i = 100 + 4;char c = d; int n1, n2 = 2;char n, m, o, p = a; No Acepta: a la inicializacin mltiple de una declaracin de una sola lnea. int a = g, f = g + h, f = 4 + 6, g = y;Opcin: inicializar de manera individual. int a = g; int f = g + h; int f = 4 + 6; int g = y;

9. Operadores:

Los operadores permiten a las expresiones combinarse en expresiones ms complejas. El proyecto soporta una coleccin grande de operadores que se pueden utilizar para manipular datos, incluyendo operadores aritmticos, asignacin. As como de relacin y lgicos. Aritmticos:

Se utilizan en expresiones matemticas de igual modo que se utilizan en algebra. + suma resta * multiplicacin / divisin % modulo Asignacin:

Se utiliza para asignar un valor a una variable. = asignacin simple Lgicos:

Se utilizan para manipular condiciones. && y || o

Relacionales:

Determina la relacin que un operador tiene con otro. == igual a < menor que > mayor que >= mayor o igual que ; ){ break; //opcional}//se recomienda que sea sin expresin para que se asemeje //mas al lenguaje//< condicionSimple> es una condicin sin anidar// puede ser ++ o --

FUNCIONAMIENTO DEL PROYECTO

Se evaluara la siguiente estructura:

package miproyecto;

public class MiProyecto {

public static void main(String[] args) {

int m = 1; int n = 2; int suma = 0; while (m