Download - Introduccion a Traductores
![Page 1: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/1.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 1/18
Traductores
IntroducciónINDICE GENERAL
Dilema de la computación Definición compilador Breve historia El proceso de compilación Fases del compilador
![Page 2: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/2.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 2/18
Introducción(Dilema)
Dilema de la computación
Ha una !recha entre la clase de pensamiento "ue utili#a la $ente
para resolver pro!lemas la manera en "ue las computadoras hansido dise%adas para resolverlos&
Las computadoras son circuitos electrónicos con memoria "ue
operan so!re datos por medio de despla#amiento de !its' "ue
e(ecutan operaciones aritm)ticas ló$icas' constan deinstrucciones "ue controlan el flu(o de e(ecución*
![Page 3: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/3.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 3/18
Introducción(Dilema)
Dilema de la computación
La resultados de la investi$ación en solución de pro!lemas han
desem!ocado en len$ua(es de pro$ramación "ue nos permiten
escri!ir soluciones con un nivel de a!stracción alto*
As+ "ue ha medida "ue la investi$ación de pro!lemas la tecnolo$+a
en dise%o de computadoras avan#an, se a!re mas la !recha*
-.ue hacer/
Los traductores son la solución, a "ue act0an como un puente de
esta !recha*
![Page 4: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/4.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 4/18
Introducción(Definición compilador)
Definición traductor
Es un pro$rama "ue traduce un len$ua(e de alto nivel a una
representación de !a(o nivel*
Ha dos tipos de traductores&
compiladores
Int)rpretes
En este curso haremos enfasis en los compiladores*
![Page 5: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/5.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 5/18
Introducción(Breve historia)
Breve historia
Los primeros compiladores se desarrollan en los a%os 123s
Fortran 4F5Rmula 6RANslator7 en considerado como el primerlen$ua(e compilado*
8ohn Bac9us fue "uien dise%o e implementó Fortran
6omó :; a%os hom!re desarrollarlo*
![Page 6: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/6.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 6/18
Introducción(El proceso…)
El proceso de compilación
![Page 7: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/7.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 7/18
Introducción(Fases)
Fases del compilador
Análisis
sintáctico
Análisis
léxico
Optimiza
ción
Análisis
semánticoGen
código
Prep.
Gen.
código
<ane(o de ta!la
•Tabla de símbolos
•Tabla de literales
•Tabla de ciclos
•Tabla de
representaciones
Manejo deerrores !"
![Page 8: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/8.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 8/18
Introducción(Análisis L!ico)
An=lisis L)>ico
Análisis
sintáctico
Análisis
léxico
Optimiza
ción
Análisis
semánticoGen
código
Prep.
Gen.
código
<ane(o de ta!la
•Tabla de símbolos
•Tabla de literales
•Tabla de ciclos
•Tabla de
representaciones
Manejo deerrores !"
To#ens
![Page 9: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/9.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 9/18
Introducción(Análisis "intáctico)
An=lisis ?int=ctico
Análisis
sintáctico
Análisis
léxico
Optimiza
ción
Análisis
semánticoGen
código
Prep.
Gen.
código
<ane(o de ta!la
•Tabla de símbolos
•Tabla de literales
•Tabla de ciclos
•Tabla de
representaciones
Manejo deerrores !"
Arbol de Análisis
GramaticalTo#ens
![Page 10: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/10.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 10/18
Introducción(Análisis "emántico)
An=lisis ?em=ntico
Análisis
sintáctico
Análisis
léxico
Optimiza
ción
Análisis
semánticoGen
código
Prep.
Gen.
código
<ane(o de ta!la
•Tabla de símbolos
•Tabla de literales
•Tabla de ciclos
•Tabla de
representaciones
Manejo deerrores !"
Análisis
sintáctico
Análisis
léxico
Optimiza
ción
Análisis
semánticoGen
código
Prep.
Gen.
código
<ane(o de ta!la
•Tabla de símbolos
•Tabla de literales
•Tabla de ciclos
•Tabla de
representaciones
Manejo deerrores !"
Arbol de Análisis
GramaticalTo#ens
$%
![Page 11: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/11.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 11/18
Traductores(análisis semántico)
An=lisis ?em=ntico. &etermina el signi'icado del
programa mediante la creación de tablas de
símbolos( )eri'icando si las )ariables *tilizadas
+an sido de'inidas.
,as tareas principales son-
@erificación est=tica Generación de la representacion intermedia
![Page 12: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/12.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 12/18
Traductores(análisis semántico)
@erificación est=tica&
onsistencia de tipos
Arreglos &e'inición de )ariables
Generación de la representación intermedia&
s *an 'orma alternati)a del árbol de análisisgramatical( / se le llama árbol abstracto de
sintaxis o árbol abstracto de estr*ct*ra.
![Page 13: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/13.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 13/18
![Page 14: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/14.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 14/18
Introducción(#ptimi$acion)
5ptimi#ación
Cam!ia la representacion intermedia de modo "ue la fase final de
$eneración de códi$o producir= códi$o "ue se e(ecutar= mas
r=pido u ocupar= menos espacio*
6ipos de optimi#ación
:* ropa$acion constante
* Eliminación de su!e>presiones constantes
![Page 15: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/15.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 15/18
Introducción(%reparación)
reparación para la $eneración de códi$o
Análisis
sintáctico
Análisis
léxico
Optimiza
ción
Análisis
semánticoGen
código
Prep.
Gen.
código
<ane(o de ta!la
•Tabla de símbolos
•Tabla de literales
•Tabla de ciclos
•Tabla de
representaciones
Manejo deerrores !"
Asignación de
Mem / registros
![Page 16: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/16.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 16/18
Introducción(%reparación)
reparación para la $eneración de códi$o
Cuando se e(ecuta un pro$rama, los valores para sus varia!les
e>presiones se almacenan en memoria re$istros*
Asi$nación de memoria
Asi$nación de re$istros
![Page 17: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/17.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 17/18
Introducción (&eneración)
Generación de códi$o
Análisis
sintáctico
Análisis
léxico
Optimiza
ción
Análisis
semánticoGen
código
Prep.
Gen.
código
<ane(o de ta!la
•Tabla de símbolos
•Tabla de literales
•Tabla de ciclos
•Tabla de
representaciones
Manejo deerrores !"
ódigo
![Page 18: Introduccion a Traductores](https://reader034.vdocument.in/reader034/viewer/2022052309/5695cf541a28ab9b028d9aaa/html5/thumbnails/18.jpg)
7/23/2019 Introduccion a Traductores
http://slidepdf.com/reader/full/introduccion-a-traductores 18/18
Introducción (Fin)
Fin de presentación