Sunteți pe pagina 1din 17

Representaciones de

Cdigo Intermedio
Unidad 2
Importancia de la representacin
intermedia:
El front-end de un compilador construye una representacin
intermedia del programa fuente a partir de la cual el back-end
genera el programa destino.


Representaciones mas importantes:
Arboles abstractos o rboles sintcticos
Durante el anlisis sintctico se crean los nodos del rbol sintctico
para representar construcciones de programacin importantes. A
medida que avanza el anlisis, se agrega informacin a los nodos en
forma de atributos asociados a estos. La eleccin de atributos
depende de la traduccin a realizar
Grafos dirigidos acclicos (GDAs)
Cdigo de tres direcciones
El cdigo de tres direcciones es una secuencia de pasos de programa
elementales, como la suma de dos valores. A diferencia del rbol no
hay una estructura jerrquica. Esta representacin se usa cuando se
va a realizar alguna optimizacin de cdigo importante. En este caso
se divide la extensa secuencia de instrucciones de tres direcciones
que forman un programa, en bloques bsico, que son secuencias de
instrucciones que siempre se ejecutan secuencialmente sin
bifurcaciones.
Cudruplos
TRIPLETAS
Un triple tiene solo dos campos op, arg1 y arg2, al usar tripletas nos
referimos al resultado de una operacin x op y por su posicin en vez
de usar un nombre temporal explcito. Por lo tanto en vez de usar el
nombre temporal t1 en representacin de tripletas nos referiremos a
la posicin (0).
Un GDA y la representacin de tripletas son equivalentes.

S-ar putea să vă placă și