Você está na página 1de 3

Desarrollo de firmware sobre lenguaje de alto nivel.

Realizando la transicin de lenguaje de programacin ensamblador a un lenguaje de mayor nivel, como lo es C,


encontramos que C es un lenguaje multipropsito que puede ser implementado sobre cualquier hardware, a diferencia del
lenguaje ensamblador, el cual vara dependiendo del microprocesador que se est usando.
Adicionalmente, el lenguaje C es ms sencillo e intuitivo, y tiene herramientas que pueden simplificar notablemente la tarea
del desarrollador, como la implementacin sencilla de operaciones matemticas, inclusin de libreras estndar que
contienen las funciones ms usadas, entre otras.
Desarrollo:
El archivo en lenguaje C se compila usando un compilador especfico para el procesador sobre el que se realizar la
implementacin. La salida del compilador es cdigo ensamblador, el cual se ensambla, generando un archivo de cdigo
objeto que posteriormente se enlaza con libreras del compilador a travs del linker. Luego del enlace, se obtiene finalmente
cdigo de mquina que puede ser cargado directamente a la memoria de programa.1
Cdigo Objeto:
En programacin, el cdigo objeto es el resultado de la compilacin del cdigo fuente. Puede ser en lenguaje mquina o
bytecode, y puede distribuirse en varios archivos que corresponden a cada cdigo fuente compilado.3
Enlazador/Ligador:
Un enlazador (en ingls, linker) es un programa que toma los objetos generados en los primeros pasos del proceso de
compilacin, la informacin de todos los recursos necesarios (biblioteca), quita aquellos recursos que no necesita, y enlaza
el cdigo objeto con su(s) biblioteca(s) con lo que finalmente produce un fichero ejecutable o una biblioteca. 4

Estructura de compilacin de un programa de alto nivel:1

Archivo de
cdigo fuente

Zilog Z80

Compilador

GNU GCC Compiler


Analizador:2
Lxico.
Sintctico.
Semntico.

Code::Blocks (.c)

Lenguaje ensamblador

Ensamblador

.asm

Cdigo objeto
.obj

Libreras del
compilador

Linker
.lib

.s19
.map

Memoria del
programa
Cdigo de mquina

Instrucciones al
microprocesado
r

Referencias:
1. Andrs Felipe Quiceno Manrique, Desarrollo de firmware sobre lenguaje de alto nivel, Blogspot,
publicado el 2 de noviembre de 2010, consultado el 22 de septiembre de 2016,
http://trucoselectronicayprogramacion.blogspot.mx/2010/11/desarrollo-de-firmware-sobrelenguaje.html.
2. Compilador, Wikipedia, modificada por ltima vez el 10 agosto 2016, consultado el 22 de
septiembre de 2016, https://es.wikipedia.org/wiki/Compilador.
3. Definicin de Cdigo objeto, ALEGSA, modificada por ltima vez el 5 de diciembre de 2010,
consultado el 22 de septiembre de 2016, http://www.alegsa.com.ar/Dic/codigo%20objeto.php.
4. Enlazador, Wikipedia, modificada por ltima vez el 11 feb 2014, consultado el 22 de septiembre
de 2016, https://es.wikipedia.org/wiki/Enlazador.

Você também pode gostar