You are on page 1of 17

COMPILADORES (ELEMENTOS A USAR EN EL ANALIZADOR LEXICO)

PALABRAS RESERVADAS

PALABRAS RESERVADAS DESCRIPCIN
Int
Tipo de dato primitivo entero por defecto (32 bits)
Doubl
Tipo de dato primitivo de punto flotante por defecto (32 bits)
String
Permite una declaracin de variables que almacena una
secuencia de 0 a ms caracteres.
Char
Permite una declaracin de variables que almacenan caracteres
Unicode
Decimal
Permite una declaracin de variables que almacenan 38 dgitos
y todos pueden estar a la derecha del separador decimal.
Boolean
Tipo de dato primitivo booleano (true o false)
Byte
Tipo de dato primitivo entero (8 bits)
Long
Tipo de dato primitivo entero
Short
Tipo de datos primitivos entero (16 bits)
Float
Tipo de dato primitivo de punto flotante (64 bits)
Var
Una variable local, su tipo es determinado por el propio
compilador.
Publico
Modificador de visibilidad clases, interfaces, atributos y
mtodos, hacindolo visible, publico.
Protegido
Modificador de visibilidad de atributos y mtodos limitndolos
a la propia clase, paquete e hijo(s)
Privado
Modificador de visibilidad de atributos, limitndose variables a
no ser accedido fuera de su clase o que una clase no sea
accesible fuera de su superclase
Statico
Indica que el mtodo, variable o atributo, variables pertenece a
la clase y no a la instancia (objeto)
COMPILADORES (ELEMENTOS A USAR EN EL ANALIZADOR LEXICO)

Void
Indica que el mtodo no retornara valor alguno
Main
Metodo principal
If
Estructura de control condicional
Else
Evaluacion de la condicin lgicamente opuesta de un if o elseif
Else
Se ejecuta en caso la sentencia if sea falso
Switch
Estrcutura de control condicional multiple
Case
Verifica cada valor evaluado en una sentencia switch
Break
Romper el flujo normal del bloque de cdigo actual
While
Condicion o sentencia cclica, que ejecuta un conjunto de
instrucciones mediante una condicion.
Do
Estructura de control cclica
For
Sentencia repetitiva, cclica que cuenta con valor de inicio, una
condicion, y un incremento.
Next

Eval
Evalua los posibles errores en un bloque de codigo
Capt
Atrapa excepciones dentro de un bloque eval
Return
Retorna un valor desde el mtodo actual
Veradero
Valor lgico q devuelve como valor true (verdadero)
Falso
valor lgico que devuelve como valor false (falso)
New
Permite crear, instanciar nuevos objetos de la clase
Class
Palabra reservada Class que declarara clases
Null
Valor nulo o vacio / se puede usar para declarar cadenas vacias
Inicio
Inicio a bloque de estructura
Fin
Fin a bloque de estructura
Hastaque
Condicion de la sentencia repetir
Mtodo
Es un bloque de cdigo que contiene una serie de instrucciones
COMPILADORES (ELEMENTOS A USAR EN EL ANALIZADOR LEXICO)

Repetir
Ejecuta una sentencia o grupo de sentencia hasta que se
cumpla un condicin
Funcion
Mdulo de un programa separado del cuerpo principalque
realiza una tarea especfica y que puede regresar un valor a la
parte principal del programa u otra funcin o procedimiento
que la invoque
Import
Importar paquetes de clases del programa
system
Sistema
util
clase
lang
clase












COMPILADORES (ELEMENTOS A USAR EN EL ANALIZADOR LEXICO)





COMPONENTES LEXICOS
OPERADORES ARITMETICOS
COMPILADORES (ELEMENTOS A USAR EN EL ANALIZADOR LEXICO)








OPERADORS LOGICOS
#BOOL_AND && AND CONDICIOANL
#OPER_RESTA - OPERADOR
#OPER_DIVISION DIV OPERADOR
#OPER_MULT * OPERADOR
#OPER_POTENCIA ** OPERADOR
#OPER_SUMA + OPERADOR
#OPER_MOD % OPERADOR
#OPER_TERNARIO ?: OPERADOR
#POTENCIA ^ OPERADOR
#OPER_BOOLEANT True OPERADOR
#OPER_BOOLEANF False OPERADOR
#OPER_MODULO Mod OPERADOR
#EQUIVALENCIA
OPERADOR
#LIKE Like OPERADOR
COMPILADORES (ELEMENTOS A USAR EN EL ANALIZADOR LEXICO)

#BOOL_OR || OR CONDICIONAL
#BOOL_AND & AND NIVEL BITS
#BOOL_OR | OR NIVEL BITS
#NEGACION_L ! NEGACION
#NEGACION_P Not NEGACION




