Explorando los Lenguajes de Programación: Tipos, Traductores y Fases de Compilación

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 3,97 KB

Un lenguaje de programación consiste en un conjunto de reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos, respectivamente.

Tipos de Lenguajes

Los lenguajes más próximos a la arquitectura hardware se denominan lenguajes de bajo nivel, y los que se encuentran más cercanos a los programadores y usuarios se denominan lenguajes de alto nivel.

Lenguaje de Máquina

Este lenguaje interactúa directamente con el hardware y constituye el nivel más bajo de programación.

Traductores: Compiladores e Intérpretes

Cualquier programa que toma como entrada un texto escrito en un lenguaje llamado fuente y da como salida un programa equivalente en otro lenguaje (el lenguaje objeto) se le llama Traductor.

Dicho en forma simple, un compilador es un programa que puede leer un programa en un lenguaje (el lenguaje fuente) y traducirlo en un programa equivalente en otro lenguaje (el lenguaje destino).

Un compilador traduce todo el código fuente de un proyecto de software a código máquina antes de ejecutarlo.

Un intérprete es un programa informático que procesa el código fuente de un proyecto de software durante su tiempo de ejecución, es decir, mientras el software se está ejecutando, y actúa como una interfaz entre ese proyecto y el procesador.

Un intérprete siempre procesa el código línea por línea, de modo que lee, analiza y prepara cada secuencia de forma consecutiva para el procesador.

Otros Traductores

Preprocesador, ensamblador, enlazador.

Tipos de Compiladores

Compiladores de una pasada, Compiladores de múltiples pasadas y Compiladores JIT (Just-In-Time).

Analizador Léxico

Su principal función consiste en leer los caracteres de entrada y elaborar como salida una secuencia de componentes léxicos que utiliza el analizador sintáctico para hacer el análisis.

Comparación entre Intérpretes y Compiladores

Descripción

Intérprete

Compilador

Momento en que se traduce el código fuente

Durante el tiempo de ejecución del software

Antes de ejecutar el software

Procedimiento de traducción

Línea por línea

Siempre todo el código

Presentación de errores de código

Después de cada línea

En conjunto, después de toda la compilación

Velocidad de traducción

Alta

Baja

Eficiencia de traducción

Baja

Alta

Coste de desarrollo

Bajo

Alto

Lenguajes típicos

PHP, Perl, Python, Ruby, BASIC

C, C#, C++, Pascal

Fases de Compilación

  1. Análisis léxico
  2. Análisis sintáctico
  3. Análisis semántico
  4. Generación de código intermedio
  5. Optimización de código
  6. Generación de código

Conceptos Clave

  • Token: Categorías sintácticas más simples del lenguaje fuente que permiten clasificar las palabras que conforman el léxico del programa fuente.
  • Lexema: Cadena de caracteres que concuerda con un patrón que describe un componente léxico (token).
  • Patrón: Regla que describe el conjunto de lexemas que pueden representar a un determinado componente léxico (token) en los programas fuente.

Entradas relacionadas: