Muchos estudiantes de ingeniería se quejan de que tienen que aprender lenguaje ensamblador. Pero no hay forma de entender realmente cómo funciona un ordenador, si no has escrito al menos par de scripts sencillos en este lenguaje de programación.
El lenguaje ensamblador, assembly o simplemente asm, es un lenguaje que permite programar casi directamente el hardware de los ordenadores y otros dispositivos electrónicos.
Digo casi pues, en realidad, el ordenador solo entiende el código binario. Pero programar utilizando 0’s y 1’s resulta extremadamente difícil. De ahí surge la necesidad de “traducir” esos 0’s y 1’s, de modo que los humanos los podamos entender. Y eso es justo lo que hace el lenguaje ensamblador: sustituir secuencias de 0’s y 1’s por etiquetas comprensibles.
Para que lo entiendas mejor, pongamos el siguiente ejemplo de instrucción en código binario y ensamblador:
Binario
10110000 01100001
Ensamblador (x86)
MOV a1, 061h
Esta instrucción lo que hace es asignar el valor hexadecimal 061h (01100001 binario, 97 decimal) al registro ‘A1’ del microprocesador (arquitectura x86). Con este ejemplo, es fácil de comprenderqueel lenguaje de ensamblador consiste, básicamente, en “disfrazar” el código binario con fines de manipulación.
Por las razones anteriores, el lenguaje ensamblador está clasificado como de bajo nivel. ¿Qué significa esto? En función de su grado de abstracción, es decir por el grado de “omisión” de los detalles, los lenguajes de programación se pueden clasificar en:
Como ves, los lenguajes de alto nivel se abstraen (omiten) del hardware, mientras que los de bajo nivel (de abstracción) trabajan con las instrucciones y registros del dispositivo.
Eso significa que hay algunas diferencias, por ejemplo, entre el lenguaje ensamblador para un microprocesador x84, y el usado para un microcontrolador 16F84, ya que los sets de instrucciones son diferentes. De ahí que el programador deba conocer muy bien el dispositivo que desea programar.
Aunque hoy día existen numerosas herramientas para programar hardware utilizando lenguajes de alto nivel, a veces se impone la necesidad de hacerlo en lenguaje ensamblador, más que nada por razones de eficiencia.
Por eso, es ampliamente utilizado para:
Además, el asm es muy recomendable si quieres desarrollar habilidades de programación, debido a su complejidad y al hecho de que te obliga a “pensar como una máquina”.
Llegados hasta aquí, ¿qué piensas del lenguaje ensamblador? ¿Te gustaría aprenderlo? ¿O prefieres compartir este artículo para que tus amigos programadores sepan más del tema?
Esta entrada ha sido publicada el 24/01/2020 05:21
En el mundo del desarrollo web, jQuery se ha convertido en una herramienta esencial para… Leer más
Si eres como la mayoría de las personas, es probable que confíes en tu conexión… Leer más
En la era digital actual, nuestros dispositivos móviles se han convertido en una parte integral… Leer más