OPERADOROOES DE OPERADORS DE COMPARACIN COMPARACION
#MAYOR > EXPRESIONCOMPARACION
#MENOR < EXPRESIONCOMPARACION
#MENOR_IGUAL <= RELACION
#MAYOR_IGUAL >= RELACION
#IGUAL == RELACION
#DISTINTO1 != RELACION
#DISTINTO2 <> RELACION
#DISTINTO3 >< RELACION
#DISTINTO4 ~= RELACION
#OR_EXCLUYENTE ^ RELACION
#IGUAL_P := RELACION
#DESPLAZAMIENTOR >> DESPLAZAR
#DESPLAZAMIENTOL << DESPLAZAR
#DESPLAZAMIENTO_D_S_S >>> DESPLAZAR
COMPILADORES (ELEMENTOS A USAR EN EL ANALIZADOR LEXICO)




OPERADORES D OPERADORS DE ASIGNACINE ASIGNACION
#SUM_ASIG += ASIGNACION
#RES_ASIG -= ASIGNACION
#MUL_ASIG *= ASIGNACION
#DIV_ASIG /= ASIGNACION
#MOD_ASIG %= ASIGNACION
#AND_ASIG &= ASIGNACION
#OR_EXCLUYENTE_ASSIGN ^= ASIGNACION
#OR_INCLUYENTE_ASSIGN |= ASIGNACION
#DESPLAZAM_D_ASSIGN >>= ASIGNACION
#DESPLAZAM_I_ASSIGN <<= ASIGNACION
#LAMDBA => ASIGNACION
#ARROW -> ASIGNACION
#DECREMENTO -- DECREMENTO
#INCREMENTO ++ INCREMENTO
#ASIGNACIONPOTENCIA **= ASIGNACION
#ASIGNACION_PERL .= ASIGNACION
#ASIGNACION_SIG :: ASIGNACION
#ASIGNACION_SQL @ ASIGNACION
#ASIGNACION = ASIGNACION
#NEG_ASSIGN !! ASIGNACION_NEGACION



COMPILADORES (ELEMENTOS A USAR EN EL ANALIZADOR LEXICO)



OPERADORES DE ASOCIACION
#PARENTESIS_A ( AGRUPACION
#PARENTESIS_C ) AGRUPACION
#LLAVE_A { AGRUPACION
#LLAVE_C } AGRUPACION
#CORCHETE_A [ AGRUPACION
#CORCHETE_C ] AGRUPACION



OPERADORES ESPECIALES
#PUNTO_COMA ; ESPECIAL
#DOS_PUNTOS : ESPECIAL
#COMA , ESPECIAL
#GUION - ESPECIAL
#GUION_BAJO _ ESPECIAL
#COMPLENT_N_B ~ ENTERO_COMPLENT_N_B


COMPILADORES (ELEMENTOS A USAR EN EL ANALIZADOR LEXICO)




COMECOMENTARIOS
#COMENT1 // COMENTARIOS
#COMENT2 # COMENTARIOS
#COMENT3 /** COMENTARIOS
#COMENT4 */ COMENTARIOS
#COMENT5 * COMENTARIOS
#COMENT6 < COMENTARIOS
#COMENT7 <! COMENTARIOS
#COMENT8 -- COMENTARIOS



OPERADORES DE SECUENCIA
#SALTO \n NEWLINE
#RETORNO \r RETORNODECARRO
#TABULADORH \t TABULADORHORIZONTAL
#TABULADORV \v TABULADORVERTICAL



COMPILADORES (ELEMENTOS A USAR EN EL ANALIZADOR LEXICO)


OTROS COMPONENTES
#DOBLECOMILLA \" CADENA
#COMILLA " CADENA
#COMILLASIM CADENA
#TIPOA Is OPERADOR
#TIPOB As OPERADOR
#PRE $ ESPECIAL
#OPERADOROBJETOS New OPERADOR
#OPERADORNULL ? OPERADOR
#OPERADORVACIO {} OPERADOR
#CARACTER_ESCAPE \ ESPECIAL
#CARACTER_ESCAPE_TO \\ ESPECIAL
#COMPLEJO {$ ESPECIAL
#ISNOT Isnot NEGACION
#MIN <? MIN
#MAX >? MAX
#EOF Eof FIN_P
#IDENTIFICADOR a-zA-Z0-9

IDENTIFICADOR



REGLAS SINTCTICAS

COMPILADORES (ELEMENTOS A USAR EN EL ANALIZADOR LEXICO)

<programa_fuente> <acceso> class <Identificador> <#a_llave> <acceso> #main <#a_llave><cuerpo><#c_llave><#c_llave>| <acceso>
class <identificador><#a_llave><metodo> <acceso> #main <#a_llave><cuerpo><#c_llave><#c_llave>| <acceso> class
<identificador><#a_llave><metodo> <acceso> #main <#a_llave>e(vacio)<#c_llave><#c_llave>|<acceso> class
<identificador><#a_llave><funcion> <acceso> #main <#a_llave><cuerpo><#c_llave><#c_llave>
<acceso> public | private | protected| estatic
<Identificador> <Letra> | <Digito> | <Letra><Identificador> | <Digito><Identificador>
<Letra> a|b|c|d|e|f|g..|z|A|B|C|D|E|F|G|.|Z
<Digito> 0|1|2|3|4|5|6|8|9
<Signo> + | -
<Simbolo> | @ | # | $ | % | ^ | & | * | | | [ | ]
<#a_llave> {
<#c_llave> }
<Cuerpo> <declaracion><Sentencia><Cuerpo> | <declaracin><instruccin>| <instruccion>|e (vacio)| <comentario><cuerpo>
<declaracion><acceso><t_dato><identificador><#p_coma>|<acceso><t_dato><identificador><oper_asignacion><identificador>|
<t_dato><identificador><#p_coma>
<t_dato> <caracter>|<numerico>|<logico>|<automatico>|<tiempo>
<caracter> string | char
<numerico> int| double |decimal| float| byte| long| short
COMPILADORES (ELEMENTOS A USAR EN EL ANALIZADOR LEXICO)

