Skip to main content

¿Qué es un lenguaje de programación de bajo nivel?

Existe cierto desacuerdo con respecto a la definición exacta de un lenguaje de programación de bajo nivel, pero todas las definiciones comparten algunas cosas en común con respecto a las características de dicho lenguaje de computadora. Esas características incluyen: similitud con el código binario, conocimiento requerido del papel de la unidad central de procesamiento (CPU) y la capacidad del programador para controlar el hardware a través del lenguaje. Algunas personas consideran que cualquier lenguaje de computadora es de bajo nivel si no es similar a un idioma que la gente habla. Otros consideran que cualquier lenguaje que requiera que el programador entienda el funcionamiento complejo y muy complejo de la CPU es de bajo nivel. Debe recordarse que un lenguaje de programación verdaderamente de bajo nivel generalmente se ajusta a todas estas descripciones.

El código binario, también llamado código de máquina, es el único lenguaje que la CPU, o el "cerebro" de una computadora, entiende y "habla". El código de máquina, si lo ve una persona, se parece a muchas secuencias de los números 1 y 0; representan un estado de encendido o apagado, como una luz que se enciende o se apaga. El código de un lenguaje de programación de alto nivel se vería muy diferente del código de máquina en que contiene símbolos y palabras reales que se usan en un idioma, generalmente inglés, que la gente habla. Sin embargo, esto no significa que alguien que no sea programador de computadoras entienda el código en un lenguaje de alto nivel más de lo que lo haría en un lenguaje de bajo nivel.

Una de las mayores ventajas de un lenguaje de programación de bajo nivel es la capacidad y la libertad de ejercer un control preciso sobre cosas como el uso de la memoria y el tiempo de procesamiento. Esto significa que los programas escritos en un lenguaje de bajo nivel deberían hacer un uso muy eficiente de los recursos del sistema, lo que puede ser altamente deseado al codificar sistemas con recursos muy limitados. Tal ventaja no viene sin un precio. Los desarrolladores e ingenieros que codifican en un lenguaje de programación de bajo nivel deben tener una buena comprensión de las funciones de la CPU para poder escribir instrucciones que afecten la memoria y el tiempo de procesamiento.

La codificación en un lenguaje de programación de bajo nivel consume mucho tiempo y es tediosa. Es comprensible que aumente el costo involucrado en tener un programa desarrollado en dicho lenguaje, porque el equivalente de tan solo dos líneas de código en un lenguaje de alto nivel puede requerir hasta 20 líneas en un lenguaje de programación de bajo nivel. Tal desarrollo lento hace que los lenguajes de bajo nivel sean principalmente adecuados para programas muy pequeños. Casi nunca se utilizan para el desarrollo de programas más grandes.