dasef
Páginas: 2 (372 palabras)
Publicado: 12 de octubre de 2014
Lenguaje Intermedio. Tipo (1)
Es una representación más abstracta y uniforme que un lenguaje máquina concreto. Su misión es descomponer las expresiones complejas enbinarias y las sentencias complejas en sentencias simples. Ventajas: • Permite una fase de análisis (análisis semántico) independiente de la máquina. • Se pueden realizar optimizaciones sobre el códigointermedio (Las complejas rutinas de optimización son independientes de la máquina). Desventajas: • Pérdida de eficiencia (no permite una compilación de una sola pasada). • Introduce en el compiladoruna nueva fase de traducción.
Lenguaje Intermedio. Tipo (2)
Tipos de lenguajes intermedios: • Árbol sintáctico. • Árbol sintáctico abstracto. Todos los nodos del árbol representan símbolosterminales. Los nodos hijos son operandos y los nodos internos son operadores. • Grafo dirigido acíclico (GDA). • Notación posfija. • Definición de una máquina abstracta. • N-tupla: Cada sentenciadel lenguaje intermedio consta de N elementos: (Operador, Operando1, Operando2, … , Operando N?−1) Los más usuales son los tercetos (tripletas) y los cuartetos (cuádruplas), llamados también códigode tres direcciones.
Lenguaje Intermedio. Tipo (3)
Tripletas: Ejemplo: d = a + b * c [1] (*, b, c) [2] (+, a, [1]) [3] (=, d, [2]) , , Cuartetos: Ejemplo: d = a + b * c (*, b, c, temp1) (+, a,temp1, temp2) (=, temp2, —, d)
No existe un único lenguaje intermedio en todos los compiladores, sino que cada empresa que diseña compiladores suele tener su propio lenguaje intermedio. Lautilización de un lenguaje intermedio permite construir en, mucho menos tiempo un compilador para otra máquina y también permite construir compiladores para otros lenguajes fuente generando códigos para la mismamáquina.
Un lenguaje intermedio es una notación que permite representar algoritmos (secuencias de operaciones) y que recibe ese nombre por tener un nivel semántico medio situado entre el alto...
Leer documento completo
Regístrate para leer el documento completo.