Análisis semántico

Páginas: 38 (9273 palabras) Publicado: 18 de marzo de 2013
CUADERNO DIDACTICO Nº
Borrador

ANALISIS SEMANTICO

EN PROCESADORES

DE LENGUAJE

(Borrador)

Juan Manuel Cueva Lovelle

Catedrático de E.U. de Lenguajes y Sistemas Informáticos
Departamento de Informática
Universidad de Oviedo
Noviembre-2000 (Borrador)

Análisis semántico en procesadores de lenguaje

1 INTRODUCCION
Se entiende por semántica como el conjunto de reglas queespecifican el significado de cualquier sentencia
sintácticamente correcta y escrita en un determinado lenguaje.
En los apartados siguientes se estudiarán las distintas formas de especificar sintácticamente los lenguajes de programación y la forma de llevarlas a cabo dentro del procesador de lenguaje.

2 ESPECIFICACIONES SEMANTICAS DE LOS LENGUAJES DE PROGRAMACION
Existen dos formas paradescribir las especificaciones semánticas de un lenguaje de programación: especificación natural
y especificación formal.
La especificación natural de la semántica de un lenguaje de programación, se basa en utilizar el lenguaje natural para
especificar las características semánticas del lenguaje.
La especificación formal puede dividirse en dos grandes grupos:
- especificación por medio degramáticas atribuidas o gramáticas con atributos.
- utilización de metalenguajes de especificación semántica.

2.1 Especificación natural o informal
La especificación natural de la semántica de un lenguaje de programación es describir mediante un lenguaje natural sus
características semánticas, que no sean deducibles de la gramática BNF que describe sintácticamente el lenguaje.
El analizador semánticodeberá comprobar las especificaciones semánticas relatadas en lenguaje natural y las especificaciones semánticas derivadas de la sintaxis del lenguaje de programación.

2.1.1 Compatibilidad de tipos
La compatibilidad de tipos (type checking) es la principal especificación semántica derivada de la sintáxis del lenguaje.

2.1.2 Rutinas semánticas
Las especificaciones semánticas descritas enlenguaje natural, no tienen reglas fijas para ser implementadas en el
analizador semántico. Normalmente, lo que se hace es incorporar rutinas (procedimientos o funciones) denominadas
semánticas, que comprueban las especificaciones descritas en lenguaje natural. Dependiendo de la complejidad de la especificación, unas veces estas rutinas semánticas serán verdaderos procedimientos o funciones, y enotros casos serán simplemente
algunas sentencias intercaladas entre las específicas del análisis sintáctico.

2.2 Especificación formal
La especificación formal de los aspectos semánticos de los lenguajes de programación se basa en la definición
metamatemática, y no en la definición por medio del lenguaje natural. Es, por tanto, una especificación mucho más precisa, sin
embargo requiere eluso de unas herramientas que pueden dividirse en dos grandes grupos:
- Gramáticas atribuidas o con atributos.
- Lenguajes de especificación semántica.

-1-

Análisis semántico en procesadores de lenguaje

2.2.1 Gramáticas atribuidas o gramáticas con atributos
Las gramáticas con atributos o atribuidas, fueron definidas originalmente por Knuth (1968) para definir las especificacionessemánticas de los lenguajes de programación. Una gramática atribuida se caracteriza por:
1.- La estructura sintáctica del lenguaje se define mediante una gramática libre de contexto.
2.- Cada símbolo de la gramática, tiene asociado un conjunto finito de atributos. Ejemplo:
.a.b.c
siendo a, b y c atributos.
Cada atributo puede tomar un conjunto de valores (posiblemente infinito). El valor de unatributo describe una propiedad
dependiente del contexto del símbolo en cuestión
3.- Cada regla de producción debe de especificar como se modifican los atributos con su aplicación.
4.- Una gramática atribuida describe un sublenguaje (del lenguaje definido) mediante las condiciones de contexto que
deben ser cumplidas por los valores de los atributos. Una sentencia sintácticamente correcta...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Analisis semantico
  • Análisis semántico
  • Analisis semantico
  • Analisis semantico
  • Analisis semantico
  • ANÁLISIS SEMÁNTICO
  • Analisis Semantico
  • análisis semantico

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS