Dicho lenguajes son, básicamente, una forma de comunicarse con los
ordenadores para decirles lo que tienen que hacer. Cada uno de ellos tiene sus
normas de desarrollo y formulación específicas pero, en realidad, los
ordenadores tan sólo entienden un lenguaje llamado "código máquina".
Así, los lenguajes de programación son tan sólo un intérprete entre el
programador y el ordenador. Por supuesto, cuanto más directamente podamos
comunicarnos con la máquina mejor nos entenderá, y más complejas acciones
podremos ordenarle que haga.
En base a ello, los lenguajes de programación pueden dividirse en de "alto y
bajo nivel", en función de que su sintaxis sea más comprensible para el
programador o para la máquina. Así, un lenguaje de "alto nivel" utiliza
expresiones que son fácilmente comprensibles por la mayoría de los
programadores, pero no tanto por el ordenador. Visual Basic y C son buenos
representantes de este tipo de lenguajes.
Por el contrario, las expresiones que usan los lenguajes de "bajo nivel" están
más cercanas al código máquina, pero resultan muy difíciles de entender para
cualquier persona que no haya participado en el proceso de programación. Uno de
los lenguajes de este tipo más conocidos -y más potentes que existen- es el
ensamblador.
Pero para explicar el empleo de los lenguajes de programación a lo largo de la
historia de los virus, es necesario hacer referencia a la evolución sufrida por
el hardware. Es fácil de comprender que un antiguo procesador de 8 bits no tiene
la potencia de los modernos procesadores de 64 bits, y esto es algo que no puede
superar ni el mejor de los lenguajes.
En la presente y posteriores entregas de esta serie, descubriremos los
diferentes lenguajes de programación que los autores de virus han ido empleando
a lo largo de la historia de la informática:
- Los precursores de los virus: Core Wars
Como ya vimos en la primera entrega de esta serie, unos programas desarrollados
por ingenieros de una importante empresa de telecomunicaciones, y a los que
denominaron Core Wars, son considerados como los precursores de los virus
modernos. La informática estaba en sus inicios y los lenguajes de programación
apenas se habían desarrollado. Por esa razón, sus autores emplearon un lenguaje
prácticamente igual al código máquina para programarlo.
Como dato curioso, parece ser que uno de los programadores de Core Wars fue
Robert Thomas Morris, cuyo hijo programó -años después- el "gusano de Morris".
Este código malicioso se hizo extraordinariamente famoso debido a que fue capaz
de infectar 6.000 ordenadores, cifra nada desdeñable para el año 1988.
- Los nuevos gurús de los 8 bits y el lenguaje ensamblador.
Los nombres Altair, IMSAI y Apple en USA, así como Sinclair, Atari y Commodore
en Europa, hacen recordar tiempos pasados en los que una incipiente generación
de apasionados por la informática "peleaban" por hacerse un hueco en el mundo de
la programación. Ser el mejor requería un profundo conocimiento de código
máquina y ensamblador, ya que los intérpretes de lenguajes de alto nivel
consumían demasiado tiempo de ejecución. Por ejemplo, BASIC era un lenguaje
relativamente fácil de aprender. Es más, desarrollar un programa con este
lenguaje resultaba cómodo y rápido. El problema es que tenía muchas
limitaciones.
Ese fue el origen de que surgieran dos ramas de programadores. Una de ellas
estaba conformada por aquellos que utilizaban ensamblador, y la otra por quienes
se decantaron por lenguajes de alto nivel (BASIC y PASCAL, principalmente).
Ciertamente, los aficionados a la informática de esa época disfrutaban más
haciendo software útil que malware. Sin embargo, en 1981 aparece el que puede
considerarse el primer virus de 8 bits. Su nombre era "Elk Cloner", y estaba
programado en código máquina. Era capaz de infectar sistemas Apple II y, además,
mostraba un mensaje en el momento en que infectaba un equipo
|