# data[].attributes.body
Surge en la decada de 1940, cuando fueron creadas las primeras computadoras modernas.

# data[].attributes.body
*Velocidad

*Eficiencia de tamaño

*Flexibilidad

# data[].attributes.body
*Tiempo de programación.
*Programas fuente grandes.
*Peligro de afectar recursos inesperadamente.
*Falta de portabilidad.

# data[].attributes.body
El código escrito en lenguaje ensamblador posee una cierta dificultad de ser entendido ya que su estructura se acerca al lenguaje máquina, es decir, es un lenguaje de bajo nivel.

El lenguaje ensamblador es difícilmente portable, es decir, un código escrito para un microprocesador, puede necesitar ser modificado.

Los programas hechos por un programador experto en lenguaje ensamblador son generalmente mucho más rápidos y consumen menos recursos del sistema (memoria RAM y ROM).

Con el lenguaje ensamblador se tiene un control muy preciso de las tareas realizadas por un microprocesador por lo que se pueden crear segmentos de código difíciles y/o muy ineficientes de programar en un lenguaje de alto nivel.

También se puede controlar el tiempo en que tarda una rutina en ejecutarse, e impedir que se interrumpa durante su ejecución.