<logico> boolean
<automatico> val
<tiempo> datetime
<#p_coma> ;
<#a_parentesis> (
<#c_parentesis> )
<instruccion> <identificador><operador><valor><#p_coma>|#print<#p_coma>
<sentencia> <sentencia if>|<sentencia while>| <sentencia switch>|<sentencia for>|<sentencia repeat>|<sentencia do while> |<sentencia eval> |
<sentencia cap>
<sentencia if> if <condicin if> <#a_llave><cuerpo><#p_coma><#c_llave>| if<condicin if><#a_llave>
<sentencia if><#c_llave> | if <condicion><#a_llave><sentencia if>else <sentencia if>| if <condicion><#a_llave><sentencia if>else<#a_llave>
<cuerpo><#p_coma><#c_llave><#c_llave>
<condicin if> <#a_parentesis><identificador><operador><valor><#c_parentesis>| <#a_parentesis><condicin if><operador><condicin
if><#c_parentesis>
<operador> <oper_comparacion>| <oper_logico>|<oper_aritmetico>|<oper_asignacion>
<oper_comparacion> < | > | == | >= | <= | != | <>
<oper_logico> #AND | #OR
<oper_aritmetico> + | - | * | / | %
COMPILADORES (ELEMENTOS A USAR EN EL ANALIZADOR LEXICO)

<oper_asignacion> =
<oper_inc> ++
<oper_dec> --
<valor> <letra>|<digito>|<letra><valor>| <valor><letra>|<simbolo>| <simbolo><valor>
<sentencia switch> switch<#a_parentesis><identificador><#c_parentesis><#a_llave><casos><#c_llave>
<casos> case<valor><#dos_puntos><cuerpo><#p_coma> break<#p_coma>|case<valor><#dos_puntos><cuerpo><#p_coma><casos>
<por defecto>case<valor> <#dos_puntos><cuerpo><#p_coma><por defecto> |case<valor><#dos_puntos>
<sentencia switch>break<#p_coma><casos>
<por defecto> default<#dos_puntos><cuerpo>Break<#p_coma>
<sentencia while> while condicin while><#a_llave><cuerpo><#c_llave>
<condicin while> <#a_parentesis><identificador><op_comparacion><valor><#c_parentesis>
<sentencia for> for<condicin for><#a_llave><cuerpo><next><#c_llave>
<condicin for> <#a_parentesis>int <identificador><oper_asignacion><digito><#p_coma><identificador><oper_comparacion>[<identificador>]
[<valor>]<#p_coma><identificador><oper_inc><#c_parentesis>
<sentencia repetir> repetir<#dos_puntos> <cuerpo> <#p_coma>hastaque<#dos_puntos> <condicin repetir> | repetir<#dos_puntos><cuerpo>
<#p_coma> <condicion while>
<condicin repetir> <#a_parentesis><identificador><oper_asignacion><digito><#c_parentesis>
<bloq_eval> eval <#a_llave><cuerpo><#c_llave>
COMPILADORES (ELEMENTOS A USAR EN EL ANALIZADOR LEXICO)

<bloq_capt> capt <#a_llave><cuerpo><c_llave>
<metodo> <acceso> void <identificador><#a_parentesis><parametros><#c_parentesis><#a_llave><cuerpo><#c_llave>
<parametros> <t_dato><identificador>| <t_dato><identificador><#p_coma><parametros>
<funcin> <t_dato><identificador><#a_parentesis><parametros><#c_parentesis><#a_llave><cuerpo><#c_llave>|<t_dato>
<identificador><#a_parentesis><parametros><#c_parentesis><#a_llave><cuerpo><return><#c_llave>
<declaracion> <array>
//declaracin de array
<array> <t_dato><identificador><#a_corchete><dimension><#c_corchete><#p_coma><#op_asignacion>new
<dimension> <digito>
<comentario> // | # | /** | */ | * |<| <! | --
<comando_constructor> <acceso> <identificador> <#a_llave> <parmetro> <#c_llave>
<comando> <identificador><oper_aritmetico><identificador>
<invocacion> <identificador><#punto>class<#a_parentesis><#c_parentesis>
<#punto> .
<comando _import> import #system<#punto><librera><#punto><#_comodin><#p_coma>
<libreria> utill | lang | javax


COMPILADORES (ELEMENTOS A USAR EN EL ANALIZADOR LEXICO)









COMPILADORES (ELEMENTOS A USAR EN EL ANALIZADOR LEXICO)






COMPILADORES (ELEMENTOS A USAR EN EL ANALIZADOR LEXICO)