lunes 11 de abril de 2011

El compilador

Proceso de compilación de un programa


En esta etapa se traduce el código fuente escrito en lenguaje C++ a código maquina (comprensible para la computadora), para llevar a cabo este proceso se requiere un programa llamado compilador, construido para un lenguaje en específico, en nuestro caso C++.

Cada lenguaje de programación tiene unas reglas para la construcción de un programa, las cuales se le denomina sintaxis.


El compilador lee el código fuente del programa, del archivo de texto creado y comprueba que el programa sigue las reglas de sintaxis del lenguaje.


Si el compilador encuentra errores, los presentará en pantalla, una vez corregidos con ayuda del editor, se vuelve a compilar sucesivamente hasta que no se produzcan errores.

Cuando se compila el programa, el compilador traduce el código fuente C++ a código maquina llamado también código objeto, el código objeto consta de instrucciones maquina e información de como cargar el programa en memoria antes de su ejecución.

El código objeto que se obtiene se almacena en un archivo independiente, normalmente con la extensión .obj, este código traducido no es suficiente para ejecutar el programa, se requiere incluir los archivos de biblioteca.

Normalmente un programa consta de diferentes partes de código que se han compilado independientemente, por consiguiente puede haber varios archivos objeto (.obj), aquí es donde entra en acción un programa denominado enlazador, que toma el archivo objeto y las partes necesarias de la biblioteca y construye un archivo ejecutable con la extensión .exe, este archivo ejecutable contiene todo el código maquina necesario para ejecutar el programa.

Proceso de compilación de un programa

Existen varios compiladores para el lenguaje C++, uno de ellos es el Dev-C++ de BloodshedSoftware (www.bloodshed.net), Es un entorno integrado de desarrollo IDE ("Integrated Development Environment") distribuido con licencia GNU para la creación de aplicaciones C/C++ utilizando los compiladores GNU gcc/g++ (incluidos en el paquete). Dispone de muchas opciones comunes en entornos "de pago" como por ejemplo un editor altamente configurable con posibilidad de auto-completar las palabras clave, capaz de mantener proyectos grandes de distintos tipos, como aplicaciones Windows (gráficas); aplicaciones de consola (modo texto), y construcción de librerías estáticas y dinámicas (DLLs). 
La versión para Windows incluye MinGW, un conjunto de utilidades para desarrollar aplicaciones en Windows utilizando una interfaz POSIX (Unix/Linux). 


Página de descarga: http://www.bloodshed.net/dev/devcpp.html

0 comentarios:

Publicar un comentario en la entrada