Traductores DDS con CUP
Introducción
Los siguientes pasos facilitarán el seguimiento de la animación:
 Primero se mostrará la expresión lógica que se va a analizar.
 Posteriormente se desarrollará dicha cadena en forma de árbol.
 A continuación se podrá observar como los atributos sintetizados se van
transfiriendo en el árbol hasta llegar a la raíz y , por tanto, obteniendo la
solución final. Este árbol está dividido en varias partes para una mayor
visibilidad y comprensión, primero se analizará la parte izquierda y luego
la derecha.
Cadena de prueba
• La expresión lógica que vamos usar para analizar el comportamiento de
nuestro traductor es:
(false and (74 >= 34)) xor 45 < 78 ;
Árbol completo
• El árbol que representa dicha expresión es el que se muestra a continuación,
en las siguientes diapositivas se explicará su funcionamiento:
A
L
L
J
xor
J
(
L
num
J
L
J
C
)
(
and
L
)
45
J
false
C
num
num
>=
74
34
<
num
78
Animación DDS
J
(
L
)
J
C
Num.valor=78
Num.valor=34
num
num
>=
74
34
Animación DDS
J
(
L
)
J
C.Valor = num.valor >= num.valor=true
C
num
num
>=
74
34
Animación DDS
J
(
L
)
J.Valor = true
J
C
num
num
>=
74
34
Animación DDS
J
(
L
)
L.valor = true
J
C
num
num
>=
74
34
Animación DDS
J.valor = true
J
(
L
)
J
C
num
num
>=
74
34
Animación DDS
L
J
(
)
L
L
J.valor = false
J
false
and
J
Animación DDS
L
J
(
)
L
L.valor = false
L
J
false
and
J
Animación DDS
L
J
(
)
L
L
J
false
and
L.valor =L.valor and J.valor= false
J
Animación DDS
L
J.valor = false
J
(
)
L
L
J
false
and
J
Animación DDS
L.valor = false
L
J
(
)
L
L
J
false
and
J
Animación DDS
A
L
L
J
xor
C
Num.valor = 78
Num.valor = 45
num
num
<
45
78
Animación DDS
A
L
L
J
C.valor =
num.valor<num.valor=true
xor
C
num
num
<
45
78
Animación DDS
A
L
J.valor = true
L
J
xor
C
num
num
<
45
78
Animación DDS
A
L.valor = L.valor xor J.valor = true
L
L
J
xor
C
num
num
<
45
78
Animación DDS
A.valor = true
A
L
L
J
xor
C
num
num
<
45
78
Download

DDS7