You are on page 1of 13

LENGUAJES Y AUTMATAS

EQUIPO # 1

INSTITUTO
UNIDAD 1:
- OLIVARES MAR FRANCISCO
ANLISIS SEMNTICO
II
TECNOLOGICO
SUPERIOR DE
PANUCO

1
2
CONTENIDO
INTRODUCCIN................................................................................................................ 3
1. ANALISIS SEMNTICO................................................................................................ 4
1.1 ARBOLES DE EXPRESIONES.................................................................................4
1.1.1 ARBOLES EN INFORMATICA........................................................................... 6
1.1.2 DEFINICION RECURSIVA.................................................................................6
1.1.3 REPRESENTACION DE UN ARBOL GENERAL...................................................7
1.1.4 ARBOL BINARIO............................................................................................. 9
1.1.5 NOTACION POLONESA................................................................................. 10
CONCLUSIN.................................................................................................................. 20
BIBLIOGRAFA................................................................................................................. 21

3
INTRODUCCIN

En el desarrollo de la primera unidad correspondiente a la asignatura de Lenguajes y


autmatas se explicar el proceso del anlisis semntico, es decir, conceptualmente como
se realiza utilizando herramientas de representacin tales como rboles para brindar un
mejor entendimiento.

Se dar a conocer los conceptos involucrados con el anlisis semntico, utilizando arboles
de expresiones que ejemplifican algunos casos explicados en cada uno de los puntos que
lo requieren; para lograr verificar que los procesos involucrados en los procesos internos
en el anlisis se realiza comprobaciones de tipos en expresiones.

Otro de los procesos dentro del anlisis se encuentra el esquema de traduccin que ser
explicado de manera clara para entender dicho proceso; como es de imaginarse para que
el anlisis semntico logre concretarse correctamente se verifica que los smbolos en las
expresiones dadas pertenezcan a la tabla de smbolos se un lenguaje en especfico

En el ltimo punto se dar a conocer nuestras conclusiones como equipo referente al


desarrollo de esta unidad que a continuacin se presentar.

4
1. ANLISIS SEMNTICO

La fase de anlisis semntico revisa el programa fuente para tratar de encontrar

errores semnticos y rene la informacin sobre los tipos para la fase posterior de

generacin de cdigo. En ella se utiliza la estructura jerrquica determinada por la

fase de anlisis sintctico para identificar los operadores y operandos de

expresiones y proposiciones.

Un componente importante del anlisis semntico es la verificacin de tipos. Aqu, el

compilador verifica si cada operador tiene operandos permitidos por la

especificacin del lenguaje fuente. Por ejemplo, las definiciones de muchos

lenguajes de programacin requieren que el compilador indique un error cada vez

que se use un nmero real como ndice de una matriz. Sin embargo, la

especificacin del lenguaje puede permitir ciertas coerciones a los operandos, por

ejemplo, cuando un operador aritmtico binario se a plica a un nmero entero y a un

nmero real. En este caso, el compilador puede necesitar convertir el nmero entero

real.

1.1 RBOLES DE EXPRESIONES

Expresin: secuencia de tokens.

Token: puede ser un operando o un operador.

Operador: +, -, *, /.

Propiedades:

Cada hoja es un operando.


El nodo raz o los nodos internos son operadores.
Los subrboles son subexpresiones en los nodos que el nodo raz es un

operador.

5
Reglas de precedencia: + (positivo), - (negativo).

*, /, %

+, -

Ejemplo: a*(b+c)+d

los parntesis estn implcitos en el rbol.


La prioridad se determina solo por parntesis.
La expresin completa se sita con parntesis.

Figura 1. Diagrama de expresiones usando notacin polonesa.

6
1.1.1 RBOLES EN INFORMATICA

El rbol es una estructura de datos fundamental en informtica, muy bien

adaptada a la inteligencia artificial y al anlisis sintctico.


En la inteligencia artificial, las declaraciones de las reglas se efectan segn el

esquema premisas-conclusin, que corresponde al establecimiento de relaciones

de dependencia que se puedan poner en forma arborescente.


La resolucin de un problema se reduce entonces al recorrido de un rbol, con el

objeto de establecer un camino entre las hiptesis y las conclusiones generales.


En el anlisis sintctico, se definen gramticas formales que permiten

descomponer las expresiones. As se puede definir una fase como las

combinaciones de un grupo nominal y de un grupo verbal (verbo y

complemento), este grupo verbal se descompone en un verbo y en un grupo

nominal, formado por un nombre y una frase. La estructura jerrquica de una

expresin puede ser descrita por un esquema arborescente.


Un compilador podr, en el curso del tratamiento del texto de un programa,

utilizar rboles para decodificar tales expresiones.

1.1.2 DEFINICIN RECURSIVA.

Un rbol T es un conjunto finito de uno a ms nudos tales que:


Existe un nudo especial denominado raz del rbol.
Los otros nudos son particiones en m>0 conjuntos disjuntos T1, T2,TM

y cada conjunto es un rbol. Se dice entonces que T1, T2,.TM son sub

arboles de la raz.
Esta definicin recursiva, es decir que se define un rbol en trminos de rboles.
El nmero de subrboles de un nudo terminal se le llama nivel del nudo.
Un nudo de grado cero se designa nudo terminal u hoja.
El nivel de un nudo con relacin al rbol T se define de la siguiente forma:
La raz de T es de nivel 0
Los otros nudos tienen el nivel de la raz del subrbol que los contiene

