Está en la página 1de 3

TECNOLÓGICO NACIONAL DE MÉXICO.

CAMPUS LÁZARO CÁRDENAS,


MICHOACÁN.
ALUMNO:
Néstor Soto Ríos
DOCENTE:
MCTC. Araceli Galván Montelongo
ASIGNATURA:
Lenguajes y Autómatas 1.
TEMA:
“1.4 Estructura de un Traductor”
UNIDAD:
1
FECHA DE ENTREGA:
24 de septiembre de 2020.
1. ¿Qué es un Traductor?
Un traductor es un mediador entre dos entidades: emisoras y
receptoras, los mediadores enmascaran la complejidad y
heterogeneidad de los lenguajes. Un traductor convierte un lenguaje de
entrada (código fuente) a una de salida (código objeto).
Un traductor se define como un programa que traduce o convierte
desde un texto o programa escrito en un lenguaje fuente hasta un texto
o programa equivalente escrito en un lenguaje destino produciendo, si
cabe, mensajes de error. Los traductores engloban tanto a los
compiladores (en los que el lenguaje destino suele ser código máquina)
como a los intérpretes (en los que el lenguaje destino está constituido
por las acciones atómicas que puede ejecutar el intérprete).
2. Estructura de un Traductor.

El programador escribe el código fuente con el lenguaje de


programación elegido, y, en un proceso de compilación, este código
fuente se convierte en código objeto.
Ejemplos de traductores son los ensambladores y los compiladores.
Ensambladores
El programa ensamblador es el programa que realiza la traducción de
un programa escrito en ensamblador a lenguaje máquina.
Tipos de ensambladores:
*Ensambladores básicos.
*Ensambladores modulares, o macro ensambladores
*Ensambladores modulares 32-bits o de alto nivel
Compiladores
Un compilador es un programa informático que traduce un programa
escrito en un lenguaje de programación a otro lenguaje de
programación, es decir programa que permite traducir el código fuente

Soto Ríos Néstor 51-T 2


de un programa en lenguaje de alto nivel, a otro lenguaje de nivel inferior
(lenguaje máquina).

3. Fases de la estructura del Traductor.


En el proceso de traducción se identifican dos fases principales:
* Fase de análisis Como Primera instancia, se lee el programa de izquierda a
Análisis Léxico derecha, agrupa a los tokens, es decir, a todos los caracteres
que tienen un significado.
Elimina todos aquello que no sea un token y comprueba que
todo haya sido escrito correctamente.

Después, en segunda instancia, lo que se hace es agrupar todo la


información o los tokens de manera jerárquica. Esto se puede
Análisis Sintáctico lograr mediante recursividades, recorridos de árboles y métodos
de ordenamiento, siguiendo ciertas reglas.

Y ya para finalizar la fase de análisis decimos que se debe hacer


Análisis Semántico todo un análisis general, se debe agrupar de manera semántica,
es decir, que exista una relación, por lo cual, se deben corregir
todos esos errores.
* Fase de Síntesis
Completando las 3 fases anteriores, sin errores ni truncamientos, permite hacer una representación
intermedia, es decir, es fácil de producir y fácil de traducir al programa objeto.

De ahí se va al Optimizador de Código, que tiene como objetivo medir los tiempos de ejecución y la
cantidad de memoria utilizada. Su función principal es realizar muchas optimizaciones para poder
obtener un código más eficiente. Es por esto que, el código generado, sea igual que el de partida,
pero optimizado al 200%.

La fase final de un compilador es la generación de código objeto, que por lo general consiste en
código de máquina relocalizarle o código ensamblador.

Soto Ríos Néstor 51-T 3

También podría gustarte