Un component principal de l’ordinador és el programa, o sigui, el conjunt d’instruccions que li indiquen com ha de fer una feina. Sense programa, no hi ha res a fer: no hi ha ordinador.

PROGRAMAR ORDINADORS

En una cuina, cada plat es prepara seguint una recepta. Sense recepta, escrita en un paper o memoritzada pel cuiner, no hi ha plat. Doncs bé, una recepta és un algoritme.

Un algoritme és un conjunt d’instruccions per fer una cosa: resoldre un problema, realitzar un càlcul… Si no hi ha l’ajuda d’una calculadora, per multiplicar dos números s’ha de fer servir l’algoritme que s’aprèn a escola.

Hi ha algoritmes per multiplicar, dividir o extreure arrels, indispensables per al càlcul manual.

Un exemple geomètric: l’algoritme per inscriure un hexàgon en un cercle.

Es dibuixen uns cercles del mateix radi, l’un darrere l’altre. Les sis interseccions resultants determinen els vèrtexs de l’hexàgon. El mètode serveix per a qualsevol cercle.

Euclides, el savi grec, va formular un dels algoritmes més antics que es coneixen: l’algoritme per calcular el màxim comú divisor de dos números.

Això és un croquis d’aquest algoritme. Apliquem-lo, per exemple, per trobar el màxim comú divisor d’aquests dos números. La cosa consisteix a fer una sèrie de divisions encadenades fins que no se’n poden fer més. Funciona per qualsevol parella de números enters.

El terme algoritme prové del nom del matemàtic àrab al-Khwarizmi, autor d’una colla de procediments per operar amb números decimals, els números que ell mateix va contribuir a difondre.

Els algoritmes van fer el salt a la fama quan l’anglès Charles Babbage va projectar la màquina analítica, la primera calculadora programable.

I és que, abans del programa, hi ha l’algoritme. La qüestió va ser objecte d’investigació per part d’una de les poques dones científiques del segle XIX: Ada, filla del poeta Lord Byron.

Ada Byron va estudiar, en particular, la programació de la màquina analítica. Deia que, gràcies al programa, aquesta màquina teixeix formes algebraiques igual que el teler teixeix flors i fulles.

La màquina analítica no es va fer mai realitat (això n’és una reconstrucció moderna). Però Ada Byron és considerada la primera programadora de la història.

Els primers ordinadors de veritat, a mitjans del segle XX, es programaven amb números, l’idioma natural dels ordinadors.

En aquella època, les xinxes es ficaven enmig dels circuits i malmetien el funcionament dels programes. D’aquí prové el terme anglès bug (xinxa), que actualment es fa servir per referir-se a l’error d’un programa.

Programar amb números era una tasca molt feixuga, per això de seguida van aparèixer els llenguatges de programació, que van permetre fer servir lletres i frases.

El Fortran va ser un dels primers. Com tot llenguatge de programació, el Fortran portava associat un programa especial, anomenat compilador, que traduïa les instruccions textuals a instruccions numèriques -les úniques que entén l’ordinador.

Des d’aleshores, la programació és el treball digital per excel·lència. Però, com treballa un programador?

Imaginem que s’ha de fer un programa per classificar una sèrie de números.

El primer de tot és decidir l’algoritme.

A continuació, s’escriu el programa en un determinat llenguatge de programació. Aquesta és la versió en llenguatge BASIC.

Després, el compilador el tradueix a instruccions d’ordinador, a números. Finalment, s’executa i es comprova si funciona.

El més significatiu és que un ordinador pot executar programes amb tota mena de propòsits. Per això, es parla de l’ordinador com una màquina universal.

Efectivament, pot fer qualsevol cosa, sempre que es disposi del programa corresponent.