ms.
Ejemplo:

7
Sea un rbol T que consta de siete nudos A, B, C, D, E, F, G, donde A es la raz

del rbol y tal que los grados de los diversos nudos son: grado de A=2, grado de

C=m, grado de F=1, grado de los otros nudos=0 (hojas).

1.1.3 REPRESENTACIN DE UN RBOL GENERAL

La representacin y nomenclatura de los


NIVELES DE UN arbol
rboles se realiza con las tpicas notaciones

de las relaciones familiares en los rboles


NIVEL 0:
A = RAIZ
genealgicos:
NIVEL 1:
{B}, {C, D, F, G} = 2 subrboles.
NIVEL 2:
{D}, {E}, {F, G}= 3 subrboles
NIVEL 3:
{G}= 1 subrbol.

Figura 2. Niveles de un rbol.

Padre, hijo, hermano, ascendente, descendente, etc. Un ejemplo es el rbol

general de la figura 2.
Las definiciones a considerar son:
Raz del rbol, todos los rboles que no estn vacos tienen un nico nudo

raz. Todos los dems elementos o nudos derivan o descienden de l. El

nudo raz no tiene padre, es decir, no es hijo de ningn nudo.


Nudo son los vrtices o elementos del rbol.

8
Nudo terminal u hoja, es aquel nudo que no contiene ningn subrbol, en

la figura son hojas los nudos E, F, K, L, H, I y J.

Figura 3. rbol general.

A cada nudo que no es hoja se le asocia a uno o varios subrboles

llamados descendientes o hijos. De igual forma, cada uno tiene asociado

un antecesor o ascendiente llamado padre.


Los nudos de un mismo padre se le llaman hermanos.
Los nudos con uno o dos subrboles no son hojas ni raz se llaman nudos

internos.
Un conjunto con dos o ms rboles se llama bosque.
Se denomina camino el enlace entre dos nudos consecutivos, y rama es

un camino que termina en una hoja.


Altura de un rbol es el nmero mximo de nudos de una rama. Equivale

al nivel ms alto de los nudos ms uno.


El peso de un rbol es el nmero de nudos terminales.

1.1.4 RBOL BINARIO

Existe un tipo de rbol denominado rbol binario que puede ser implementado

fcilmente en un ordenador.
Un rbol binario es un conjunto finito de cero o ms nudos tales que:
Existe un nudo llamado raz del rbol.

9
Cada nudo puede tener 0, 1 o 2 subrboles, conocidos como subrbol

izquierdo y subrbol derecho.


Estos dos subrboles son bien diferenciados. (Fig.3)
Sean dos rboles binarios:
Subrbol izquierdo: tiene una raz A y una hoja B.
Subrbol derecho: tiene una raz A y una hoja B

(a) (b)
Figura 4. a) Subrbol izquierdo, b) Subrbol derecho.

Estos dos subrboles binarios son diferentes, mientras que es cualquier rbol

sern idnticos.

1.1.5 NOTACIN POLONESA.

Como ejemplo de aplicacin de los mtodos considerados, evaluaremos la

expresin algebraica.


y=6 tg ( 3 x ) +

Que se encuentra representada por el rbol de la figura 5.
El primer rbol est construido de la siguiente forma:
Cada operador binario (+, -, *, /,..) constituye una raz de un rbol.
Cada operador (1n,..) constituye la raz de un rbol cuya rama es el operando.
Las constantes y las variables forman las hojas del rbol.
Si se recorre el rbol, se obtendr las listas de los nudos en el orden siguiente:
+ 6 tg 3 x / x

Si se recorre el sentido contrario obtendremos la lista de los nudos en el orden

siguiente:

6 3 x tg x / +

10
+

* /

6 tg

* X
Figura 5. Ejemplo de notacin polonesa.

3 X

CONCLUSIN

Nuestras conclusiones acerca del desarrollo de la unidad 1 es que gracias a dicha


actividad logramos capturar y entender nuevos conceptos y definiciones que al inicio del
curso de esta asignatura no contbamos.

En el desarrollo de esta unidad se describieron los arboles de expresiones as como cada


una de sus caractersticas que nos brindan conocimiento para poder entender el
procedimiento del anlisis en una representacin grfica mediante rboles.

Para el proceso del anlisis conlleva otros procesos ms relacionados tales como la
generacin de la tabla de smbolos, la comprobacin de tipos en expresiones, un esquema
de traduccin, entre otros.

11
La mayora de los procesos deben de esperar a que finalice uno para poder iniciar, adems
de que algunos otros procesos en el anlisis se repiten hasta validar las expresiones
correctas.

BIBLIOGRAFA

Arbones, M., & E.A. (1992). Tecnicas graficas en productica. Barcelona, Espaa:
MARCOMBO.

Cataln, J. R. (2010). Compiladores. Teora e implementacin. Madrid, Espaa:


Alfaomega.

Malisani Arbones, E. A. (1992). Tecnicas graficas en productica. Barcelona, Espaa:


MARCOMBO.

Snchez Dueas, G., & Valverde Andreu, J. A. (1990). Compiladores e interpretes. Un


enfoque pragmatico. Madrid: Daz de Santos.

V. Aho, A., Sethi, R., & D. Ullman, J. (1990). Compiladores. Principios, tcnicas y
herramientas. Massachusetts, EUA: Addison Wesley Longman.

12
13