Codigo Máquina

El hardware de computadora solo puede manejar instrucciones binarias sin formato, se llama lenguaje de máquina o código de máquina. En los primeros días de la informática, las personas debían escribir programas completos en código máquina. Una descripción formal de alto nivel de un programa se conoce como Pseudocódigo.

A finales de 1940 e inicios de los 50, programadores había desarrollado lenguaje de nivel ligeramente superior. Los códigos de operación recibieron nombres simples, llamados mnémonicos, que fueron seguidos por operandos, para formar instrucciones.

ASSEMBLER

Crearon programas auxiliares reutilizables, en binario, que leen instrucciones basadas en texto, y ensamblarlos en las instrucciones binarias correspondientes de forma automática. Este programa se llama ASSEMBLER. Este lee un programa escrito en lenguaje ensamblador y lo convierte en lenguaje de máquina. Con el tiempo ASSEMBLER adquirió nuevas características que facilitaron la programación, una muy ingeniosa fue describir automáticamente las direcciones JUMP.

Y así, ASSEMBLER elimina las direcciones de salto sin procesar y permite insertar pequeñas etiquetas. Grace Hopper fue una de las primeras programadoras del Harvard Mark 1, Diseñó un lenguaje de alto nivel llamado "Arithmetic Language Version 0" o A-0 para abreviar..

Los lenguajes assembler tiene mapeo directo, uno a uno, con instrucciones de máquina. Pero una sola línea de código de alto nivel podía dar lugar a docenas de instrucciones que ejecutaría la CPU. Para realizar esta compleja traducción, Hopper construyó el primer compilador en 1952. Este es un programa especializado que transforma el códifo fuente escrito en un lenguaje de programación en un lenguaje de bajo nivel, como en lenguaje ensamblador o lenguaje de máquina, que el CPU puede procesar directamente. No hay asignación de memoria o manipulación de registros, el programador solo crea abstracciones para la ubicación de memoria y estás se conocen como variables, a las que les damos nombres.

FORTRAN y COBOL

FORTRAN, derivado "Formula Translation", fue lanzado por IBM unos años más tarde, en 1957, y llegó a dominar la temprana programación informática. FORTRAN solo podía compilarse y ejecutarse en máquinas IBM. Y la mayoría de lenguajes y compiladores en la década de 1950 solo podían ejecutarse en un solo tipo de computadora. Si actualizaba su computadora, a menudo debía escribir de nuevo todo el código.

Debido a esto, en 1959 - El comité de idiomas de Sistemas de Datos, asesorados por Grace Hopper, para desarrollar un lenguaje de programación común que pudiese ejecutarse en diferentes máquinas. El resultado fue un lenguaje de alto nivel orientado a negocios llamado COBOL. Para lidiar con las diferencias entre HARDWARE, cada uno necesitaba su compilador COBOL y la idea principal es que el código COBOL pudiese ejecutarse en cualquiere computadora, esta noción se llama "Escribe una vez, ejecuta en cualquier lugar".

Gracias a estos lenguajes la informática pasó de ser una disciplina engorrosa y esotérica a un propósito general y herramienta accesible.

En 1960, teníamos lenguajes como ALGOL, LISP, BASIC.
En los años 70, PASCAL, C y Smalltalk fueron lanzados.
En los 80, C++, Objective-C y Perl.
En los 90, Python, Ruby y JAVA.
Y el nuevo milenio ha visto el surgimiento de Swift, C# y GO.