Unidad 3 Parte 2

Post on 21-Dec-2015

219 views 1 download

description

ni cojonuda idea

Transcript of Unidad 3 Parte 2

UNIDAD 3ANALIZADOR LÉXICO

3.2 USO DE BÚFER EN LA ENTRADA.

Buffer: Memoria de almacenamiento temporal de información que permite transferir los datos entre unidades funcionales con características de transferencia diferentes.

PORQUE USAR BUFER EN LA ENTRADA DE DATOS.

Debido al tiempo requerido para procesar caracteres y al extenso número de caracteres que se deben procesar durante la compilación de un programa fuente extenso, se han desarrollado técnicas especializadas de uso de búferes para reducir la cantidad de sobrecarga requerida en el procesamiento de un solo carácter de entrada.

CADENAS Y LENGUAJES.

Un alfabeto es un conjunto finito de símbolos.. (tokens)

Una cadena sobre un alfabeto es una secuencia finita de símbolos que se extraen de ese alfabeto. Nuestro código.

Un lenguaje es cualquier conjunto contable de cadenas sobre algún alfabeto fijo. El lenguaje de programación.

ESTRUCTURA BÁSICA DE JAVA.

CENTINELAS

QUE HACE EL CENTINELA

OPERACIONES EN LENGUAJES

En el análisis léxico, las operaciones más importantes en los lenguajes son la unión, la concatenación y la cerradura,

CONCATENACIÓN

La concatenación de lenguajes es cuando se concatenan todas las cadenas que se forman al tomar una cadena del primer lenguaje y una cadena del segundo lenguaje, en todas las formas posibles.

UNIÓN DE LENGUAJES

La unión es la operación familiar que se hace con los conjuntos.

BIFURCACIONES EN LOS LENGUAJES.

cambios en la estructura cualitativa o topológica de una familia determinada.

RECONOCIMIENTO DE TOKENS

FORMAS DE MANEJAR LAS PALABRAS RESERVADAS

Instalar las palabras reservadas en la tabla de símbolos desde el principio. Un campo de la entrada en la tabla de símbolos indica que estas cadenas nunca serán identificadores ordinarios, y nos dice qué token representan.

FORMAS DE MANEJAR LAS PALABRAS RESERVADAS

Crear diagramas de transición de estados separados para cada palabra clave.

ANALIZADOR LÉXICO BASADO EN DIAGRAMAS DE TRANSICIÓN DE ESTADO.

ESTRUCTURAS DE PROGRAMACIÓN EN JAVA.

Las estructuras de control se dividen en tres categorías:          Secuencial          Condicional o Selectiva          Iterativa o Repetitiva.

2.ESTRUCTURA CONDICIONAL.

La estructura condicional determina si se ejecutan unas instrucciones u

otras según se cumpla o no una determinada condición.

En java la estructura condicional se implementa mediante:

-         Instrucción if.

-         Instrucción switch.

-         Operador condicional ? 

2.1 INSTRUCCION ifPuede ser del tipo:-         Condicional simple: if-         Condicional doble: if ... else ...-         Condicional múltiple: if .. else if .

Condicional simple: se evalúa la condición y si ésta se cumple se ejecuta una determinada acción o grupo de acciones. En caso contrario se saltan dicho grupo de acciones.

         if(expresión_booleana){             instrucción 1             instrucción 2

            .......          }

Condicional doble: Se evalúa la condición y si ésta se cumple se ejecuta una determinada instrucción o grupo de instrucciones. Si no se cumple se ejecuta otra instrucción o grupo de instrucciones.

           if(expresión booleana){              instrucciones 1           }           else{                  instrucciones 2           }

Condicional múltiple: Se obtiene anidando sentencias if ... else. Permite construir estructuras de selección más complejas.

if (expresion_booleana1)instruccion1;else if (expresion_booleana2)instruccion2;       elseinstruccion3;

3.  ESTRUCTURA ITERATIVA O REPETITIVA Permiten ejecutar de forma repetida un bloque específico de instrucciones.Las instrucciones se repiten mientras o hasta que se cumpla una determinada condición. Esta condición se conoce como condición de salida.Tipos de estructuras repetitivas:-               ciclo while-               ciclo do – while-               ciclo for

ESTRUCTURA DE WHILE.

3.2 CICLO DO – WHILELas instrucciones se ejecutan mientras la condición sea cierta.La condición se comprueba al final del bucle por lo que el bloque de instrucciones se ejecutarán al menos una vez. Esta es la diferencia fundamental con la instrucción while. Las instrucciones de un bucle while es posible que no se ejecuten si la condición inicialmente es falsa. 

ESTRUCTURA DEL DO-WHILE

3.3 CICLO FOR

Hace que una instrucción o bloque de

instrucciones se repitan un número

determinado de veces mientrasse

cumpla la condición.

ESTRUCUTRA DEL FOR

3.4 BUCLES INFINITOS EN JAVAJava permite la posibilidad de construir bucles infinitos, los cuales se ejecutarán indefinidamente, a no ser que provoquemos su interrupción. Tres ejemplos:for(;;){    instrucciones}for(;true;){     instrucciones}while(true){        instrucciones}

CONVERSIONES DE DATOS.

Para pasar de String a un valor numérico, usamos el método parse de cada clase de variable primitiva. Veremos unos ejemplos.

         String numString="1234";        System.out.println("String: "+numString);         long numLong=Long.parseLong(numString);        System.out.println("long: "+numLong);         int numInt=Integer.parseInt(numString);        System.out.println("int: "+numInt);         short numShort=Short.parseShort(numString);        System.out.println("short: "+numShort);         

byte numByte=Byte.parseByte(numString);        System.out.println("byte: "+numByte);         double numDouble=Double.parseDouble(numString);        System.out.println("double: "+numDouble);         float numFloat=Float.parseFloat(numString);        System.out.println("Float: "+numFloat);