Post on 09-Apr-2018
8/7/2019 Deber Final Compildores
http://slidepdf.com/reader/full/deber-final-compildores 1/14
UINVERSIDAD NACIONAL DE LOJA
AREA DE LA ENERGIA, LAS INDUSTRIAS Y LOS RECURSOS NATURALES NO RENOVABLES
NOMBRE: JUAN DIEGO ROMERO FERNANDEZ
CARRERA: SISTEMAS MODULO: IX PARALELO: A
FECHA: 16/02/2011
DEBER FINAL DE COMPILADORES
FORMULAS BÁSICAS DE FÍSICA
En el siguiente ejemplo se realiza el analizador léxico, sintáctico y semántico
del cálculo de las formulas básicas del Movimiento Rectilíneo Uniforme
Variado MRUV y del Tiro Horizontal TH.
FORMULAS
a= e=Vt
ÌV= V - Vo h=g t2/2
V= Vo + at V= e/t
Vo= V at t= raiz (2h/g)
ÌV
t
8/7/2019 Deber Final Compildores
http://slidepdf.com/reader/full/deber-final-compildores 2/14
2
AUTOMATA FINITO NO DETERMINISTA
8/7/2019 Deber Final Compildores
http://slidepdf.com/reader/full/deber-final-compildores 3/14
3
AFN-AFDV Vo / a - t + e h g t
22 V
2V+Vo ÌV Vm
A B C D E D F D G H D D D D D D D I
B D J K L D K J K D D D D D D D D D
C M D D N O D D D D D D P Q D D D D
D D D D D D D D D D D D D D D D D D
E R R S D R S D D D D D D D D D D D
F T T U V T D D D D W D X D D D D D
G Y D D D D D D D D D D D D D D D D
H D D Z D D D D D D AA D Z D D D D D
I AB AB AC D D D AB D D D D AC D D D D DJ D D D D D D D D D D D D D D D D D
K D D D D D D D D D D D D D D D D D
L D D D D D J D D D D D D D D D D D
M D D D D D D D D D D D D D D D D D
ND D D D D M D D D D D D D D D D D
O D D D D D D D D D D D D D D D AD D
P D D D D D D D D D AE D D D D D D D
Q D D D D D D D D D D D D D D D AD D
R D D D D D D D D D D D D D D S D D
8/7/2019 Deber Final Compildores
http://slidepdf.com/reader/full/deber-final-compildores 5/14
5
SUBCONJUNTOS
A={0,1,2} B={3} C={12,28} D={} E={3} F={15,24} G={18} H={21} I={9} J={8}
K={34} L={7} M={14} N={13} O={14,31} P={29} Q={31} R={4} S={5} T={16}
U={17,26} V={17} W={26} X={25} Y={19} Z={33} AA={22} AB={10} AC={11}
AD={32} AE={30} AF={27} G={20}
8/7/2019 Deber Final Compildores
http://slidepdf.com/reader/full/deber-final-compildores 6/14
ANALIZADOR LEXICO
ANALIZADOR SINTÁCTICO
G={Vt,Vn,S,R}
Vt={9.8,2,/,+,-, ,numero,m,s, s2}
Vn={FORMULA,VELOCIDAD,TIEMPO,ESPACIO,ALTURA,VELOCI,VELOINICIAL,VELOCIMEDIA,a,NUM,
ÌV ,t, V, Vo, e, h, t2,,VELOCI1,VELOCI2,VELOCIN1,VELOCIN2,SENTENCIA,RAIZ,
V2
SUMVEL GRALTURA d i l l 1 l 2 VELALTURA l 3}
TOKENS LEXEMAS
OPERADOR_DIVISION /
OPERADOR_RESTA -
OPERADOR_SUMA +
OPERADOR_RAIZ
GRAVEDAD g
VELOCIDAD V
TIEMPO t
VELOCIDAD_MEDIA Vm
VELOCIDAD_INICIAL Vo
DESPLAZAMIENTO ÌV
ESPACIO e
ALTURA hDOS 2
TIEMPO_CUADRADO t2
VELOCIDAD_CUADRADO V2
ACELERACION a
MEDIDA m
MEDIDA m/s
MEDIDA m/s2
MEDIDA s
8/7/2019 Deber Final Compildores
http://slidepdf.com/reader/full/deber-final-compildores 7/14
VELOCIDAD= VELOCI|VELOINICIAL|VELOMEDIA
VELOCI= VELOCI1|VELOCI2
TIEMPO= TIEMPO1|TIEMPO2
ACELERACION=a
a= a|NUM
a= ÌV/t
ÌV= V-Vo
ESPACIO= e
e= e|NUM
e=Vt
ALTURA= h
h= h|NUM
h=g t2/2
VELOCI1=V
V=V|NUM
V= Vo + at
VELOCI2= V
V= e/t
VELOCINICIAL= VELOCIN1|VELOCIN2
VELOCIN1= Vo
Vo= Vo|NUM|0
Vo= V at
8/7/2019 Deber Final Compildores
http://slidepdf.com/reader/full/deber-final-compildores 8/14
VELALTURA= V2-2gh
VELOCIMEDIA= Vm
Vm= SUMVEL/2
SUMVEL= V+Vo
TIEMPO1= t
t= t|NUM
t=ÌV/a
TIEMPO2= t
t=GRALTURA
GRALTURA= 2h/g
g= 9.8 medidag
medidag= letra1/letra3
NUM= entero medida |decimal medida
entero= numero
decimal= numero
medida= letra1/letra2|letra1|letra2|letra1/letra3
letra1= m
letra2= s
letra3= s
2
8/7/2019 Deber Final Compildores
http://slidepdf.com/reader/full/deber-final-compildores 9/14
ARBOL DE DERIVACIÓN
ACELERACION
a
a
ÌVFORMULA /
t
V Vo-
NUM
NUMNUM
entero medidaentero medida
entero medida
numero
numero
numero
letra1 letra2/ letra1 letra2/
letra2
m sm s
s
S
8/7/2019 Deber Final Compildores
http://slidepdf.com/reader/full/deber-final-compildores 10/14
ANALIZADOR SEMANTICO
Producciones
S= FORMULA
FORMULA= VELOCIDAD | ACELERACION |TIEMPO|ESPACIO|ALTURA
VELOCIDAD= VELOCI|VELOINICIAL|VELOMEDIA
VELOCI= VELOCI1|VELOCI2
TIEMPO= TIEMPO1|TIEMPO2
ACELERACION=a
a= a|NUM
a= ÌV/t
ÌV= V-Vo
ESPACIO= e
e= e|NUM
e=Vt
ALTURA= h
h= h|NUM
h=g t2/2
VELOCI1=V
V=V|NUM
V= Vo + at
VELOCI2= V
8/7/2019 Deber Final Compildores
http://slidepdf.com/reader/full/deber-final-compildores 11/14
Vo= V- at
VELOCIN2= Vo
Vo= SENTENCIA
SENTENCIA= RAIZ
RAIZ= VELALTURA
VELALTURA= V2-2gh
VELOCIMEDIA= Vm
Vm= SUMVEL/2
SUMVEL= V+Vo
TIEMPO1= t
t= t|NUM
t=ÌV/a
TIEMPO2= t
t=GRALTURA
GRALTURA= 2h/g
g= 9.8 medidag
medidag= letra1/letra3
NUM= entero medida |decimal medida
entero= numero
decimal= numero
medida= letra1/letra2|letra1|letra2|letra1/letra3
letra1= m
8/7/2019 Deber Final Compildores
http://slidepdf.com/reader/full/deber-final-compildores 12/14
Reglas Semánticas
Print (FORMULA.VAL)
FORMULA.VAL = VELOCIDAD.VAL | ACELERACION.VAL |TIEMPO.VAL |ESPACIO.VAL |ALTURA.VAL
VELOCIDAD.VAL = VELOCI.VAL |VELOINICIAL.VAL |VELOMEDIA.VAL
VELOC I.VAL = VELOCI1.VAL |VELOCI2.VAL
TIEMPO.VAL = TIEMPO1.VAL |TIEMPO2.VAL
ACELERACION.VAL =a.VAL
a.VAL = a.VAL |NUM.VAL
a.VAL = ÌV.VAL /t.VAL
ÌV.VAL = V.VAL -Vo.VAL
ESPACIO.VAL = e.VAL
e.VAL = e.VAL |NUM.VAL
e.VAL =V.VAL t.VAL
ALTURA.VAL = h.VAL
h.VAL = h.VAL |NUM.VAL
h.VAL =g.VAL t2.VAL /2
VELOCI1.VAL =V.VAL
V.VAL =V.VAL |NUM.VAL
V.VAL = Vo.VAL + a.VAL t.VAL
VELOCI2.VAL = V.VAL
V.VAL = e.VAL /t.VAL
8/7/2019 Deber Final Compildores
http://slidepdf.com/reader/full/deber-final-compildores 13/14
VELOCIN2.VAL = Vo.VAL
Vo.VAL = SENTENCIA.VAL
SENTENCIA.VAL = RAIZ.VAL
RAIZ.VAL = VELALTURA.VAL
VELALTURA.VAL = V2.VAL -2g.VAL h.VAL
VELOCIMEDIA.VAL = Vm.VAL
Vm.VAL = SUMVEL.VAL /2
SUMVEL.VAL = V.VAL +Vo.VAL
TIEMPO1.VAL = t.VAL
t.VAL = t.VAL |NUM.VAL
t.VAL =ÌV.VAL /a.VAL
TIEMPO2.VAL = t.VAL
t.VAL =GRALTURA.VAL
GRALTURA.VAL = 2h.VAL /g.VAL
g.VAL = 9.8 medidag.VAL
medidag.VAL = letra1.VAL /letra3.VAL
NUM.VAL = entero.VAL medida.VAL |decimal.VAL medida.VAL
entero.VAL = numero.VAL
decimal.VAL = numero.VAL
medida.VAL = letra1.VAL /letra2.VAL |letra1.VAL |letra2.VAL |letra1.VAL /letra3.VAL
letra1.VAL = m
letra2 VAL = s
8/7/2019 Deber Final Compildores
http://slidepdf.com/reader/full/deber-final-compildores 14/14
14
numero.VALEX= 2 Letra2.VALEX= s numero.VALEX= 2 Letra2.VALEX= s
S.VALEX=19.6 m
FORMULA.VALEX= 19.6 m
ALTURA.VALEX= 19.6 m
h.VALEX= 19.6 m
h.VALEX= 19.6 m
g.VALEX= 9.8 m/s2 t
2.VALEX= 4s
2/ 2
9.8 medida.VALEX= m/s2
Letra1.VALEX= m Letra3.VALEX= m/s2 /
Letra1.VALEX= 2s Letra1.VALEX= 2s
NUM.VALEX= 2s NUM.VALEX= 2s
entero.VALEX= 2 medida.VALEX= s entero.VALEX= 2 medida.VALEX= s