Apuntes
Sintaxis
Conjunto de reglas que determinan si las sentencias de un programa están bien formadas o no
Criterios Sintácticos
■ Legibilidad
■ Facilidad de escritura
■ Facilidad de traducción
■ Ausencia de ambigüedad
Elementos Sintácticos
■ Set de Caracteres
■ Identificadores
■ Símbolos para operadores
■ Palabrasclaves y reservadas
■ Comentarios
■ Abreviaciones
■ Espacios
■ Delimitadores
■ Formatos Fijo y Libre
■ Expresiones
■ Sentencias
■ Estructura de Unidades de programa
Gramática
Representa la definición formal de la sintaxis de un lenguaje
Consta de un conjunto de reglas que especifican las NORMAS de escritura para formar estructuras en un lenguajeMetalenguaje
Gramática formal destinada a la descripción de un lenguaje
• BNF (Backus-Naur-Form)
• Diagramas sintácticos
• CBL (COBOL-Like)
Semántica
▪ Sintaxis ( ¡Cómo se expresa un concepto!
▪ Semántica ( ¡Qué significa ese concepto!
▪ Se define como un conjunto de reglas que describen el comportamiento de un lenguaje en tiempo de ejecución
Procesador
Es unamáquina capaz de ejecutar acciones expresadas en algún lenguaje concreto. Actualmente, el único lenguaje concreto que existe es el lenguaje de máquina.
Traductor
Es un decodificador que acepta programas escritos en algún lenguaje fuente y genera programas, funcionalmente equivalentes, en algún lenguaje objeto
Compilador
Es un traductor cuyo
■ lenguaje fuente es un lenguaje de alto nivel■ lenguaje objeto es un lenguaje intermedio orientado a la máquina
Ensamblador
Es un traductor cuyo
■ Lenguaje fuente es un lenguaje ensamblador (representación simbólica del lenguaje de máquina)
■ Lenguaje objeto es el lenguaje de máquina del computador
Intérprete
Es un procesador cuyo lenguaje concreto es un lenguaje de alto nivel
Diferencias
CompiladorIntérprete
Componentes de un ODD (Objetos de Datos)
■ Nombre: Sintácticamente, es un identificador (exceptuando los literales)
■ Atributos: Determinan las propiedades de un nombre, siendo el más importante el Tipo
■ Referencia: La referencia es la dirección de memoria que contiene un valor asociado a un nombre
■ Valor: Es unoperteneciente al conjunto conocido como tipo
Declaraciones
Es una sentencia de programa que provee al traductor del lenguaje información sobre los atributos de una variable
Binding
Binding (ligadura) es la acción de asociar
Ligadura en:
• Lenguajes fuertemente tipados: Las reglas de tipo son estrictamente impuestas, tanto en tiempo de compilación como en tiempo de ejecución
•Lenguajes débilmente tipados: Las reglas de tipo NO son impuestas, aunque existan declaraciones implícitas o explícitas de tipos de datos
Lenguajes fuertemente tipados
Ligadura estática, anticipada ó en tiempo de compilación
■ Asociación de un Tipo a una variable
■ Se crean los descriptores
■ ( N + T )
Lenguajes débilmente tipados
Ligadura dinámica, tardía óen tiempo de ejecución
■ Asociación de un Valor a una variable
■ Un Tipo está ligado a un valor
■ Un valor está representado a partir de cierta Referencia
■ Asociar a un Nombre de variable una Referencia en la cual existe un Valor de cierto Tipo
■ ( ( T + V ) + R ) + N
Operaciones
Función de transformación de argumentos (datos) de ciertostipos) en resultados de otros tipos
Por ejemplo, + : (float, int) (float)
/ : (int, int) (int)
== : (float, float) (boolean)
& : (char) (ref (char))
Expresiones
Una expresión es un conjunto de operadores y operandos cuyo objetivo es la generación de un valor
Sintaxis en expresiones
Notación prefija (polaca)
■ Recorrido preorden (RID)...
Regístrate para leer el documento completo.