Curso de C++ Básico

Curso de C++ Básico

Diana Martínez

Diana Martínez

El proceso de compilación

2/18
Recursos

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Regístrate o inicia sesión para participar.

Aportes 7

Preguntas 2

Ordenar por:

Si deseas aprender más sobre el proceso de compilación y su funcionamiento interno, tengo una charla en youtube dónde lo explico. 😄
https://www.youtube.com/watch?v=AbimakhzW0A&t=5609s

Usuarios de linux

Código fuente, código objeto y código ejecutable

Como es de suponer, la programación consiste en escribir programas. Los programas son procedimientos que, al ejecutarse de forma secuencial, se obtienen unos resultados. En muchos sentidos, un programa es como una receta de cocina: una especificación secuencial de las acciones que hay que realizar para conseguir un objetivo. Cómo
de abstractas sean estas especificaciones es lo que define el nivel de abstracción de un lenguaje.
.
Los programas se pueden escribir directamente en código ejecutable, también llamado código binario o código máquina. Sin embargo, el nivel de abstracción tan bajo que ofrecen estos lenguajes haría imposible que muchos proyectos actuales pudieran llevarse a cabo. Este código es el que entiende la máquina donde se va a ejecutar el programa y es específico de la plataforma.
Por ejemplo, máquinas basadas en la arquitectura PC no ofrecen el mismo repertorio de instrucciones que otras basadas en la arquitectura PPC o ARM. A la dificultad de escribir código de bajo nivel se le suma la característica de no ser portable.
.
Por este motivo se han creado los compiladores. Estos programas traducen código fuente, programado en un lenguaje de alto nivel, en el código ejecutable para una plataforma determinada. Un paso intermedio en este proceso de compilación es la generación de código objeto, que no es sino código en lenguaje máquina al que le falta realizar el proceso de enlazado.

Te dejo este link si es que quieres entnder el proceso de compilacion un poco mas en profundidad. (Long Life To Wikipedia XD)
.
https://es.wikipedia.org/wiki/Compilador

Vengo del futuro, alguien me ayuda?

PROCESO PARA EJECU TAR CODIGO
.

  1. EDITOR: Escribir nuestro codigo en nuestro editor favorito
  2. PREPROCESADOR: Un preprocesador toma nuestro codigo fuente y este los junta en otro o varios archivos segun sea necesario para facilitar los procesos siguientes
    .
  3. COMPILADOR: Al igual que el preprocesador, el compilador es un programa externo a nuestro codigo fuente, que toma el/los archivos ya preprocesados y los transforma en un codigo de objetos (codigo ilegible para humanos pero mas entendible para la CPU)
    .
  4. LINKER: Si tu codigo fuente requiere librerias o dependencias externas, aqui se crea ese link entre las librerias y tu codigo (luego de que nuestro codigo haya sido preprocesado y compilado)
    .
  5. LOADER: El loader arranca la ejecucion de nuestro programa e importa las librerias que pueden ser utilizadas de forma dinamica
    .
  6. EJECUCION: Nuestro programa ya se encuentra en memoria ram listo enviar esos bytes a la CPU y ser procesado