Les eines informàtiques

L’ordinador, la base de la informàtica

El terme informàtica designa normalment l’àmbit de desenvolupament de la ciència i la tecnologia relatiu a la representació i el tractament de la informació. Comprèn tant la recerca teòrica com l’aplicació pràctica, desenvolupades normalment a les universitats i als centres especialitzats, públics o privats, de molts països occidentals.

L’ordinador, dit també processador o computadora (de l’anglès computer), és l’instrument operatiu més important de què se serveix la informàtica. Però, si preguntéssim a un expert en informàtica qui va inventar l’ordinador, de ben segur que li costaria trobar el nom d’una sola persona o dir el nom del país d’origen. Aquesta màquina, de què tant es parla avui, no té una paternitat ben definida i n’existeixen diversos possibles progenitors. De fet, els seus orígens es troben a Europa, on la contribució de molts investigadors i científics va fer possible posar en comú diverses idees que es van millorar en successives fases de recerca i de desenvolupament. La investigació teòrica de l’alemany Wilhelm Leibnitz, la creativitat del francès Blaise Pascal, les intuïcions genials de l’anglès Charles Babbage, la meticulositat de l’alemany W.Zuse, les investigacions en el camp de la lògica dels anglesos George Boole i Augustus De Morgan i del gran matemàtic Alan M. Turing, com també l’obra de molts altres, han contribuït a establir les premisses i a posar els fonaments del món de la informàtica. Posteriorment, però, el centre d’interès i creativitat es va desplaçar als Estats Units d’Amèrica, gràcies també a la contribució de molts emigrants europeus. El nord-americà d’origen hongarès Johannes (o John) von Neumann, Claude E. Shannon i els grups de recerca de les més prestigioses universitats nord-americanes van produir els resultats més significatius. També va ser en aquell país on es va construir el primer processador electrònic modern.

Les aplicacions dels ordinadors actuals divergeixen molt de les previstes fa algunes dècades, a les quals semblava especialment destinat. Per exemple, es pensava en una màquina dedicada essencialment a efectuar càlculs, el secret de la qual estigués només en mans d’alguns tècnics especialitzats. En canvi, l’ordinador s’ha convertit en una eina d’ús general, en una màquina capaç d’executar de manera automàtica una gran quantitat de processos diferents. També divergeix força de les altres màquines utilitzades per l’ésser humà, construïdes principalment per a ajudar-lo en la realització del treball físic. I és que, de fet, a més d’emprar-lo per a estalviar-se alguns esforços feixucs, l’ordinador permet potenciar les feines abstractes i les capacitats intel·lectuals humanes, i representa també un suport en la gestió de la informació i en el processament de tota mena de dades.

Llenguatges, programes i instruccions

És necessària una estratègia per a programar l’ordinador. Totes les aplicacions que hem indicat, en camps tan diversos, no són fàcils d’obtenir si tenim en compte que un ordinador acabat de construir no sol estar destinat a un objectiu precís o a una activitat determinada. De fet, es diu que es construeix amb uns objectius generals i normalment s’ha de programar tenint en compte les aplicacions específiques que haurà d’acomplir.

Per a programar un ordinador, cal comunicar-s’hi per mitjà d’un llenguatge comprensible, fent servir unes regles i uns símbols coneguts. Aquest conjunt de regles i símbols rep el nom de llenguatge de programació, mentre que el resultat obtingut mitjançant la traducció humana a fi de fer-se entendre amb la màquina s’anomena programa. De fet, succeeix més o menys el mateix que en les llengües parlades. Cadascuna d’elles presenta una sèrie de regles precises sovint diferents de les d’altres llengües. En alguns casos, es recorre a l’escriptura per signes (l’alfabet), que no són pas sempre els mateixos (només cal pensar en els caràcters ciríl·lics emprats en la llengua russa o en els ideogrames de la llengua japonesa). En el món de la informàtica, es reprodueix una situació anàloga, atès que un llenguatge té regles i símbols propis. Per a poder programar, és necessari, primer de tot, conèixer bé els llenguatges.

Cada programa acompleix una funció concreta, que és aquella per a la qual s’ha creat, i es compon de diverses parts elementals denominades instruccions. Així doncs, per a poder programar un ordinador, cal trobar una estratègia que faci possible la solució del problema en qüestió i, a partir d’aquí, traduir aquesta estratègia en una forma simbòlica que la màquina pugui interpretar. Els encarregats d’aquesta tasca són els analistes i els programadors. Els analistes informàtics estudien els problemes i en proposen una solució en forma d’algorisme, que és un procediment establert per una sèrie de regles formals independents de la naturalesa de l’ordinador (vegeu “Els algorismes”). Pel que fa als programadors informàtics, tradueixen i converteixen l’algorisme en un programa executable per l’ordinador, és a dir, escrit en un llenguatge de programació convenient.

Els llenguatges que utilitza un ordinador poden classificar-se en dues grans categories. Una integra els llenguatges que estan més relacionats amb les peculiaritats i les característiques de la màquina, dits per això, llenguatges màquina. Pertanyen, en canvi, a una segona categoria els llenguatges d’alt nivell, caracteritzats pel fet de ser més fàcils de recordar i bàsicament més adequats per a la comprensió humana. És evident que no cal ser analista o programador informàtic per a poder utilitzar un ordinador i, a més, en els darrers anys, s’han imposat els sistemes que faciliten molt l’ús de les màquines ja des d’un primer moment. Aquests sistemes easy to use (‘fàcil d’usar’) com el plug and play (‘connecta i actua’) o d’altres programes tutoritzats que ofereixen tots els grans fabricants informàtics, posen els ordinadors i la informàtica a l’abast de tothom. Tret d’un conjunt reduït d’operacions o de la preparació dels grans sistemes informàtics, la majoria de les aplicacions d’un ordinador no exigeixen coneixements específics de llenguatge o de tècniques complexes, sinó tan sols una certa flexibilitat mental, característica necessària potser per a fer ús de qualsevol màquina.

Les aplicacions informàtiques en els sectors de les ciències i de les tecnologies són innombrables, en la mesura que aquesta eina ha envaït tots els àmbits de treball i sobretot el de la gestió i l’administració empresarials. Els bancs en són un dels exemples més comuns, però se’n pot dir el mateix de les fàbriques, els centres comercials o les institucions locals. La informàtica té també aplicacions molt destacades en els camps de la medicina, la recerca, la pedagogia, la música, les telecomunicacions i la indústria cultural i de l’oci, entre d’altres.

Els algorismes

En la història de les matemàtiques, el terme algorisme (o algoritme), que deriva de l’àrab al-Khwarizmi, nom de l’autor d’un manual del segle VIII que descrivia les regles de càlcul amb els nombres decimals, s’ha emprat durant segles com a sinònim de regles de càlcul. Amb la difusió dels processadors electrònics, ha adquirit un nou significat i el seu ús ha entrat a formar part del llenguatge comú.

Els ordinadors són màquines “estúpides” que, per tal de funcionar correctament, han de ser guiades per unes senzilles instruccions que considerin tots els aspectes del problema objecte de resolució. L’algorisme és precisament la descripció de la seqüència de les instruccions que s’han de seguir per a aconseguir solucionar un problema determinat. Els algorismes es poden representar mitjançant la llista de les instruccions que els componen, o bé, encara millor, a partir d’un diagrama de flux. Vegem-ne, en l’esquema de la dreta, un exemple a fi d’il·lustrar el que hem dit. Es tracta de descriure les operacions necessàries per a fer una trucada telefònica a un amic.

Aquest esquema mostra, amb l’ajut d’un diagrama de flux, la seqüència de les operacions elementals que ens permeten assolir el nostre objectiu. Ja es veu que de tant en tant cal triar entre les diverses alternatives que se’ns poden plantejar. A l’esquema hi ha representats els blocs rectangulars, que contenen instruccions simples que no modifiquen el flux lògic del procés, i els blocs romboïdals, que divideixen el flux en dos recorreguts alternatius. En l’exemple, és necessari descriure el nostre comportament, no solament en el cas que respongui el nostre amic, sinó també en els casos desfavorables de línia ocupada o d’absència de resposta. Per tant, és molt important que un algorisme sigui exhaustiu en la descripció de totes les operacions possibles per a arribar a la solució desitjada. A més, ha de considerar totes les possibilitats contràries que puguin sorgir. El nombre de blocs o d’instruccions d’un algorisme pot no coincidir amb el nombre d’operacions que s’han d’efectuar. Si tenim present l’algorisme que hem representat, en cas que l’amic comuniqui, es pot tornar a marcar el número els cops que calgui, i d’aquesta manera es recorren cíclicament les quatre instruccions del diagrama. Al final, el nombre d’operacions realitzades podria elevar-se de manera considerable.

Amb tot, els algorismes són útils quan cal establir una estratègia ordenada que faciliti l’obtenció de solucions. I això és aplicable al món informàtic i també a altres àmbits, sempre que sigui possible complir un seguit ordenat i finit d’instruccions per tal d’arribar, un cop especificades les dades disponibles, a la solució d’un problema concret.

L’ésser humà i l’ordinador

Molta gent creia, sobretot inicialment, que l’ordinador podia sotmetre l’ésser humà i imposar-li ordres o, si més no, plantar-li cara i rivalitzar-hi. De fet, avui, encara no s’ha esvaït del tot aquesta malfiança. El problema de la relació entre les persones i els ordinadors és ara una qüestió transcendental que cal analitzar de prop per tal d’evitar errors de valoració o usos indeguts.

Les característiques tècniques principals de l’ordinador són la velocitat i la memòria. La velocitat dels ordinadors assoleix avui cotes inimaginables fa només uns quants anys. Els ordinadors moderns més potents tenen la capacitat d’executar milers de milions d’operacions elementals per segon. Això vol dir que es poden resoldre càlculs de gran complexitat en un moment. Si reuníssim tots els matemàtics del món i els féssim efectuar càlculs (resoldre problemes o compilar taules, per exemple), la seva feina seria menys rigorosa i més lenta que la d’un sol gran ordinador. Pel que fa a la precisió en els càlculs i a la possibilitat d’evitar els errors, la màquina presenta igualment un bon avantatge respecte a l’ésser humà. I, de fet, actualment, els mateixos matemàtics utilitzen ordinadors en camps de recerca que abans eren impossibles d’explorar, gràcies a les possibilitats d’administrar i de tractar quantitats enormes de dades en molt poc temps.

L’altra característica de l’ordinador és la memòria, que pot arribar a ser tan desmesurada que superi fins i tot la nostra imaginació. La memòria de l’ordinador pot contenir les xifres procedents de les aplicacions de càlcul, però també altres tipus d’informació. Per exemple, el text de centenars de pàgines d’un llibre pot ser llegit i tractat en ben poc temps de manera que es pugui contrastar o imprimir allò que es desitgi. Un altre exemple pot ser el de l’enregistrament d’aquelles imatges que per la seva complexitat suposen un gran volum de memòria. Aquestes imatges poden ser modificades, superposades, integrades amb text i d’altres gràfics en un únic document, en una paraula, “tractades” per l’ordinador. Amb aquests procediments, s’obtenen efectes sorprenents, gairebé màgics, que són d’ús freqüent en la creació d’imatges animades en color per a la televisió i el cinema.

Però, la velocitat i la memòria són realment tan importants i significatives? Si tenim present la història del progrés de la ciència i de la tècnica, on les matemàtiques i les ciències exactes han tingut una gran importància, podem trobar tot un recull de teories que han portat al desenvolupament de fórmules capaces de solucionar càlculs molt complexos i elaborats. Els símbols, les operacions o els operadors matemàtics han estat conquestes difícils que han fet possible l’evolució de la ciència i, en definitiva, de la nostra civilització fins als nostres dies. Aquesta tendència es va consolidar concretament a partir del segle XVI, amb el desenvolupament paral·lel del càlcul numèric, destinat a elaborar i millorar tècniques de càlcul amb nombres, i del càlcul simbòlic, que opera amb lletres i símbols.

El càlcul numèric va servir, per exemple, per a completar taules per als senzills problemes matemàtics de l’època. L’objectiu ha estat sempre proporcionar instruments de càlcul fàcils de comprendre, de recordar i d’aplicar. D’aquesta manera, va ser possible estudiar les complexes lleis de l’astronomia i de la física o efectuar els difícils càlculs necessaris per a la navegació marítima a partir de fórmules cada cop més complexes. A més, els instruments per al càlcul s’ajustaven a aquell tipus de sistematització dels coneixements científics.

L’ordinador, a diferència de la ment humana, no necessita fer servir fórmules i operadors matemàtics de gran complexitat per a resoldre un problema. La seva millor virtut no és la capacitat de recordar, sinó la de calcular ràpidament i executar operacions repetitives amb celeritat. Per tant, per a resoldre un problema amb l’ordinador, sovint són més idonis els càlculs simples, fent una operació aritmètica de forma repetida tantes vegades com calgui per a obtenir el resultat. Així doncs, s’elaboren nous mètodes de càlcul que no responen d’una manera particular a les característiques de l’abstracció típica de la ment humana, però que resulten clarament més eficaços gràcies a la velocitat de processament de l’ordinador i a la seva extraordinària capacitat de memòria.

Amb l’ordinador, per a resoldre un problema, és preferible recórrer a procediments que es basen en tempteigs o que porten a solucions numèriques aproximades, més que no pas a mètodes que es fonamenten en el càlcul simbòlic i que podrien oferir resultats exactes. Aquests mètodes són certament difícils de programar amb els llenguatges més usuals d’aquest tipus de màquina. El cas és que, durant segles, a falta d’instruments automàtics de càlcul, els estudis matemàtics havien privilegiat el càlcul simbòlic, que permet evitar operacions numèriques llargues i avorrides, mentre que, en els darrers anys, s’ha recuperat i s’ha desenvolupat l’interès pel càlcul numèric, que és una manera d’operar que s’adapta millor als ordinadors actuals.

La idea que l’ordinador està capacitat per a prendre decisions va generar en anys passats una gran confusió i també una certa inquietud. Ja fa temps que els matemàtics han demostrat que el raonament lògic és una forma de càlcul, i d’aquí prové la possibilitat de programar un ordinador perquè faci eleccions regides per la lògica. El cert és que l’ordinador, en el marc dels seus càlculs, està capacitat per a realitzar certes tries (sempre que hagi estat degudament programat per a aquesta funció); però això no vol dir que posseeixi la capacitat de pensar. Per exemple, per a efectuar una classificació per ordre creixent de diversos números, el càlcul es pot efectuar de la manera següent: a) s’elegeix el primer número de la llista que s’ha d’ordenar i es pren com a referència (provisional); b) es compara el valor d’aquest número de referència amb el següent de la llista que s’ha d’ordenar; c) es descarten els números que són més grans o iguals que el de referència; d) si un número de la llista és menor que el de referència, passa a ser el nou número de referència; e) es repeteixen les operacions b, c i d amb tota la llista que s’ha d’ordenar. Al final d’aquest procés, el primer número és el més petit que hi havia a la llista. Ara només cal repetir l’operació a deixant com a nova referència el següent a la llista, i tornar a començar el procés (operacions b, c, d i e). Al final la llista queda ordenada en l’ordre creixent com volíem.

Com bé demostra l’exemple anterior, l’ordinador, per ell mateix, no és capaç de fer les associacions mentals ni els raonaments complexos que efectua un nen en edat preescolar quan aprèn els deu primers números en l’ordre correcte. De fet, el que fa l’ordinador és senzillament repetir la seqüència d’operacions programades. La potència i la flexibilitat de la ment d’un nen són netament superiors a les de qualsevol ordinador, però això no treu que, en el moment d’efectuar l’ordenació dels números, la màquina sigui més ràpida i acompleixi la funció amb més eficàcia.

Per al futur, es preveuen ordinadors capaços d’aprendre. Amb aquesta expressió es vol dir que la màquina tindrà en certa manera la capacitat d’“escollir” i d’introduir en la pròpia memòria informació i dades que abans no posseïa. Aleshores podrem dir que serà capaç d’ampliar el seu “coneixement” i d’augmentar de mica en mica la complexitat de les decisions que pot prendre. Tot plegat, però, respondrà a un programa prèviament establert i controlat per mans humanes. És així de senzill? Doncs, no exactament. L’amenaça de l’error hi és sempre present, sovint amagada rere la superficialitat i la ignorància, en el desig de poder i en l’intent de domini de l’home sobre l’home. Si, per exemple, es desenvolupen uns sistemes informàtics que depenguin completament d’aquestes màquines, es corre el perill de deixar el gènere humà sense la possibilitat d’intervenir en cas d’accidents amb conseqüències greus. En aquest sentit, tot i que és una pràctica poc habitual, el fet de posar exclusivament en mans dels ordinadors el control automàtic del vol d’un avió o les operacions d’un banc, d’una central nuclear o d’un centre ferroviari pot tenir conseqüències que una persona entesa en aquell camp en concret, amb la seva experiència i la seva racionalitat, podria segurament evitar a partir d’una anàlisi més atenta de la situació i d’una observació més reflexiva.

La intel·ligència artificial

La intel·ligència artificial és la disciplina que estudia la metodologia i les tècniques de reproducció artificial de formes d’activitat “intel·ligents” pròpies de l’ésser humà. La pregunta “les màquines poden pensar?” ve de molt lluny. En resposta més o menys conscient a aquesta pregunta, han sorgit des dels mites llegendaris als relats moderns de ciència-ficció. Aquest tema s’ha convertit en objecte d’investigació científica, que s’ha desenvolupat paral·lelament a l’aparició i als progressos dels ordinadors. Per a assistir al naixement de la intel·ligència artificial, ens hem de remuntar a la conferència celebrada el 1956 a Dartmouth, als Estats Units, on els organitzadors John McCarthy i Marvin Minsky, entre d’altres, van proposar “un estudi de la intel·ligència artificial partint de la base que tot aspecte de l’aprenentatge i tota altra característica de la intel·ligència podia, en principi, descriure’s amb prou precisió per a fer posible la creació d’una màquina que els simulés”. Aquesta premissa no ha pogut ser demostrada experimentalment fins ara. Això no obstant, en la teoria i en la pràctica, la intel·ligència artificial ha assolit èxits remarcables des del final de la dècada dels setanta. Aquest contrast es deu a la distinció, cada cop més marcada a mesura que passen els anys, entre l’intent de simular el comportament humà, reproduint-ne artificialment els mecanismes del raonament, i l’intent d’emular aquest comportament amb l’obtenció de resultats anàlegs als que ofereix la raó humana, però mitjançant l’adopció, si escau, de mecanismes de raonament completament diferents dels que fa servir l’ésser humà. Mentre que en el primer cas, que podríem definir com el paradigma “fort” de la intel·ligència artificial, s’accentua el caràcter interdisciplinari de la intel·ligència artificial —en el sentit que només és possible assolir progressos a partir de la interacció entre ciències com la psicologia, la lingüística, la filosofia, la lògica, la informàtica o l’epistemologia—, en el cas de l’emulació del raonament, que seria el paradigma “feble” de la intel·ligència artificial, la informàtica preval sobre les altres disciplines. Ja no es tracta, de fet, de comprendre la ment humana i de reproduir-la —que és una tasca extraordinàriament àrdua—, sinó de construir sistemes de càlcul que, en situacions determinades, generin reaccions anàlogues a les que són pròpies de l’ésser humà.

Actualment, els especialistes d’aquest sector es decanten cap al paradigma feble, és a dir, renuncien a l’objectiu de construir una intel·ligència artificial, i es proposen únicament el desenvolupament de metodologies relacionades amb la intel·ligència artificial. En altres paraules, la intel·ligència artificial no es pot considerar actualment un sinònim d’ordinador “intel·ligent”, sinó que més aviat és el nom d’un conjunt de tècniques i mètodes característics d’un àmbit de recerca i d’aplicació.

La intel·ligència artificial s’ocupa de problemàtiques diverses, en la mateixa mesura que són diverses les manifestacions de la intel·ligència humana. Entre les principals destaquen la comprensió del llenguatge, la visió artificial, la reproducció de la veu i del so i la resolució de problemes en àmbits d’aplicació específics.

Una de les aplicacions més interessants de la intel·ligència artificial és la creació de sistemes experts, que consisteix a introduir en un ordinador tots els coneixements tècnics propis d’una activitat determinada per a demanar-li de resoldre un problema específic tal com ho faria un expert humà en la matèria. L’estructura de control (motor d’inferències) del sistema decideix, a partir de les dades del cas que s’examina, quina part del coneixement general s’ha d’activar. Els sistemes experts s’han desenvolupat en gairebé tots els camps de les activitats humanes, des de la medicina, on permeten realitzar diagnosis i prescripcions terapèutiques sobre la base dels símptomes referits pel pacient, a l’agricultura, la geologia o el dret, si bé han destacat en especial en el sector industrial (inspeccions, reparacions o projectes) i el de serveis (sobretot al món financer).

L’alfabet electrònic

L’alfabet emprat en els ordinadors és el codi binari. És compost únicament de dos signes convencionals i universals: el zero (0) i l’u (1). En aquesta màxima simplicitat rau l’enginy i l’èxit de la manera d’operar de l’ordinador. Aquests dos elements reben el nom de bit (que deriva dels termes anglesos binary digit) i constitueixen la unitat mínima d’informació amb què opera l’ordinador. De fet, 0 i 1 no són res més que dos símbols que ens són útils si escrivim sobre paper, però que de fet serveixen per a indicar la presència d’un estat de tensió elèctrica baix (0 volts = 0) o alt (5 volts = 1) i el flux de corrent elèctric corresponent. Un conjunt de regles i de lleis matemàtiques defineix tot un sistema basat en aquests dos símbols, amb els quals és possible edificar el món complex de les activitats de l’ordinador. El conjunt es designa amb el nom de lògica de tipus binari. Totes les dades, o sigui, tota la informació que controla un ordinador tant si es tracta de xifres com de paraules, de símbols gràfics o de dibuixos i imatges, es transformen en els símbols binaris 1 i 0.

Si bé no és pas l’ única manera de fer números, comptar en sistema decimal és per a nosaltres uns operació extremament senzilla. Ho hem après des de petits. Disposem de deu símbols que van del 0 al 9, i per continuar el recompte a partir del 9 es fan servir dues xifres (a l’esquerra les desenes, a la dreta les unitats). Això és elemental. Amb aquestes dues xifres i disposant del conjunt dels deu símbols d’aquest sistema numèric, podem comptar fins a 99. Aleshores s’hi afegeix una tercera xifra (la centena), que inicialment és 1, i que ens permet ampliar l’enumeració fins a 999, i així fins a l’infinit.

Doncs, el mateix passa amb el sistema binari. Els números s’escriuen amb aquest mateix criteri que hem esmentat en el cas del decimal, amb l’única complicació que només es disposa de dos símbols. Així doncs, en sistema binari, es compta a partir de 0 i, quan s’ha de representar el número corresponent al 2, com que aquest símbol no existeix en aquest sistema numèric, es fa servir la xifra 10 (és a dir, s’afegeix una xifra a l’esquerra tal com es fa per passar del 9 al 10 en el sistema decimal). El número 3 s’indica amb 11, mentre que per al número 4 és necessari afegir-hi una tercera xifra (4 = 100), i així successivament (5 = 101, 6 = 110, 7 = 111). I el número 8? És fàcil. Només es tracta de repetir la mateixa operació (8 = 1000, 9 = 1001, 10 = 1010), i així fins a l’infinit.

En l’enumeració binària, l’única complicació que suposa un cert enrenou per a la ment humana deriva del fet que, en disposar només de dos símbols, són necessàries moltes xifres per a indicar un número, encara que sigui un número petit. Per exemple, per a representar el número 82, el sistema decimal en té prou amb dues xifres, mentre que el sistema binari en necessita set (1010010). Però, tot i això, amb només dos símbols, és possible representar no solament els números sinó també qualsevol altre tipus d’informació. Imaginem que hem d’enviar un missatge a una certa distància i que tan sols disposem de dues banderoles de colors diferents (per exemple, vermell i blanc). Amb un acord previ entre les dues parts, es pot establir que la banderola vermella alçada assenyala un fet A (un perill imminent o la presència d’una certa persona, posem per cas), mentre que la banderola blanca alçada pot indicar un fet B diferent de l’anterior. A més, es pot observar que és possible transmetre un tercer senyal C aixecant totes dues banderoles alhora, mentre que, si no se n’alça cap, no s’assenyala cap dels fets precedents. I, de fet, tenint les dues banderoles abaixades s’està indicant una nova situació, que pot representar una situació D.

És evident que tota codificació es produeix fixant una convenció en relació amb un fet, és a dir, establint un acord entre les parts implicades. En el codi binari, aquesta codificació es concreta en una combinació ben precisa de 1 i 0. En el codi de comunicació per mitjà de banderoles, que hem descrit abans, res no impedeix que es pugui definir una convenció més complexa i articulada que l’anterior. Per exemple, podem imaginar que una posterior informació E es pot enviar alçant dues vegades seguides la banderola vermella. Amb aquest principi, dos senyals amb la banderola blanca també podran transmetre una nova informació, que indicarem amb una F, i així successivament.

Les operacions de l’ordinador

La lògica de tipus binari és la base del funcionament dels dispositius interns de l’ordinador, que reben el nom de circuits lògics. Els circuits lògics operen d’acord amb un principi força senzill. Per entendre-ho més bé, partirem d’un circuit elèctric compost per una pila, una bombeta i dos interruptors. Amb dos interruptors col·locats l’un a continuació de l’altre, de manera que amb un sol fil es puguin connectar a la pila i a la bombeta, es realitza una connexió en sèrie. Observarem que, només si tots dos interruptors (A i B) estan tancats, s’encendrà la bombeta L a causa del pas de corrent proporcionat per la pila. La situació es pot descriure amb aquesta formulació: “si i només si els interruptors A i B estan tots dos tancats, la bombeta L queda encesa”. En canvi, si entre els dos interruptors establim una connexió en paral·lel i deixem igual la resta del circuit, es configura una situació diferent que podem formular d’aquesta manera: “si l’interruptor A o l’interruptor B estan tancats, o bé ho estan tots dos, la bombeta L s’encén”.

En el primer exemple, hem descrit el que s’anomena producte lògic entre les variables A i B (representades per l’estat obert/tancat dels interruptors) que s’indica amb un punt “.”; en aquest cas concret: “A.B”. En el segon exemple, s’ha produït el que es designa amb el nom de suma lògica i que s’indica amb el símbol “+”; en aquest cas: “A+B”.

El món de la lògica s’estructura a partir d’una sèrie de regles i de definicions, igual que en el cas de les operacions matemàtiques. Aquestes regles són la base del funcionament dels processadors lògics i, per tant, dels ordinadors.

Tornem a l’exemple relatiu a la suma lògica. La bombeta L s’encén quan l’interruptor A o el B, o tots dos, estan tancats.

Si formalitzem el funcionament del circuit, és a dir, si el descrivim amb fórmules, podrem deduir-ne el següent:

A = 0, B = 0 (tots dos interruptors oberts): bombeta L apagada (0 + 0 = 0);

A = 1, B = 0 (interruptor A tancat i B obert): bombeta L encesa (1 + 0 = 1);

A = 0, B = 1 (interruptor A obert i B tancat): bombeta L encesa (0 + 1 = 1);

A = 1, B = 1 (tots dos interruptors tancats): bombeta L encesa (1 + 1 = 1).

Si la lògica és la base del funcionament d’un ordinador, aleshores es pot afirmar que, per a l’ordinador, 1 + 1 fan 1.

Convé, però, anar amb molt de compte i no confondre el sistema de la lògica que acabem de descriure, on són vàlides les regles com ara la de 1 + 1 = 1, amb el sistema de l’aritmètica, regit per altres regles, encara que s’operi amb els mateixos símbols 0 i 1.

Ara analitzarem una característica dels ordinadors referent a les operacions aritmètiques. Es diu que només amb les quatre operacions aritmètiques es pot efectuar tot tipus de càlcul, fins i tot els més complicats. N’hi ha prou de saber raonar i fer servir la nostra intel·ligència adequadament. Podem afirmar el mateix en el cas de l’ordinador. Amb aquesta màquina és possible realitzar els càlculs més complexos i uns processos que un exèrcit de matemàtics experts no seria mai capaç de dur a terme, sobretot per manca de temps. De fet, aquesta complexitat de càlculs es pot reduir a una sola operació fonamental: la suma.

Les restes, les multiplicacions i les divisions porten als mateixos resultats que podríem obtenir mitjançant sumes aritmètiques. I, com que una suma es fa de manera senzilla i ràpida, es posa de manifest la conveniència de construir tots els càlculs a partir d’aquesta operació. Per tant, no ens ha de sorprendre que les grans capacitats que pugui tenir un ordinador es redueixin a la realització de simples, banals i evidents sumes aritmètiques... però, això sí, a una velocitat altíssima i manipulant una quantitat esfereïdora de xifres. Vist des d’aquesta perspectiva desdramatitzadora, segurament l’ordinador inspirarà ja menys temor.

El maquinari o hardware

En el camp de la informàtica, existeixen dos termes que van sempre junts: el maquinari o hardware i el programari o software. D’una banda, el maquinari fa referència als components materials que constitueixen la màquina pròpiament dita, dels quals ens hem ocupat en l’article anterior dedicat a l’electrònica, és a dir, circuits, cables, plaques o pantalles. De l’altra, el programari o software és també una cosa concreta, menys visible, però que fa funcionar l’ordinador: són les instruccions i els programes.

Primerament, concentrarem la nostra atenció en el maquinari o hardware, a partir de la constatació que els ordinadors actuals no divergeixen de l’esquema funcional traçat per Johannes (o John) von Neumann sobre la base del primer ordinador electrònic, l’ENIAC, operatiu l’any 1946 i desenvolupat pels enginyers John P. Eckert i John W. Mauchly a la Moore School of Electrical Engineering, de Pennsilvània (EUA).

Gràcies als procediments actuals, les parts fonamentals d’un ordinador modern es poden centrar en un únic microprocessador o bé es poden distribuir al llarg d’un conjunt de línies de transmissió en paral·lel que intercomuniquen diversos elements, que s’anomena bus. L’ordinador personal actual consta essencialment de tres blocs estàndards. El bloc de la unitat central comprèn tant la unitat central pròpiament dita, com les unitats lectores de disc i disquets (drives). Els altres components són la pantalla i els dispositius d’entrada de dades i senyalització com, per exemple, el teclat (keyboard) i el ratolí (mouse). Com es pot observar, en aquest àmbit, sovint fem servir paraules angleses, i és que la informàtica, juntament amb la seva terminologia, s’ha importat en bona part dels Estats Units i, ara per ara, convé saber alguns termes anglesos per a entendre els informàtics i poder introduir-nos en el seu món.

La unitat central de processament

Esquema dels elements de la unitat central d’un ordinador personal. Conté la unitat central de processament, constituïda bàsicament pel microprocessador, que és el centre de tot el sistema. Disposa també de diferents tipus de memòria, accessibles (memòria RAM) o no (memòria ROM) a l’usuari, a més de la memòria de treball o caché. Les plaques o controladors d’entrada i de sortida regulen el bon funcionament dels perifèrics. Les anomenades memòries de massa o auxiliars executen funcions d’arxiu, ja que posseeixen les dades enregistrades sobre suport magnètic o en sistemes òptics, que es mantenen quan s’apaga l’ordinador.

ECSA

La unitat central conté el processador (o CPU), que és el “cervell” que llegeix i executa les instruccions contingudes en la memòria central. Hi ha també altres unitats, com la memòria ràpida de treball (memòria caché) i les plaques o controladors que gestionen els dispositius d’entrada i de sortida (input/output) o les anomenades memòries de massa (discs o disquets).

En general, en els ordinadors personals, tota la capacitat de procés de la CPU es concentra en un únic circuit integrat o xip (el microprocessador). Cada xip conté, sobre una superfície de silici de l’ordre d’unes mil·lèsimes de mil·límetre de gruix, centenars de components electrònics elementals, com transistors, resistències o condensadors. El microprocessador comunica amb l’exterior mitjançant uns connectors que poden rebre i transmetre la tensió, la qual, interpretada segons la lògica binària, permet la transferència d’informació bàsica (bits).

Una unitat de control regeix el funcionament de les diverses unitats i assigna cíclicament a cadascuna d’elles la disponibilitat de tots els recursos del sistema. El ritme del cicle és establert per un rellotge patró. En els ordinadors personals, el temps es marca per milionèsimes de segon, i, fins i tot, per intervals més petits segons el tipus de microprocessador que s’adopti. Com més ràpidament marqui el temps un rellotge, a més velocitat efectuarà l’ordinador les operacions. Ara bé, la velocitat d’un microprocessador en la realització d’una operació no depèn exclusivament de la freqüència del rellotge, sinó també de la potència del microprocessador per a executar cada instrucció per separat. Aquesta potència es compta per milions d’instruccions per segon (mips). En l’evolució dels ordinadors, cada cop s’ha augmentat la capacitat de mips. Fa pocs anys es parlava de grans ordinadors de 10 mips. Actualment, existeixen microprocessadors que superen de molt els 100 mips en màquines de dimensions força més reduïdes.

A més de la velocitat d’execució, una característica de la CPU és la potència. Vegem de què es tracta. Per a fer una multiplicació, pot ser necessària una sola instrucció o bé se’n poden requerir tres. En el primer cas, tindrem una CPU més potent. Un conjunt d’instruccions necessàries per a acomplir una funció bàsica s’anomena paquet d’instruccions, i es compon generalment d’algunes desenes o d’uns centenars d’instruccions que s’han d’efectuar.

A la velocitat d’execució i a la potència de cada instrucció, hi hem d’afegir un altre paràmetre que caracteritza una CPU: la quantitat de dades que és capaç de tractar alhora. Les dades es transmeten en blocs, les unitats dels quals són els bits (les famoses xifres 0 i 1). Cada bloc pot tenir una llargada de 4 a 64 bits. Un conjunt de 8 bits es designa generalment amb el terme octet (o byte).

Els ordinadors són diferents en funció de les capacitats de processament. En els nivells més alts, trobem els superordinadors, utilitzats en aplicacions en què es treballa amb una enorme quantitat de dades (càlcul estadístic o científic, previsions meteorològiques o en finances). Atès el seu cost extremament elevat, existeixen pocs exemplars d’aquest tipus d’ordinador al món. A continuació, hi ha les grans màquines o mainframe, amb una potència suficient per a ser utilitzades per centenars d’usuaris simultàniament. No tan potents, els mini i supermini permeten desenes d’usuaris simultanis i són més petits, barats i fàcils de programar. D’altra banda, hi ha el servidor (server), sistemes multiusuaris normalment inserits en xarxes, i les estacions de treball (workstation), utilitzades en el disseny informatitzat i en aplicacions gràfiques sofisticades. Els ordinadors més presents en la vida quotidiana són els ordinadors personals (PC, de l’anglès personal computer), que es destinen a un sol usuari i tenen un cost accessible a particulars. És gràcies a aquest tipus d’ordinador que s’ha produït la revolució informàtica en aquests darrers anys. A l’inici dels anys noranta se’n comptaven més de 66 milions arreu del món, i al final de la dècada, n’hi ha deu vegades més. Fa pocs anys també, s’ha observat un increment considerable dels ordinadors de dimensions reduïdes, que van des dels laptop portàtils (literalment ‘per a portar a la falda’) als notebook, uns sistemes molt compactes i multifuncionals.

La memòria central

Xip de memòria RAM i diagrama de blocs d’una RAM dinàmica (a sota). Cada bloc representa una funció. Les cèl·lules de memòria es disposen en files i columnes, com els nusos d’una malla (un d’aquests nusos és representat a la dreta de l’esquema).

ECSA

La memòria central serveix per a emmagatzemar els programes inicials de la posada en marxa de l’aparell i les dades que es van generant i que s’han de conservar durant les diverses fases del procés de treball. A aquesta memòria hi tenen accés les unitats de comandament i de processament que constitueixen la unitat central (CPU). És composta de dos tipus de memòria diferents, denominades RAM i ROM. La memòria RAM conté els programes i les dades que hi va introduint l’usuari, mentre que la memòria ROM comprèn els programes que l’usuari no pot modificar.

La memòria RAM (Random Access Memory o ‘memòria d’accés a l’atzar’) consta de registres especials on es pot escriure o llegir simplement amb una ordre d’escriptura o de lectura. L’expressió ‘a l’atzar’ pot crear confusió, ja que indica, de fet, que es requereix el mateix temps per a accedir a qualsevol punt o informació que contingui la memòria. Per la seva banda, la memòria ROM (Read Only Memory o ‘memòria només de lectura’) també és d’accés a l’atzar, però a diferència de la RAM no permet l’escriptura; a més, es caracteritza per no ser volàtil, és a dir que, quan s’apaga l’ordinador, no se’n perd el contingut. La memòria ROM presenta certes variants, com, per exemple, la memòria PROM (Programmable Read Only Memory), programable per l’usuari amb un instrumental específic, i les memòries EPROM (Erasable Programmable Read Only Memory), que es poden programar i esborrar diverses vegades.

La memòria RAM es compon de moltes cel·les de memòria que poden adoptar les posicions on/off, corresponents a l’estat d’engegat o apagat. Perquè un caràcter sigui memoritzat, primerament s’ha de codificar en codi binari, en la corresponent seqüència de 0 i 1. Un dels sistemes de codificació més universals és el codi ASCII, de 8 bits, és a dir, una combinació de 8 xifres 0 o 1 per a cada caràcter alfanumèric.

Les cel·les de memòria són de dos tipus. Hi ha les memòries estàtiques, en què la informació es manté mentre hi hagi corrent, i les memòries dinàmiques, en què la dada queda enregistrada només si la memòria es “refresca” periòdicament amb uns circuits especials. Així doncs, encara que aquestes memòries consumeixen molta energia, són molt econòmiques i compactes.

Les generacions d’ordinadors

De tant en tant es parla de generacions a propòsit dels ordinadors, com si els ordinadors es reproduïssin a la manera dels éssers vius. Es tracta, de fet, d’una invenció més aviat publicitària, però que no té implicacions pràctiques que vagin més enllà de la terminologia. Ha estat sovint la base tecnològica la que ha determinat la generació d’un ordinador, però, en els darrers anys, el canvi tecnològic és tan ràpid que aquesta divisió en generacions s’ha perdut i ara té ja molt poc significat.

Els anomenats ordinadors de primera generació, dels anys quaranta, eren enormes i per a “manipular” els 0 i els 1 utilitzaven les velles vàlvules termoiòniques de la primera etapa de l’electrònica. Seguidament, cap a la dècada dels cinquanta, van aparèixer els ordinadors dits de segona generació, i es van substituir les vàlvules pels transistors. Més endavant, els ordinador de la tercera generació, apareguts els anys seixanta i setanta, van incorporar els circuits integrats, amb diversos graus d’integració, fins que es féu difícil continuar per aquest camí tecnològic. Durant un temps, cap als anys setanta, algunes empreses constructores d’ordinadors van establir la quarta generació en el programari o software, concretament en els nous sistemes operatius que facilitaven el funcionament de les màquines. Però no hi va haver consens sobre aquesta denominació.

Al final dels anys setanta, un conjunt d’empreses japoneses va intentar crear un sistema operatiu que tindria com a llenguatge de base el prolog —un dels llenguatges típics de la intel·ligència artificial, capaç de realitzar inferències a partir d’una base de coneixements—, en l’intent d’aconseguir un ordinador que pogués tractar el llenguatge natural, és a dir, el llenguatge complex i ambigu utilitzat per la majoria dels éssers humans. Va ser anomenat el projecte de la cinquena generació d’ordinadors. I de projecte no va passar, ja que mai no va assolir els objectius marcats.

La memòria de massa

Les memòries de massa tenen funcions d’arxiu, juntament amb la memòria central que processa les dades i les instruccions de l’aplicació que està activa. Es tracta de memòries no volàtils, generalment enregistrades sobre suport magnètic (però també poden ser memòries magnetoòptiques o memòries òptiques), que es mantenen tot i que el sistema estigui apagat. En el camp dels ordinadors personals, es fan servir discs magnètics, com els disquets o discs flexibles (floppies), que es poden extreure i transportar fàcilment, i el disc dur (hard disk), que sol ser fix i posseeix una gran capacitat d’emmagatzematge. L’accés als discs és del tipus a l’atzar, això vol dir que el capçal de lectura pot situar-se en qualsevol punt sense necessitat de recórrer prèviament tot el disc.

La superfície del disc es divideix en pistes circulars, les quals se subdivideixen en sectors. Els dos valors, donats per la pista i pel sector, funcionen com un sistema de coordenades segons el qual n’hi ha prou d’especificar una “adreça” composta de dos valors per a accedir a la lectura o a l’escriptura d’un bloc. A mesura que la memòria central envia dades per a enregistrar, els blocs del disc es van omplint, l’un rere l’altre, fins que s’acaba la informació que es vol gravar o s’exhaureixen els sectors lliures del disc; però, en aquest cas, si es treballa amb disquet, se n’insereix un de nou a la disquetera o a la unitat de lectura-escriptura i es continua amb el procés d’enregistrament. Una part de la memòria central es reserva a la gestió dels blocs, ja que, quan s’ha fet servir el disc repetidament, els blocs lliures no sempre queden en posició contigua. De fet, el que succeeix és propi de tots els magatzems, on alguns prestatges es buiden abans que els altres i és necessari que hi hagi un responsable que els endreci i els torni a omplir. El sistema de gestió de fitxers, amb l’ajuda d’un “apuntador”, va individuant els blocs lliures en cada moment o bé va a cercar la seqüència de blocs relativa a un conjunt homogeni d’informacions. Per mitjà d’unes instruccions concretes és possible saber en tot moment quants blocs són lliures i quants són ocupats, i també es pot obtenir una llista dels fitxers que conté un disquet i saber on està situat cada fitxer en el disc.

Als disquets, perquè siguin operatius, cal donar-los format. Tot i que ara bona part dels disquets ja es venen al públic formatats pel fabricant, existeixen programes específics que permeten un nou formatatge, si bé cal tenir en compte que aquesta operació esborra tot el contingut que el disquet pogués tenir enregistrat.

Dispositius d’entrada i sortida

La comunicació entre l’usuari i l’ordinador té lloc mitjançant uns dispositius que permeten introduir les dades i les instruccions a la unitat central; són els dispositius d’entrada (input, en anglès). Uns altres dispositius fan possible l’obtenció de resultats del treball fet amb l’ordinador; són els dispositius de sortida (output). Sovint es parla dels dispositius d’entrada/sortida (input/output o, simplement, I/O). Així, a través de les unitats de I/O, és possible convertir el llenguatge de l’usuari en el de la màquina i viceversa. A més, hi ha disponible una memòria intermèdia o de trànsit (buffer), que emmagatzema la informació abans de poder-la transferir. La presència d’un buffer és necessària, ja que, si bé els processos que executa l’ordinador han adquirit molta rapidesa, les unitats d’entrada i de sortida són generalment més lentes. Els dispositius de I/O també contenen un “canal de connexió”, que en els ordinadors personals és sovint un cable que es connecta a les preses, anomenades portes (ports), col·locades a la part posterior de la unitat central.

El teclat i el ratolí

El teclat és l’element més característic dels dispositius d’entrada. No és igual en tots els ordinadors, encara que és força semblant. Sol incloure lateralment un teclat numèric per a fer més ràpida la introducció de dades numèriques, i també diversos teclats auxiliars o teclats de funcions. Sovint un teclat es pot adaptar a la llengua de l’usuari, com el català, l’espanyol, l’italià o el francès, a més de l’anglès, de manera que presenti les lletres i els accents propis de cada llengua en concret.

Les tecles de funció, sovint indicades amb una F (de la F1 a la F12 o F15), s’arrengleren normalment a la part superior del teclat (abans, era més habitual repartir-les en dues columnes, a l’esquerra). Les funcions d’aquestes tecles són definides per les instruccions que conté la memòria ROM, o poden ser personalitzades per l’usuari, i acostumen a correspondre a les ordres emprades amb més freqüència. En alguns models, existeix una tecla d’ajuda (help) que serveix per a poder consultar en pantalla una sèrie d’instruccions en cas de dubte.

El teclat serveix per a la introducció de dades i per a la selecció de les funcions en prémer les tecles individualment o combinant-ne dues o tres. Les lletres que es pitgen en el teclat apareixen a la pantalla en el punt indicat per un senyalador sovint intermitent anomenat cursor.

El ratolí (mouse, en anglès) és un dispositiu còmode i idoni per a simplificar el diàleg entre l’usuari i la màquina. Facilita l’ús de l’ordinador a les persones poc avesades en informàtica. Es denomina així pel seu aspecte i pel fet que se’l fa moure d’una manera que recorda els ratolins de veritat. Sol estar format per una capseta amb un o dos botons. Posseeix una bola inferior, que en desplaçar-se sobre una superfície plana, gràcies a uns connectors, transmet el moviment al cursor de la pantalla. Movent el ratolí, s’hi pot situar el cursor en qualsevol punt, i activar una funció determinada, visualitzada a la pantalla, prement-ne el botó.

La posició del cursor es pot modificar també amb el teclat mitjançant unes tecles especials que el fan desplaçar-se en les quatre direccions: amunt, avall, a l’esquerra i a la dreta. Amb tot, el més habitual avui és moure el cursor amb el ratolí.

Quan s’escriu una instrucció completa que es vol enviar a la unitat central o quan s’ha triat amb el ratolí una de les opcions possibles, cal pitjar la tecla enter, return o intro del teclat o un dels botons del ratolí. Fins que no s’ha premut la tecla intro, el que hi hagi escrit no s’introdueix a la unitat central i, per tant, es pot corregir tornant enrere amb el cursor i reescrivint la instrucció o la dada concreta. Un cop les dades s’han introduït a la CPU, encara es poden efectuar correccions, per bé que d’una manera més complexa.

Altres dispositius d’entrada

A més del teclat, existeixen altres dispositius amb què és possible introduir dades en un ordinador. Vegem-ne els principals, que són el llapis òptic, la pantalla tàctil i l’escàner. El llapis òptic és el dispositiu de lectura automàtica més senzill. Mentre que els caràcters d’impremta normals requereixen l’ús d’aparells especialitzats que els identifiquin probabilísticament en funció de la llum projectada al full, el llapis òptic, en canvi, té la capacitat de llegir caràcters especials escrits amb l’anomenat codi de barres. Existeixen diversos sistemes de codificació, però el més corrent és el codi de barres EAN, que és per exemple el de les etiquetes dels productes dels supermercats. De tota manera, un llapis òptic pot llegir qualsevol codi sempre que la memòria central de l’ordinador tingui el programa descodificador corresponent. El llapis òptic és sensible a les variacions de lluminositat que es reflecteixen en el codi imprès. Les dades rellevants s’envien a la CPU per a ser descodificades. Aquest dispositiu resulta particularment eficaç en la gestió dels productes dels grans magatzems i en la seva comercialització en general.

La pantalla tàctil és un altre dispositiu d’entrada que permet activar les diverses funcions simplement tocant les icones corresponents que apareixen a la pantalla. Aquest sistema acostuma a consistir en una sèrie de 40224 díodes d’emissió de llum infraroja (LED) disposats a banda i banda de la pantalla, davant del vidre. En tocar el vidre amb el dit, s’intercepta el raig de llum que emeten els díodes i s’impedeix la recepció de la llum infraroja per part dels sensors òptics corresponents; d’aquesta manera, s’activa la funció que va connectada amb les coordinades indicades pels sensors.

Els escàners són uns dispositius que permeten la digitalització (seqüències de 0 i 1) de qualsevol text, dibuix o imatge. El seu funcionament es basa en l’escombratge de la imatge que s’ha de digitalitzar per part d’un lector òptic capaç de captar la intensitat lluminosa de cada fracció mínima de la imatge (anomenada pícsel o pixel). Aquesta intensitat es quantifica degudament i es representa per mitjà d’un conjunt de bits. Com més elevat sigui el nombre de bits, més gran serà la resolució de la imatge. El nombre de pícsels per unitat de superfície defineix el grau de nitidesa de la imatge digitalitzada.

El principi de la digitalització permet la representació d’una imatge en seqüències de bits associades a la intensitat lluminosa dels pícsels i per tant sense cap relació amb el contingut i la forma de la imatge. L’escàner, de fet, no s’encarrega de reconèixer els caràcters (funció reservada al software), sinó que es limita a captar la intensitat lluminosa de cada pícsel. La identificació dels caràcters és a càrrec d’un programa especial, denominat reconeixement òptic de caràcters (OCR, segons la sigla en anglès), que permet llegir la majoria dels documents mecanografiats i integrar-los directament en qualsevol dels processadors de textos usuals.

Dispositius de sortida: la impressora i el traçador

Entre els dispositius de sortida més corrents hi ha les impressores, que permeten la reproducció en suport paper de les informacions elaborades o enregistrades per l’ordinador. Hi ha impressores amb prestacions, característiques i, per consegüent, costs molt diversos (vegeu “La transmissió del text i el multimèdia”). Amb tot, una primera distinció fa referència al tipus de connexió, que pot ser en sèrie o en paral·lel. En les impressores en sèrie, la unitat central envia un bit seguit d’un interval de temps, després un altre i així successivament fins que s’acaba la transmissió. Si, per exemple, hem d’enviar un caràcter de 8 bits (com en el cas del codi ASCII), són necessàries vuit unitats de temps. En les impressores en paral·lel, en canvi, s’envien els bits per paquets, per exemple de vuit en vuit, seguits d’un interval de temps; així, per tant, com que la transmissió d’un caràcter ASCII requereix un sol cicle temporal, la transferència de la informació es completa més ràpidament.

No obstant això, el tipus de transmissió no és l’únic factor que influeix en la velocitat. També hi entren en joc altres paràmetres com poden ser la qualitat d’impressió desitjada i el tipus de tecnologia que fa servir la impressora. Una distinció fonamental és la que s’estableix entre les impressores matricials o d’impacte i les impressores de “no impacte”, segons que el caràcter imprès sobre el paper resulti de la percussió mecànica d’una sèrie d’agulles (impacte) o bé s’obtingui per un altre procediment (tèrmic, electrostàtic, de raig de tinta o làser) (vegeu “La transmissió del text i el multimèdia”).

En els darrers anys, les impressores han experimentat una evolució considerable gràcies sobretot a la introducció de la tecnologia làser que aprofita les característiques d’un raig làser per reproduir en un cilindre fotosensible, de manera precisa, fina i puntual, el contingut de la pàgina que s’ha d’imprimir. Seguidament, la impressora es comporta com una fotocopiadora normal. Es tracta d’una tecnologia que, en no requerir una distinció neta entre text i imatge i en oferir una gamma pràcticament il·limitada de caràcters reproduïbles, ha comportat un increment notable de la qualitat d’impressió. El producte d’una impressora làser és actualment comparable, pel que fa a qualitat, al que s’obté mitjançant els mètodes tipogràfics tradicionals.

El traçador o plòter es pot considerar un robot que dibuixa i que és comandat per un programa especial. Les instruccions bàsiques són: “puja/baixa el llapis” i “mou el llapis al punt...”. Aquestes dues instruccions simples permeten traçar qualsevol dibuix tan sols movent de forma adient la ploma que escriu o el paper on es dibuixa. Entre els diversos paràmetres que caracteritzen el plòter, com també els altres instruments d’entrada/sortida amb funcions gràfiques, té una especial importància la resolució, és a dir, la capacitat de distingir dos punts que estiguin junts.

Existeixen dos tipus de traçador: els de ploma i els electrostàtics. En els plòters de ploma, el dibuix es realitza gràcies al moviment recíproc del suport i de les plomes. Poden ser de taula plana, de rodet i de tambor. En el traçador de taula plana, el moviment es realitza per mitjà d’unes travesses i d’un plat giratori. Amb el desplaçament sobre els dos eixos perpendiculars és possible situar-se a qualsevol punt de la taula. El plat giratori pot portar, per exemple, d’una a quatre plomes, que el programa permet seleccionar. Les plomes poden ser de punta esfèrica o amb punta de feltre. En el plòter de rodet, el plat giratori només es desplaça transversalment perquè el paper queda agafat pel rodet en els moviments longitudinals. El gruix del traç està limitat per l’amplada del rodet, mentre que les dimensions longitudinals gairebé no tenen límits. Però sí que existeixen limitacions pel que fa al paper, que ha de tenir els marges foradats per a arrossegar-lo. Els traçadors de tambor funcionen com els de rodet però fan servir qualsevol tipus de paper, fixat convenientment per a ser arrossegat.

En els plòters electrostàtics, el paper passa, inicialment, per sota d’una matriu d’agulles que poden adquirir càrrega elèctrica. Les agulles, un cop carregades, sensibilitzen el paper i, d’aquesta manera, el fan apte per a fixar les partícules carbonoses d’una tinta líquida. Seguidament, té lloc una fase de dessecació i de fixació. El fet que no hi hagi parts mecàniques en moviment permet assolir una velocitat d’impressió molt elevada i fa possible el tractament simultani de pàgines de textos i de dibuixos.

Altres dispositius d’entrada i sortida

A banda dels dispositius d’input/output que s’han citat fins ara, n’hi ha molts altres, d’entre els quals citarem els més corrents, que són els micròfons i els programes de veu, els mòdems, la maneta de jocs (joystick) i l’esfera mòbil (trackball). Els terminals d’entrada de veu permeten que l’ordinador reconegui un nombre de paraules pronunciades correctament, o bé pronunciades per la persona que ha programat la fitxa vocal específica. Els de sortida de veu fan servir un vocabulari fix i produeixen sons amb totes les característiques de la veu humana. D’altres tipus de terminals permeten obtenir un so molt més mecànic, però amb un vocabulari gairebé il·limitat.

Els mòdems (o moduladors-demoduladors) fan possible establir la comunicació a través de la línia telefònica amb altres ordinadors, i d’aquesta manera permeten, per exemple, l’accés a bancs de dades (vegeu “La transmissió del text i el multimèdia”). Els mòdems realitzen la conversió dels senyals digitals amb què funcionen els ordinadors en senyals analògics sonors transmesos per la xarxa telefònica, i viceversa.

La maneta de jocs o joystick s’assembla a la palanca de comandament dels antics avions, que en desplaçar-se circularment connecta i desconnecta els interruptors que estan col·locats en creu a l’interior del dispositiu. D’altra banda, a l’extrem del mànec, hi ha un botó per “disparar” que fa que el joystick encara s’assembli més als comandaments d’un caça. És un dispositiu que s’utilitza sobretot per a videojocs. A més, en la realització de gràfiques i de dibuixos per ordinador, es pot fer servir també un sistema semblant, anomenat esfera mòbil o trackball; es tracta d’un dispositiu format per una bola, que es possible fer girar en totes les direccions, el moviment de la qual activen uns sensors que permeten transformar els “rodolaments” de la bola en moviments còmodes i de gran precisió sobre la pantalla.

La pantalla

Estructura d’una pantalla de plasma de gas neó. Es tracta d’una pantalla activa (emissora de llum), molt compacta i lleugera.

ECSA

La pantalla, que també rep el nom de monitor, display o CRT (de l’anglès Cathodic Ray Tube o ‘tub de raigs catòdics’), és un dels components fonamentals de l’ordinador en la mesura que permet la visualització de les dades tractades pel processador. Hi ha pantalles formades per una superfície de vidre, recoberta internament d’una capa de granets minúsculs de fòsfor, una substància luminescent de colors varis. Però, ara, en la majoria dels casos, l’estructura de la pantalla d’un ordinador i el seu funcionament són força semblants als d’una pantalla de televisió. Els elements luminescents reben els electrons emesos pel tub electrònic del monitor, que accepta i transforma els senyals provinents de l’ordinador, i emeten una llum que es manté sobre la pantalla durant una estona. Com més gran sigui la densitat dels elements luminescents de la pantalla, més bona resultarà la definició de la imatge que se n’obtingui. La densitat dels elements augmenta amb el nombre de pícsels (punts lluminosos bàsics) que caracteritzen els diversos tipus de pantalla. Se solen indicar amb un parell de números que es multipliquen entre ells: 6402480, 8002600, 1 0242768, etc.

Els diversos caràcters alfabètics i numèrics es formen a partir d’unes matrius de punts. Com en el cas de la televisió, mentre que en les pantalles monocromàtiques existeix un sol tub que dispara els electrons sobre la pantalla, en el cas de pantalles de colors n’hi ha tres, de tubs. A més, entre els tubs i la pantalla s’hi col·loca una màscara que acompleix la funció de “lent electrònica”, útil per a enfocar els feixos provinents dels tres tubs en els punts de la pantalla. La combinació dels tres feixos (vermell, verd i blau) permet tota la gamma cromàtica. Evidentment, la composició dels colors és controlada digitalment i, per això, el conjunt de colors que es poden crear és pràcticament il·limitat.

Normalment, en les pantalles dels sistemes antics es poden visualitzar 80 columnes de 25 línies de text, mentre que amb els sistemes moderns l’usuari pot decidir-ho més lliurement d’acord amb la font i el cos de lletra utilitzat o l’ampliació escollida. De tota manera, és usual que quan s’acaba d’escriure la darrera línia, es produeixi un desplaçament vertical de tot el que apareix a la pantalla (scrolling) i vagin desapareixent les primeres línies. En alguns models, també és possible un scrolling horitzontal que, quan se supera l’amplada d’una línia, fa desaparèixer per l’esquerra els caràcters que l’encapçalen. D’aquesta manera, es disposa d’una “finestra” que ens permet veure el text que escrivim en el format en què l’imprimirem.

Les pantalles CRT usuals, malgrat els nombrosos avantatges que presenten, tenen l’inconvenient de fer molt d’embalum i de requerir una potència relativament alta per a funcionar. Aquest inconvenient es pot pal·liar amb pantalles planes basades en diverses tecnologies, com les pantalles de cristall líquid, emprades en ordinadors portàtils; les pantalles CRT amb reflector, que assoleixen una reducció considerable de la fondària, i, en especial, les pantalles de plasma.

El cristall líquid de les pantalles presenta característiques intermèdies entre una substància en estat sòlid i en estat líquid. El cristall líquid s’aplica en una capa fina, per darrere la pantalla, i, quan se sotmet a un camp elèctric, orienta les seves molècules de manera que es tornen opaques a una llum que les il·lumina per la part posterior. Aquest tipus de pantalla presenta l’avantatge d’oferir imatges sense el pampallugueig molest típic de les imatges dels tubs de raigs catòdics. Amb tot, també presenten inconvenients, ja que reprodueixen una imatge poc visible en condicions de lluminositat desfavorables, a més de tenir un nivell de contrast i de definició inferiors al de les pantalles CRT. Pel que fa a les pantalles de plasma, posseeixen una definició més bona i igualment desproveïda de pampallugueig.

El programari o software

Quan un ordinador està en funcionament efectua sempre alguna funció encara que sigui només per a mantenir-se en disposició d’acceptar dades. El programari o software el guia pas a pas perquè executi “mecànicament” un programa determinat.

Normalment, es fa la distinció entre el programari de base, que és el que controla els sistemes que fan funcionar l’ordinador quan es connecta, i el programari d’aplicació, que es divideix en el programari d’aplicació general (o general purpose), amb capacitat d’acomplir funcions globals, i el programari orientat o dedicat a una funció específica. Aquí, tot seguit, tractarem sobretot del programari de base i el d’aplicació general, i deixarem una mica de banda el programari orientat a funcions específiques, perquè es refereix a programes d’ús més restringit i especialitzat.

És evident la importància del programari de base, sense el qual el nostre ordinador no és més que “ferralla”, i no pas una màquina capaç de desenvolupar determinades funcions. En canvi, el programari d’aplicació general és el que es ven a les botigues d’informàtica i es presenta com a instrument per a respondre a les necessitats administratives i a les que es deriven de l’ús personal de l’ordinador. Els programes que el conformen estan dissenyats per a resoldre problemes diversos relatius als sectors d’aplicació més corrents. Els fulls de càlcul, els tractaments de textos o els programes de gestió administrativa, per exemple, són aplicacions generals en el sentit que es fan servir sobretot per a satisfer necessitats genèriques i no pas per a resoldre problemes específics. Així, n’hi ha prou amb uns retocs perquè el mateix programa el pugui fer servir un metge per a organitzar l’arxiu de casos interessants o un melòman per a classificar la seva col·lecció de discos.

El programari de base: el sistema operatiu

El sistema operatiu és com el director d’una orquestra simfònica, els elements de la qual són les diverses unitats del maquinari o hardware que conformen l’ordinador. Després de l’arrencada del sistema o inicialització, terme que designa les operacions automàtiques inicials que s’efectuen en engegar la màquina, el sistema operatiu acompleix un reguitzell de funcions, entre les quals hi ha l’administració dels programes de l’usuari; l’administració de la memòria de massa per a emmagatzemar-hi i extreure’n informació; l’administració de les operacions d’entrada i de sortida de les dades mitjançant l’ús de les unitats perifèriques (teclat, pantalla, impressora, etc.); la provisió dels instruments necessaris per a provar els programes, activar-los i desactivar-los, examinar el contingut de la memòria i modificar i executar els programes; la provisió de la senyalització dels errors, facilitant-ne la correcció i fent una supervisió general de tot el sistema, i l’execució dels programes compiladors, que converteixen els programes escrits en un llenguatge comprensible per l’usuari a un llenguatge que s’adeqüi a la màquina.

En la composició de l’ordinador personal, que sens dubte és fàcil de descriure, l’apartat del programari de base és probablement el més complex. D’altra banda, unes nocions bàsiques dels components del programari poden ser útils per a aprofitar al màxim les possibilitats de l’ordinador, i obtenir-ne un rendiment més còmode i eficaç.

El programari de base es divideix en tres seccions principals: el microprogramari, els sistemes operatius i els llenguatges de programació. El microprogramari o firmware és el punt de contacte entre el maquinari i el programari. Es tracta d’un conjunt de programes dipositats en la memòria morta (ROM). Quan s’engega l’ordinador, a la memòria RAM no hi ha programes que la CPU pugui començar a executar i, per això, la CPU s’orienta automàticament cap a una cel·la específica de la memòria ROM. Aquesta cel·la conté la primera instrucció d’un programa que, en executar-se, finalitza les seves operacions transferint a la memòria RAM els programes enregistrats en suport extern (disc dur o disquets). Generalment, el primer que entra en funcionament és un programa d’autocomprovació, en què es controlen automàticament tots els circuits i els components. Si s’hi detecta cap defecte, el sistema envia un missatge d’error a la pantalla juntament amb una breu descripció del problema, de manera que es puguin prendre les mesures oportunes. Un cop s’ha verificat que tot és en condicions, el control passa a un altre programa instal·lat a la memòria ROM que activa la càrrega —des d’una memòria secundària (el disquet o el disc dur, en els ordinadors personals)— del nucli del sistema operatiu. A partir d’aquí, el sistema operatiu assumeix el control del maquinari i en gestiona totes les interrelacions amb l’usuari i amb els programes aplicatius.

La memòria ROM conté, a més, tot un conjunt de programes molt importants, que s’anomena BIOS (Basic Input/Output System). Aquests programes fan possible una comunicació simplificada entre el sistema operatiu del programari i el maquinari (el microprocessador que controla les operacions d’entrada/sortida). Els programes del BIOS permeten d’executar detalladament la seqüència de les funcions que controlen el teclat, la pantalla, els disquets, les connexions estàndard d’entrada/sortida i altres dispositius d’entrada i de sortida.

Alguns ordinadors personals poden funcionar amb diversos sistemes operatius i viceversa, és a dir que alguns sistemes operatius poden activar-se en el maquinari de diversos ordinadors. Això és possible gràcies a la simplicitat del BIOS de la memòria ROM. Com més senzilles siguin les interfícies del maquinari, més fàcil serà adaptar els sistemes operatius a les diverses màquines, i això els farà disponibles a diversos ordinadors personals i viceversa.

Ara analitzarem els sistemes operatius més habituals en els ordinadors personals. Primerament, s’ha de tenir en compte que, com més prestacions tingui un sistema operatiu, menys memòria lliure restarà per als programes. Si el sistema operatiu es troba a la memòria ROM, s’activa quan la màquina s’engega. Si, en canvi, es troba en el disc dur o en un disquet, la ROM disposarà d’una rutina (programa d’ús repetit) que carrega el sistema operatiu no de cop, sinó a mesura que va funcionant, a fi de no reduir excessivament la memòria disponible per a l’usuari.

El sistema operatiu més emprat és l’MS-DOS (Microsoft Disk Operating System). Nou de cada deu usuaris fan servir aquest sistema operatiu en el seu ordinador personal. És un sistema produït per l’empresa nord-americana Microsoft, i és el capdavanter de tota una sèrie de sistemes operatius adoptats per la quasi totalitat dels fabricants. Les múltiples prestacions en la gestió d’arxius i de dades i la gran flexibilitat del llenguatge de comunicació han fet possible que aquest sistema operatiu sigui actualment el més estès.

De tota manera, d’ençà del començament de la dècada dels noranta, sobretot amb la idea d’incorporar al sistema les funcions gràfiques (gestió de pícsels, finestres, senyalització amb ratolí, etc.) de l’anomenada interfície gràfica d’usuari (Graphical User Interface o GUI), aquesta mateixa empresa va desenvolupar el subsistema Windows, un veritable complement del sistema operatiu MS-DOS, encara que de tota manera, cal dir-ho, acostuma a treballar “per sota” d’aquest. Després de diferents intents, la primera versió reeixida del Windows va ser la 3.1, operativa des de l’any 1992. Una nova versió, la Windows 95, dissimula prou bé el fet que opera amb l’ajut de l’MS-DOS, i millora les prestacions i la facilitat d’ús de l’ordinador.

El principal competidor del sistema operatiu MS-DOS i Windows és sens dubte el que fan servir els ordinadors de la família Macintosh, de la marca Apple, el System Finder. Aquest sistema operatiu ha estat el precursor de moltes de les novetats aparegudes aquests darrers anys, com ara l’ús del ratolí, les interfícies gràfiques i l’ús del so. Moltes de les funcions que han ofert els sistemes operatius de Microsoft eren ja disponibles uns anys abans en els Macintosh d’Apple.

No hem d’oblidar el sistema operatiu OS/2 d’IBM que s’ha implantat preferentment en àmbits professionals, on s’apreciava, a més de la presentació de tipus gràfic, la capacitat de processament simultani de més d’un programa (multitasking, però ja només disponible en Windows després del 1995) i la possibilitat d’operar en xarxes d’ordinadors que es reparteixen les tasques, les anomenades aplicacions distribuïdes.

Si ens situem en l’àmbit de les estacions de treball (workstations), ordinadors molt potents utilitzats per un sol usuari per a aplicacions tècniques o com a punt d’accés a recursos compartits en xarxa, és important esmentar el sistema operatiu Unix, realitzat el 1969 per l’empresa Bell. Aquest sistema ofereix versions adequades a ordinadors de diverses classes que emprin supermicroordinadors de 32 i 64 bits. En aquest camp, l’Unix s’està consolidant com a sistema operatiu estàndard, especialment en l’àmbit universitari, i ofereix bons resultats en aplicacions multiusuari. Existeixen diferents variants per a ordinadors personals, com el Linux, d’ús lliure i gratuït, amb multitud d’aplicacions interessants i molt pràctiques o les que proporcionen els diferents fabricants d’ordinadors.

Per bé que tots els sistemes operatius tenen la mateixa funció, que és la de fer possible el control de l’ordinador, a la pràctica cadascun funciona d’una manera diferent. Cada sistema en concret es divideix en diverses seccions, quatre de les quals, malgrat les diferents variants, realitzen funcions anàlogues en els diversos sistemes operatius. Vegem-les breument.

El processador d’ordres (command processor) és la part del sistema operatiu que apareix primer, després de les operacions inicials de carregament. Serveix per a executar les ordres que s’introdueixen sovint amb el teclat i que, de vegades, poden formar part de programes especials que reprodueixen les funcions dels operadors del teclat.

En molts sistemes operatius, el senyal de “preparat per a rebre ordres” consisteix en un missatge de prompt (que vol dir “vinga, comença!”): per exemple, “C>”. D’altres sistemes proposen un menú com a alternativa, en què es pot fer la tria marcant una tecla determinada o situant el cursor sobre l’opció desitjada i prement una tecla enter. Normalment, el sistema operatiu demana el pas següent. En aquest punt, es pot triar entre reclamar un dels programes d’utilitat (utility programs), que ofereix la possibilitat d’examinar el contingut d’un disc; preparar un disc per al seu ús (formatatge), o copiar els fitxers d’un disc a un altre. L’ordre més habitual és l’activació d’un programa d’aplicació. En aquest cas, n’hi ha prou d’introduir el nom del programa. Aleshores, el sistema operatiu el troba on s’ha enregistrat, el carrega a la memòria principal —sempre que no hi sigui— i li transfereix el control de les operacions.

El supervisor d’entrada i de sortida augmenta les capacitats del BIOS, en la mesura que simplifica posteriorment la gestió dels dispositius d’entrada/sortida per als programes que ho requereixen. Els anomenats controladors de dispositius o drivers formen part del supervisor d’entrada i de sortida. Cada driver és un grup d’instruccions que permet al sistema operatiu treballar amb un determinat dispositiu i gestionar els missatges d’error per mitjà d’un conjunt de regles clarament definit. El compliment d’aquestes regles facilita el funcionament dels programes d’aplicació. Els sistemes operatius preveuen normalment un cert nombre de drivers per a controlar les unitats perifèriques més corrents (teclat, ratolí, pantalla, discs, disquets, impressora, etc.). En el cas dels sistemes operatius més estesos, els controladors per a unitats perifèriques especials o poc corrents solen ser distribuïts pels fabricants dels perifèrics en qüestió i també es poden incorporar en el sistema operatiu originari.

El gestor de fitxers (file manager) s’encarrega d’emmagatzemar i de recuperar els fitxers del disc. Un fitxer és un conjunt d’informacions i de registres seleccionats que té un significat específic per a l’usuari, el qual l’identifica amb un nom. Els fitxers poden contenir programes o dades. Des del punt de vista conceptual, no hi ha cap diferència entre un fitxer i un document en suport paper. Així com un document en suport paper ben arxivat és fonamental per a l’organització i la manipulació de les dades en una oficina, igualment la manera d’organitzar i de gestionar els fitxers té una importància cabdal per al bon funcionament d’un ordinador. Entre les funcions del gestor de fitxers, destaquen la destinació d’un espai al disc per al nou fitxer, l’enregistrament de la informació i la recuperació quan s’escaigui. Atès que els discos solen contenir diversos fitxers, és important que el gestor de fitxers els pugui localitzar ràpidament. Aquesta operació s’efectua per mitjà d’un índex de fitxers, anomenat directori, que conté una llista de tots els fitxers amb la posició corresponent.

Una altra funció important del gestor de fitxers és encarregar-se de l’enregistrament dels fitxers en disquets. Hem dit que la informació s’enregistra en unes zones específiques (els sectors) de capacitat fixa. Els fitxers, en canvi, presenten dimensions variables. El gestor de fitxers els distribueix pel total de sectors disponibles al disc i, d’aquesta manera, optima l’ús de la memòria de massa.

Els programes d’utilitat són els encarregats d’efectuar tasques de suport per a altres programes o per al sistema operatiu. La seva gamma varia molt d’un sistema operatiu a l’altre. Alguns dels més emprats s’instal·len a la memòria juntament amb el processador d’ordres; d’altres es troben al disc a punt per a ser activats a la memòria principal. D’altra banda, atès que la RAM és generalment de dimensions limitades, els sistemes operatius se subdivideixen en dues àrees. D’una banda, els programes més utilitzats es troben sempre disponibles a la memòria, formant l’anomenada àrea resident, mentre que, de l’altra, la resta de programes són introduïts a la memòria quan es necessiten i només durant el temps requerit. La gamma de les utilitats depèn també de la manera com el distribuïdor confecciona l’oferta del programari. Moltes de les utilitats més corrents vénen incorporades al sistema operatiu. Entre aquestes podem trobar les següents: afegir la data i l’hora, esborrar el fitxer, duplicar-lo, disposar-lo en llistes, canviar-ne el nom o modificar-ne el contingut. Altres utilitats van associades a un llenguatge de programació i poden ser distribuïdes juntament amb el llenguatge en qüestió.

De tota manera, és molt important assenyalar que el sistema gestor de la interfície gràfica d’usuari present, per exemple, en el System Finder dels ordinadors Macintosh d’Apple o en els subsistemes operatius Windows de Microsoft, efectua totes aquestes funcions de manera molt menys evident per a l’usuari. A la pantalla apareixen diverses icones que poden ser senyalades amb el ratolí i activades prement el botó del ratolí o la tecla intro. La interfície és tan important en els sistemes moderns que la resta de subsistemes del sistema operatiu funciona “per sota” (en background) i l’usuari accedeix al sistema només mitjançant el que hom anomena diàlegs WIMP, és a dir, de windows (finestres), icons (icones), mouse (ratolí) i pop-up menus (menús emergents i, sovint, desplegables en forma de persiana).

Llenguatges, compiladors i intèrprets

En un ordinador, les instruccions es codifiquen amb números i s’enregistren a les cel·les de la memòria. Abans, el programador era qui s’encarregava de traduir les instruccions en una sèrie de números fent servir unes fitxes o targetes perforades. Posteriorment, aquesta funció es va assignar a l’ordinador, que, a partir d’un programa de correspondències, convertia un codi simbòlic en el número corresponent. Cada instrucció, que de fet representava un paquet d’instruccions, era identificable directament per l’ordinador, però a costa de transformar-se en un llenguatge especialitzat molt allunyat de tota llengua natural. Aleshores es van crear uns llenguatges destinats a facilitar la feina dels programadors, anomenats llenguatges d’alt nivell, i també, evidentment, uns programes especials que permetien obtenir els paquets d’instruccions a través de la CPU. Entre els llenguatges més coneguts, dels quals parlarem a “Els llenguatges de programació més emprats”, podem citar el fortran, per al càlcul científic; el basic, d’ús general i relativament fàcil d’aprendre, emprat sobretot en els ordinadors personals; el cobol, per a usos comercials i administratius, i el pascal, per a l’escriptura de programari de base i didàctica informàtica. Cadascun d’aquests llenguatges presenta certes variants, de manera que un programa escrit en basic no funcionarà forçosament en tots els ordinadors que facin servir aquest llenguatge; encara més, generalment això no serà possible. Així doncs, el que es fa normalment és repassar la llista de les instruccions per tal de controlar que no s’incloguin ordres que l’ordinador que es fa servir no accepti i, si escau, se substitueixen la instrucció o el paquet d’instruccions corresponents. Cada llenguatge requereix uns programes que tradueixin el llenguatge de programació d’alt nivell en un llenguatge que sigui entès directament per l’ordinador (llenguatge màquina). Aquesta transformació es pot efectuar de dues maneres: mitjançant un compilador o mitjançant un intèrpret.

El compilador és senzillament un programa que analitza el programa escrit en llenguatge d’alt nivell (o programa font) pel programador, n’assenyala els possibles errors i, si tot és correcte, escriu a la memòria en llenguatge màquina (o en llenguatge intermedi) les instruccions (el codi objecte) que permeten executar les operacions requerides pel programador. Després de la compilació, es pot executar el programa en qualsevol moment. Si es dóna l’ordre d’execució (per exemple, el clàssic run del llenguatge basic), el programa es carrega de la memòria de massa central i s’executa sense necessitat de repetir l’operació de compilació.

L’intèrpret, en canvi, funciona a mesura que el programador l’escriu amb l’ajut del teclat i en verifica la correcció a cada línia que completa. El programa, però, no es tradueix al llenguatge màquina, sinó que únicament s’enregistra a la memòria central després d’un eventual procés de compactació i optimització. És durant l’execució que l’intèrpret codifica la instrucció en llenguatge màquina i l’activa. Això comporta que els programes interpretats siguin més lents, ja que la mateixa instrucció s’interpreta cada cop que es repeteix, encara que sigui milers de vegades.

Això no obstant, l’ús dels llenguatges interpretats s’ha consolidat en els ordinadors personals gràcies al fet que, actualment, permeten ser controlats i modificats durant el seu funcionament i, d’aquesta manera, faciliten la programació. El llenguatge basic és, en la majoria dels casos, un llenguatge interpretat.

Els llenguatges de programació més emprats

Són nombrosos els llenguatges de programació que s’utilitzen en els ordinadors. Alguns llenguatges d’alt nivell es destinen a certs tipus d’aplicacions, d’altres són més aptes per a usos diferents. Si, per exemple, s’han de fer principalment operacions matemàtiques, la tria recaurà sobre un llenguatge desenvolupat per a aquesta disciplina, mentre que, en les aplicacions de tipus general, elaborades per a operar en el món dels negocis, s’optarà per un llenguatge destinat a aquest sector.

El basic, acrònim que correspon als termes en anglès beginner’s all-purpose symbolic instruction code (‘codi d’instrucció simbòlica multiús per a principiants’), pretén ser un llenguatge apte per a totes les aplicacions. Es tracta del llenguatge d’alt nivell més estès i és especialment adequat per a usuaris no gaire experts que s’iniciïn en la programació. N’hi ha prou amb un mínim de pràctica per a aprendre a escriure qualsevol programa fent servir un nombre reduït d’instruccions simples. Això no treu que el basic també permeti programar aplicacions molt sofisticades.

El basic és format d’operadors i instruccions que guien el processament de les dades; d’instruccions per a l’assignació de les dades a les variables, per a la introducció de les dades des d’una unitat d’entrada, per a l’enviament de les dades a una unitat de sortida; de comandaments per a executar programes i subprogrames emmagatzemats a la memòria principal o en un disc, per a transferir-los a les memòries de massa i viceversa, per a visualitzar-ne els missatges a la pantalla, etc. El principal avantatge del basic rau en el fet que és fàcil d’aprendre. Però precisament aquesta facilitat pot resultar un inconvenient. I és que és molt fàcil escriure programes mal organitzats i, d’altra banda, la velocitat d’interpretació del basic és més aviat reduïda, la qual cosa justifica l’apel·latiu de llenguatge de programació “per a principiants”. De tota manera, també existeixen variants del basic compilades amb què un programador entès pot arribar a projectar i estructurar programes que, un cop compilats, tinguin aplicacions de gran utilitat. Cada sistema operatiu (i, de fet, cada ordinador) presenta variacions o, molt sovint, derivacions respecte al basic originari. Amb tot, un dels principals motius de l’èxit del basic en l’àmbit de l’ordinador personal rau precisament en el fet que, tan bon punt es domina un dels seus dialectes, els altres són fàcils d’assimilar.

El pascal, anomenat així en honor del matemàtic i filòsof francès Blaise Pascal, és un altre llenguatge de programació de gran difusió en l’àmbit acadèmic. D’ús freqüent en el camp del desenvolupament del programari, els programes escrits en pascal són fàcils de llegir, per la qual cosa es requereix poc esforç per a entendre’l o modificar-lo. La naturalesa d’aquest llenguatge obliga el programador a fer servir tècniques anomenades de programació estructurada. En realitat, els programes en pascal es componen d’un nombre determinat de subprogrames més petits. En un programa o subprograma pascal, les variables s’han de definir al començament. Aquest rigor en el procediment permet evitar possibles errors abans de l’activació del programa. El gran nombre de classes de dades que es poden assignar a les variables fa que el pascal s’adapti a una àmplia gamma d’aplicacions. El pascal sol ser objecte de compilació, però una de les seves variants més conegudes, el pascal UCSD, pot produir un pseudollenguatge (p-code) que, igual que el basic, ha de ser interpretat en el moment de funcionar. Les versions compilades del pascal produeixen programes d’una velocitat considerable, superior en qualsevol cas a la versió p-code del pascal, la qual en contrapartida es pot adaptar a un gran nombre d’ordinadors personals. L’inconvenient principal del pascal per a l’usuari particular de l’ordinador personal rau en les nombroses operacions que s’han d’efectuar abans d’obtenir un programa en funcionament. Pel que fa als seus avantatges principals, s’aprecien quan es tracta d’escriure programes més aviat extensos, una activitat que és pròpia de les empreses de programari, és a dir, dels fabricants de programes.

El fortran va ser el primer llenguatge de programació que va assolir una àmplia difusió. Prové de les paraules formula translator, d’on es dedueix l’ús per al qual va ser concebut originàriament. La primera versió es remunta a l’any 1954, i l’últim estàndard acceptat internacionalment és del 1977. Per bé que es pugui fer servir com a llenguatge d’ús general, és especialment vigent en les ciències i en l’enginyeria.

Un dels avantatges del fortran en els camps esmentats consisteix en el fet que les fórmules algebraiques s’escriuen gairebé en la mateixa forma matemàtica original. Moltes funcions matemàtiques, com per exemple les trigonomètriques, poden ser recollides directament d’una “llibreria de rutines” ja preparada. L’estructura del llenguatge es presta a la creació d’una sèrie de rutines, cadascuna de les quals tracta una operació específica. Per aquesta raó, molts programes en fortran estan fets d’una breu rutina de control que reclama un cert nombre de subrutines independents. El principal punt feble del fortran és la gran facilitat de cometre errors de codificació. Un altre inconvenient és el fet de requerir un compilador de grans dimensions per a suportar-ne tota la potència. En bona part per totes aquestes raons, ha estat substituït pel llenguatge C.

El cobol (common business oriented language) es va crear a cavall dels anys cinquanta i seixanta per al tractament de dades d’àmbit administratiu i financer. Un dels seus avantatges més grans rau en el fet que els programes que permet crear es poden llegir com un text anglès normal. Un programa en cobol ben dissenyat pot ser entès per usuaris no experts, sempre que els trenta caràcters disponibles per a les paraules del cobol s’aprofitin convenientment. Això vol dir que els programes en cobol són gairebé autodocumentats i, per tant, de manipulació més fàcil. Un altre avantatge d’aquest llenguatge és la seva capacitat d’extreure grans quantitats de dades, mentre que el seu desavantatge principal consisteix, com en el cas del fortran, en el fet de requerir un compilador de grans dimensions que s’adapti a totes les seves característiques.

El logo (de la paraula grega que significa ‘discurs’ o ‘pensament’) té el mateix origen que el basic. Es va desenvolupar per a ensenyar els fonaments del tractament de dades i la programació. En ser un instrument d’ensenyament, es caracteritza per la seva senzillesa, i això fa que sigui fàcil d’aprendre. Però, tal vegada, només ho és si no s’ha après prèviament cap altre llenguatge de programació. El logo hauria de ser el primer llenguatge de programació que s’ensenyés, atès que la seva finalitat és precisament la d’afavorir la comprensió dels conceptes matemàtics i de programació. És prou senzill per a adaptar-se a un nen de 5 anys i, a la vegada, prou sofisticat per a ser útil per a un informàtic en tant que posa de manifest els processos naturals del raonament humà.

El logo ensenya a resoldre els problemes i a desenvolupar el pensament lògic a partir del processament de llistes i del “gràfic de la tortuga” (turtle graphics). El tractament de llistes (una tècnica derivada del lisp, un llenguatge típic de la intel·ligència artificial) consisteix a fraccionar problemes complexos en parts simples, segons la tècnica del genèric al concret (top-down). El gràfic de la tortuga ensenya la geometria fent-la “tocar amb la mà”. La tortuga deixa un rastre a la pantalla seguint les instruccions que s’indiquen amb el teclat. El logo incorpora uns dos-cents comandaments, anomenats primitive. També se’n poden crear de nous, senzillament teclejant to anyword, un grup d’instruccions, i end. El comandament tones permet fer experiments musicals, i, especificant la freqüència i la durada d’un grup de notes, es poden crear des de simples escales a composicions complexes de música electrònica.

El llenguatge C combina els avantatges d’un llenguatge d’alt nivell amb l’aplicació concreta de l’accés a certes característiques específiques d’un determinat processador, de manera semblant a la d’un assemblador. De fet, alguns programadors en C el consideren com un assemblador portàtil. A l’igual d’altres llenguatges d’alt nivell, el C està concebut per a la programació estructurada i és dels més utilitzats en el desenvolupament del programari o software. Amb tot, presenta moltes característiques pròpies dels llenguatges de baix nivell, com és, per exemple, el fet de treballar directament amb bits. Es tracta d’un llenguatge relativament compacte, amb trenta paraules clau solament. Aquest caràcter compacte, i el fet que els seus compiladors també estiguin escrits en C, fa que sigui fàcil d’adaptar a una nova màquina. També pel seu caràcter compacte necessita poques regles per a ser usat. El C posseeix una sintaxi estàndard i una llibreria de subrutines preparades per a l’ús.

Les funcions de subrutina no formen part del llenguatge pròpiament dit. Un programador pot crear-se fàcilment les funcions que no són presents a la llibreria estàndard. Moltes de les rutines específiques d’un cert maquinari —del tipus d’entrada/sortida— formen part de la llibreria. D’aquesta manera es facilita la preparació de programes independents de la màquina. N’hi ha prou de substituir les subrutines específiques per aquelles que s’adeqüin a la màquina que es vol utilitzar.

La manca de regles per a usuaris, juntament amb el fet que el llenguatge parteix del pressupòsit que el programador sap què està fent, fan del C un llenguatge més apte per als experts que per als principiants.

L’assemblador és molt proper al codi màquina del processador. D’aquesta manera, existeix un tipus específic d’assemblador per a cada processador. El codi d’origen, anomenat també codi simbòlic, de l’assemblador s’ha de traduir al llenguatge màquina. De fet, cada sistema operatiu té el seu assemblador, i n’hi ha que en tenen dos. L’assemblador varia d’un ordinador a l’altre, però les tècniques de programació destinades al seu ús són sempre les mateixes, atesa la seva afinitat amb el codi màquina.

Es recorre a l’assemblador quan els factors crítics són la velocitat d’execució i l’ocupació de memòria. O bé quan és necessari accedir directament als mecanismes interns de l’ordinador personal. Tot i això, cada cop més és substituït pel llenguatge C en aquestes funcions, gràcies especialment a la portabilitat del C, això és, la propietat de poder usar el mateix programa lleugerament modificat en diferents ordinadors.

El programari d’aplicació

El fet de disposar d’un ordinador modern i en bones condicions connectat a uns perifèrics adequats no garanteix prou que se’n faci un ús correcte i sense complicacions. Cal escollir adequadament l’anomenat programari d’aplicació. Com s’ha dit, el programari d’aplicació normalment es distingeix del programari d’ús específic i del programari d’aplicació general. El programari d’ús específic representa un conjunt de programes creats per a respondre a una determinada necessitat. És d’ús immediat, de manera que, un cop s’ha introduït a la memòria de l’ordinador, ja es pot executar. En canvi, el programari d’aplicació general no està destinat a una sola aplicació, sinó a tot un sector. Així, per exemple, un programa de base de dades podrà ser útil tant per a classificar els llibres de la biblioteca d’un escriptor com per a arxivar els expedients dels pacients d’un metge. L’estructura del programa és la mateixa i només s’ha de personalitzar segons l’activitat a què es dediqui.

Apuntarem ara un seguit de criteris que cal considerar en el moment de triar el programari d’ús específic més escaient per a respondre a una necessitat determinada: a) El camp d’aplicació: en el moment d’adquirir un programari, per a assegurar-nos que obeeix a les nostres necessitats, és convenient assistir a una demostració que n’il·lustri els aspectes que més ens interessen. b) El cost: pot ser molt elevat, però depèn molt del tipus de producte i de les característiques de les necessitats que ha de cobrir. c) La garantia de qualitat: un bon criteri de selecció és el fet que el programari en qüestió hagi estat aplicat i utilitzat a bastament; si l’empresa o l’informàtic que l’ha dissenyat és de solvència contrastada, la qualitat del programa estarà garantida. d) La documentació: és un element molt important que permet l’ús del programa en totes les seves possibilitats. Si el programa ha estat objecte d’experimentació en els centres de programació, no és necessari, en el moment d’utilitzar-lo, provar-ne les diverses funcions. Una bona documentació és garantia de bona qualitat. e) La protecció: garanteix que el programa funcioni sense ser danyat si s’utilitza incorrectament. Normalment això és possible mitjançant comandaments suplementaris de verificació referents als comandaments “perillosos”: per exemple, els que esborren el contingut d’una memòria. f) El control d’accés a la informació: l’accés als documents ha de ser restringit, ja que no convé que estiguin a la disposició de qualsevol usuari, i per això existeixen diversos sistemes que se serveixen d’una contrasenya (password) o d’altres dispositius, com són claus o targetes magnètiques, per a permetre l’accés als fitxers només a qui hi estigui autoritzat. g) La fiabilitat: és un element molt important quan es tracta de regular sistemes de seguretat o especialment delicats. La fiabilitat s’obté a partir de la mesura de la mitjana de temps entre un error i el següent.

El programari d’aplicació general sol tenir un cost molt inferior al del programari d’ús específic i és el que ha assolit un major èxit gràcies a la difusió de l’ordinador personal. A més dels criteris que hem indicat per a la tria del programari d’ús específic, en el cas del programari d’aplicació general cal considerar-ne alguns més: a) La flexibilitat: possibilita el canvi d’aplicació, mitjançant una simple variació de la descripció del problema. Una major flexibilitat permet l’ús del programari en aplicacions diferents. b) La facilitat d’instal·lació: és important que les operacions inicials per a instal·lar el producte, d’acord amb l’ordinador i els perifèrics de què es disposi, no presentin complicacions excessives. c) La facilitat d’ús: si el producte ha d’estar a l’abast d’usuaris no experts en informàtica, els comandaments han de ser comprensibles i disponibles en menús, és a dir, en llistes que presentin les opcions de què es disposa, i també hi ha d’haver un comandament d’ajuda (help) que aporti les indicacions referents a l’ús del programari.

Els virus informàtics

Un dels problemes que es poden presentar avui a l’usuari d’un ordinador és l’anomenat contagi d’un virus informàtic. És una denominació recent, establerta amb motiu de l’aparició de casos de pèrdua del treball realitzat a l’ordinador i d’informació emmagatzemada a la memòria i als discos.

Però, què és un virus informàtic? Doncs, és un programa amb la propietat d’infectar altres programes i modificar-los de manera que incorporin una versió nova del virus. Cada programa infectat es comporta si fa no fa com el suport d’un virus biològic i, a més, quan s’executa, permet que el virus propagui el contagi. El virus informàtic és, dit ben simplement, un programa amagat en un altre i que, en activar-se, pren el control, es reprodueix i, si escau, executa la “càrrega” (pay load), o sigui, les funcions per a les quals està programat. El contagi es pot produir per mitjà d’un disquet infectat, un ordinador infectat o també pels sistemes de comunicació telemàtica.

Un virus pot fer servir tota mena d’estratègies per a amagar-se. Així, es pot implantar a la pista d’arrencada de l’ordinador (boot), al sistema operatiu o als programes executables. Sembla que l’última moda en aquest camp és la utilització dels llenguatges de programació interna (macro) d’un processador de textos o d’un full de càlcul per a inserir un virus en un document o en qualsevol fitxer no executable.

El nombre de virus és cada dia més alt i les seves formes són cada cop més variades. Són famosos, per exemple, el Pakistan brain o el Friday 13, conegut precisament per activar-se només els dies que són divendres i 13, dia de malastrugança en la tradició anglosaxona. N’hi ha de curiosos, com el Flu-Shot 4, un antivirus fals difós a través de les xarxes telemàtiques.

Els danys que pot provocar un virus van de la destrucció de la FAT (file allocation table o ‘panell de la localització dels documents’) fins a la supressió de programes i de dades del disc dur. Si l’acció de la localització dels documents es barreja amb la resta de programes de l’ordinador, s’obté el mateix efecte que si es destruïssin perquè resulta impossible de trobar els documents.

La gran proliferació dels virus informàtics ha generat un mercat important de programes antivirus. Aquests programes són capaços de detectar els virus i, sovint, d’eliminar-los i netejar-ne l’ordinador i els disquets. Fins i tot és recomanable la instal·lació de programes detectors de virus que impedeixen que actuïn en cas d’intentar infectar el sistema. Amb tot, la freqüent aparició de nous virus fa que els antivirus s’hagin de renovar sovint si es vol que continuïn tenint eficàcia.

Programes de comunicació

Per a comunicar-se a distància d’un ordinador a un altre, a més d’un mòdem, cal també un programa adequat, que s’ha de triar d’acord amb el resultat que s’esperi obtenir. Alguns ordinadors portàtils ja duen incorporat aquest programa en la memòria ROM, encara que sovint ofereixen possibilitats limitades. Les característiques principals que cal tenir en compte són essencialment el sistema operatiu i el protocol de transmissió. El sistema operatiu és el primer punt que s’ha considerar, ja que un programa escrit, per exemple, en MS-DOS només pot ser emprat en un ordinador que disposi d’aquest sistema operatiu. Pel que fa al protocol de transmissió, és fonamental i s’ha de tenir present que existeixen diversos protocols de transmissió-recepció, cadascun dels quals és un conjunt de regles que estableixen les modalitats de comunicació entre el mòdem i l’ordinador. Prèviament a l’adquisició del mòdem i del programari, és convenient informar-se sobre els protocols de què disposa l’interlocutor (vegeu “La transmissió del text i el multimèdia”). La informació viatja pels cables telefònics en forma d’impulsos elèctrics i, en arribar a la seva destinació, és traduïda en caràcters ASCII perquè es pugui veure en pantalla, imprimir o enregistrar en suport magnètic o òptic. Un bon paquet de programes ha d’oferir la capacitat de gestionar aquestes tres operacions i de tractar qualsevol tipus de fitxer: textos, dades numèriques, gràfiques i imatges, programes en llenguatge d’alt nivell i en llenguatge màquina. D’altra banda, cal que el programa contingui també una rutina de control automàtic de verificació de les dades. Això garanteix una certa seguretat envers les dades rebudes des d’un banc que potser es troba a milers de quilòmetres. Normalment aquests controls s’efectuen a cada byte transmès o rebut, utilitzant com a referència l’últim bit, anomenat bit de paritat.

Abans de connectar-se amb un banc de dades, és necessari establir els paràmetres relatius als protocols de comunicació propis del banc. En general es pot “salvar” (enregistrar) en un fitxer en disc els paràmetres dels ordinadors amb què es produeix la comunicació per a no haver de repetir cada cop la inicialització. Quan les dades apareixen a la pantalla, l’ordinador les recull en una àrea de la memòria RAM anomenada memòria intermèdia o buffer. Els programes més eficaços preveuen un buidatge periòdic del buffer mitjançant l’enviament de les dades al disc. En aquest sentit, aquests programes són millors que els que descarreguen la informació sobre el disc només al final de la connexió, i encara més que els que permeten únicament imprimir en paper el que es rep de l’altre ordinador.

Programes de càlcul

En les aplicacions d’anàlisi i de planificació, és de gran utilitat l’ús de programes anomenats fulls de càlcul (spreadsheet). Tots permeten respondre a la pregunta “què succeeix si...” (per exemple, si les despeses augmenten, si les vendes disminueixen, si ampliem la nostra activitat, si canvia l’impost sobre la renda, etc.). La idea de base és la creació d’un gran full quadriculat amb múltiples caselles o cel·les. Cada casella pot contenir unes operacions matemàtiques específiques i uns valors fixos. Tant si canviem les xifres com si canviem les fórmules, canviem també els resultats. En qualsevol cas, les modificacions dels resultats es produeixen automàticament segons el programa. Un full de càlcul és constituït per una matriu de n línies i m columnes, i així les caselles poden identificar-se per un doble índex. Cada programa té unes característiques peculiars. Una diferència substancial rau en la modalitat d’introducció de les dades des del teclat, que es pot fer mitjançant comandaments directes, prement l’opció triada en el menú, teclejant la lletra inicial de l’opció preseleccionada, o bé per una tecla de funció.

La introducció de les dades tampoc no es produeix de la mateixa manera en tots els fulls de càlcul. N’hi ha que requereixen l’especificació del tipus de dada que es pretén introduir (si és alfanumèrica, numèrica o fórmula) i n’hi ha que no. És important poder excloure el càlcul automàtic, ja que, si no es fa així, cada cop que es canvia el valor d’una casella es refà el càlcul de tota la resta dels valors, cosa que suposa una pèrdua de temps considerable.

Programes d’arxiu

Es tracta dels programes coneguts com a bases de dades (data base), que no són res més que reculls d’informació tant de tipus numèric com de tipus textual. Una base de dades permet buscar una informació concreta o bé trobar un conjunt de dades relacionades amb un criteri determinat o bé presentar la informació de diverses maneres. Els usos són molt variats. Les companyies aèries les fan servir en el lliurament dels bitllets; en una empresa és possible, per exemple, obtenir la llista dels treballadors d’una determinada oficina o de tots els productes; i també es pot utilitzar una base de dades com a agenda telefònica, entre altres coses. Per a entendre com s’organitza una base de dades, podem servir-nos d’aquest últim exemple. El fitxer (o l’agenda telefònica) conté un cert nombre d’informacions, els registres, uns elements que per definició són tots iguals en l’estructura (en el nostre cas: nom, cognom, adreça i número de telèfon). Cada registre se subdivideix en seccions lògiques anomenades camps. El nom, el cognom, l’adreça i el número de telèfon són camps.

En el mercat existeixen programes d’arxiu aptes per a diverses aplicacions, com la gestió d’una botiga, l’arxiu d’una biblioteca o el manteniment d’una llista de clients. Els documents presenten una estructura fixa, i el nombre i la denominació dels camps són triats pel programador. En aquest cas, l’usuari es limita a introduir i a manipular les dades. En canvi, si es tracta d’un programa que l’usuari pot estructurar al seu gust, l’operació que s’ha de realitzar inicialment consisteix a preparar l’estructura de la base de dades. L’usuari ha de decidir el tipus d’informació que vol introduir i l’espai que pot ocupar.

Per exemple, si volem crear un arxiu d’adreces, podríem assignar vint caràcters al nom, trenta a l’adreça i deu al codi postal. Un cop completada l’estructura, es passa a la fase més feixuga: la introducció de les dades. Gairebé tots els programes, abans de ser activats, requereixen la definició d’una plantilla amb espais definits que cal omplenar. Quan un registre s’ha completat, l’ordinador l’enregistra i presenta la plantilla per a l’operació següent. Alguns programes enregistren directament al disc les dades introduïdes, registre per registre, mentre que d’altres només ho fan al final de la sessió. Aquest últim sistema és força més ràpid, però també és més arriscat, i en qualsevol cas és sempre molt recomanable fer periòdicament còpies de seguretat.

Quan s’ha completat l’arxiu, és possible efectuar algunes operacions fonamentals com són l’ordenació dels registres (sorting) o la composició de subconjunts seleccionats segons criteris lògics. Els programes més complets fan possible l’ordenació lògica a diferents nivells i la utilització d’operadors lògics com and i or. D’altra banda, es pot especificar l’interval de l’ordenació i fer comparacions entre camps diversos. Tots els programes permeten imprimir els registres en paper, però només uns quants tenen la capacitat de fer impressions amb estructures diferents de les enregistrades. En general, quan aquesta funció és possible, també es pot transportar el contingut de la base de dades a programes de full de càlcul o de tractament de textos. D’aquesta manera, per exemple, és possible preparar un balanç econòmic anual i crear una carta personalitzada per a tots els accionistes a partir de l’extracció de les dades econòmiques i de les adreces provinents de dos fitxers diferents. Les bases de dades més recents poden ser programades per l’usuari mitjançant unes seqüències de comandaments i de funcions organitzats en forma d’instruccions.

Programes de dibuix

Actualment, hi ha disponibles nombrosos programes concebuts per a l’elaboració de projectes i de dissenys industrials per mitjà d’ordinador (vegeu “L’automació”). Aquestes tècniques s’anomenen CAD (Computer Aided Design o ‘disseny assistit per ordinador’) i CAM (Computer Aided Manufacturing o ‘producció assistida per ordinador’). Gràcies a la disminució dels preus i a l’augment de prestacions que caracteritzen el sector de la informàtica, els ordinadors personals actuals poden dotar-se dels perifèrics necessaris per a aquestes aplicacions, com la taula de disseny gràfic o el traçador.

L’ordinador, en virtut de la seva capacitat de controlar tots els detalls d’una imatge, posa a disposició de l’usuari un full en blanc per a la realització de qualsevol tipus de dibuix. Per a dibuixar es pot fer servir el ratolí, el teclat, el joystick o un llapis òptic. La solució més senzilla consisteix a utilitzar el ratolí o les tecles que permeten desplaçar el cursor. Alguns comandaments específics ofereixen la possibilitat d’acolorir les imatges o de crear efectes de profunditat, entre moltes altres funcions. Un bon sistema és també l’ús de la taula de dibuix gràfic. Consisteix en una taula veritable, sobre la qual es dibuixa com quan es fa amb un llapis convencional. El seu principal avantatge és la possibilitat de treballar mitjançant el calc. Es tracta senzillament de col·locar el dibuix sobre la taula i de resseguir-ne els contorns. D’altra banda, el llapis òptic permet dibuixar directament sobre la pantalla com si es tractés d’un llapis normal. La petita interfície de què està dotat el llapis i el programari corresponent indiquen en cada moment la posició de la punta del llapis, però cal que es procedeixi lentament i amb bon pols per tal d’evitar salts.

Gairebé tots els programes d’aquest tipus ofereixen la possibilitat d’efectuar algunes operacions bàsiques com poden ser traçar línies, punts, cercles, marcs i caixes. Les figures dibuixades a la pantalla poden duplicar-se, modificar-se i acolorir-se amb comandaments simples. Alguns programes utilitzen menús per a indicar les opcions, mentre que d’altres fan servir icones que simbolitzen la funció que es pot seleccionar.

Alguns programes més evolucionats permeten l’obtenció de dibuixos complexos (fins i tot animats) gràcies a l’adopció d’un llenguatge de programació gràfica. La gestió dels colors sovint queda limitada per les característiques de l’ordinador personal i normalment els colors disponibles s’extreuen d’una paleta electrònica que apareix a la pantalla. Per a corregir i redefinir els detalls, és de gran utilitat la funció del zoom, que permet d’engrandir una part de manera que es pugui intervenir sobre el dibuix amb més precisió. També és important la funció que possibilita la selecció del gruix de la línia per tal de simular l’efecte que produiria una ploma d’oca o un pinzell de feltre o d’altres tipus. Entre les funcions especials, podem esmentar la de mirall, que permet reproduir de manera instantània imatges especulars, i també la possibilitat de treballar les figures amb una sèrie de trames disposades prèviament. La impressió, quan és possible, requereix una impressora de qualitat per a obtenir imatges en blanc i negre o en color, o bé un traçador per a imprimir imatges a gran escala.

Programes de tractament de textos

Els programes de tractament de textos (word processor) són segurament el programari (software) més utilitzat, atès que són necessaris en moltes activitats. Alguns ordinadors duen incorporats programes de tractament de textos relativament senzills. Els comandaments es poden efectuar mitjançant les tecles de funció o amb certes combinacions de dues o més tecles, o també desplaçant el cursor fent ús del ratolí i desplegant les finestres de les opcions desitjades.

Ara il·lustrarem algunes de les funcions més importants dels sistemes d’escriptura mitjançant l’ordinador. Pel que fa al disseny d’una pàgina, es pot dur a terme el format automàtic dels marges; la justificació, és a dir, la inserció d’espais entre les paraules d’una mateixa línia per tal d’unificar la llargada de les línies; la modificació dels marges, amb la recomposició subsegüent del text introduït; la situació centrada del títol; el salt de pàgina automàtic; opcions específiques d’impressió, que comprenen l’estil dels caràcters, la possibilitat de subratllar frases o d’escriure-les en negreta, etc. Pel que fa a la composició del text, es poden fer desplaçaments, supressions o còpies de fragments sencers, fins i tot d’un document a un altre; també es pot buscar i, si cal, substituir una o diverses ocurrències d’una determinada paraula, o d’una frase, per una altra de diferent llargada, i recompondre automàticament el text. Quan s’està escrivint el document, el text apareix a la pantalla, de manera que si s’hi detecten errors es poden corregir desplaçant convenientment el cursor. Un cop corregits els errors, s’enregistra el document i, seguidament, es pot procedir a la impressió. El principal avantatge dels programes de processament de textos és la possibilitat, un cop s’ha escrit el text, de revisar-lo, corregir-lo i manipular-lo abans d’imprimir-lo. És possible centrar els títols, regular l’espai entre línies, ajustar els marges, i tot plegat d’una manera automàtica. Un altre avantatge és el de l’arxiu dels textos, que es pot efectuar tant en disc com en paper.

Informàtica i societat

En els capítols precedents, hem analitzat els ordinadors, que han estat considerats els elements bàsics del món informàtic, i n’hem descrit els components, les funcions i les modalitats de funcionament. La difusió progressiva dels ordinadors en sectors socials i productius, l’increment continuat de les capacitats d’aquestes màquines, la seva creixent accessibilitat econòmica, que n’ha fet possible l’ús privat, han portat, en un espai de temps extraordinàriament breu, a la informatització d’una gran part de la societat.

Els progressos de la informàtica

És difícil de trobar actualment un sector de l’activitat humana en què la informàtica no s’hagi implantat amb més o menys força tant de manera directa, a través de les aplicacions innombrables de procediments informàtics, com de manera indirecta, però no menys eficaçment, per mitjà de la creació de noves perspectives per a afrontar situacions d’índole diversa.

Pel que respecta al càlcul numèric, l’ordinador fa possible el tractament de grans quantitats de dades, la resolució de sistemes de centenars o de milers d’equacions, el recurs de successius processos d’iteració, etc. Però d’igual importància és el fet que existeix la possibilitat d’utilitzar formulacions tècniques rigoroses dels diversos fenòmens en qüestió, sense necessitat de recórrer a fórmules més o menys aproximades. Les exigències imposades per les metodologies que s’han ideat per a resoldre numèricament els problemes plantejats en les formes teòriques originals han contribuït a un considerable progrés de les matemàtiques. En termes més generals, el que abans de l’aparició dels ordinadors era el càlcul numèric s’ha convertit en una disciplina rigorosa, l’anàlisi numèrica, i han sorgit noves branques de la matemàtica, com són la matemàtica computacional i la combinatòria, que en el passat tenien poca entitat i un contingut escàs. Però l’ordinador no és solament un calculador, és més aviat un processador d’informació en el sentit més genèric, i el processament de la informació és una de les necessitats vitals de l’ésser humà. Hi ha molts aspectes que fan que la informàtica es pugui considerar un element revolucionari en l’evolució de la societat. L’ordinador està dotat d’una extraordinària velocitat de processament, milions de vegades superior a la humana; disposa d’una gran capacitat d’emmagatzematge en la memòria central i en la perifèrica, que permet d’enregistrar centenars de milions de dades elementals (noms, dades numèriques, descripcions vàries, etc.); i, quan els programes estan ben fets, presenta una probabilitat d’error increïblement inferior a la humana.

Si es volgués efectuar manualment un control de la producció d’una empresa a partir de l’estudi de mercat, caldria un temps superior a la durada dels cicles productius, de manera que la utilitat del control resultaria nul·la. En canvi, el mateix control realitzat per ordinador, ampliant-ne el camp d’estudi, requereix un temps relativament tan breu, que actualment s’ha convertit en una pràctica d’una extraordinària importància en la planificació industrial, sobretot tenint en compte les possibilitats que ofereixen les tècniques de projecció automàtica. De manera anàloga, la fiabilitat de les previsions meteorològiques només es pot aconseguir quan es disposa de grans quantitats de dades climàtiques i de la possibilitat de processar-les a gran velocitat. El primer requisit es pot satisfer per mitjà d’uns sofisticats dispositius de telecomunicació: els satèl·lits artificials. L’ordinador fa la resta. Aquest exemple il·lustra un últim aspecte de l’evolució dels ordinadors, que és la interacció de diverses disciplines que uneixen, i sovint sintetitzen, diverses tecnologies i metodologies. En aquest cas, de la conjunció de les telecomunicacions amb la informàtica sorgeixen les tecnologies de la informació, dites abans telemàtica.

Les novetats provinents dels sistemes informàtics han estat ràpidament adoptades pel món de la producció industrial, ja que es tracta d’un sector tradicionalment receptiu a les noves tecnologies i sensible a les perspectives d’increment de productivitat i de qualitat del producte. L’automació dels processos productius, a més de comportar una disminució dels costos de mà d’obra, ha permès de renovar les tècniques de producció, ha aportat beneficis considerables a l’economia global de les empreses i ha alliberat l’ésser humà de feines mecàniques i poc qualificades (vegeu “L’automació”).

La creació i el processament de grans bases de dades constitueixen un dels aspectes més importants per als processos de gestió, i és precisament la capacitat de crear i de manipular arxius d’aquest tipus el que obre un ventall enorme de possibilitats, en concret en el funcionament de diverses facetes de l’administració pública (poder legislatiu, executiu i fiscal, l’assistència social o la seguretat). El tractament d’aquests arxius requereix, entre altres coses, que la relació entre l’ésser humà i la màquina sigui “personalitzada” i eficaç. Sovint, en aquest cas, l’usuari és un especialista i, per tant, posseeix el coneixement necessari per a emprar llenguatges especialitzats fins i tot de gran complexitat. D’altres exigències relatives a la comunicació entre l’ésser humà i la màquina es posen de manifest en el cas d’usuaris no especialitzats que disposin de miniordinadors o ordinadors personals, o bé que es connectin a terminals de xarxes informàtiques del tipus més corrent: en aquesta situació, la facilitat de comunicació amb l’ordinador resulta un element d’especial importància.

Finalment, les tècniques i les eines informàtiques han posat de manifest la seva capacitat per a l’automació de processos “intel·ligents”, és a dir, de processos productius que reprodueixin certs comportaments humans, com per exemple operacions de selecció o de decisió. Una de les conseqüències no gens insignificants de la recerca en aquest sector és una important contribució a la comprensió d’aquests comportaments i l’elaboració de mètodes científics que poden ser d’utilitat en la pràctica de la psicologia, la fisiologia o la sociologia.

El gran mestre Deep Blue

El diumenge 11 de maig de 1997, el programa Deep Blue, executant-se en un IBM RS/6000 SP, va guanyar (per 3,5 a 2,5) en un torneig a sis partides el gran mestre i campió mundial d’escacs Garri Kasparov.

Els experts diuen que Kasparov no va preparar adequadament l’encontre i que va jugar sense conèixer a fons les debilitats del seu contrincant. També coincideixen a afirmar que Kasparov va cometre a la darrera partida un error greu que no va poder superar. Però la realitat és que, amb el temps, era inevitable la victòria final de l’ordinador contra un contrincant humà. D’altra banda, no estranya a ningú que qualsevol vehicle que disposi d’un motor corri bastant més que el més ràpid dels humans. El joc dels escacs, com el córrer, és una cosa concreta, limitada i específica, i era només qüestió de temps que una màquina superés un ésser humà, tal com ja havia passat en el camp de la velocitat.

Alguns membres de l’equip que va “preparar” a IBM la nova versió de Deep Blue, com el gran mestre dels escacs Joel Benjamin o l’investigador i expert escaquista Murray Campbell, destaquen els importants avenços que es van fer tant en el maquinari com en el programari des de la trobada anterior, el 1996, on el vencedor va ser Kasparov. Amb tot, la victòria de Deep Blue un any després respon no solament a tècniques d’intel·ligència artificial desenvolupades amb l’ajut de grans experts dels escacs, sinó també a xips de processament creats expressament pels departaments d’investigació de la IBM Research per completar el sistema RS/6000 SP. El maquinari final constava d’un sistema de trenta-dos processadors connectats en paral·lel capaços d’analitzar 18.000 posicions cada tres minuts, el temps que de mitjana es permet als escacs per a cada moviment. Una capacitat de “força bruta” d’anàlisi que supera, de molt, la que pot posseir un jugador humà, que acostuma a centrar la seva habilitat en la capacitat i l’entrenament per a decidir quines posicions de la partida són rellevants i mereixen una anàlisi més detallada que d’altres.

A més de la “força bruta” de la potència de procés, alguns especialistes en intel·ligència artificial, com Herbert A.Simon o Toshinori Munakata, han posat l’èmfasi de la victòria de l’ordinador en el coneixement del joc dels escacs que incorporava el programa. Deep Blue disposava d’una gran base de dades de milers i milers de partides acompanyades de les anàlisis corresponents, i ho completava amb l’habilitat per a realitzar una avaluació correcta de cada posició analitzada. Tot i això, el que es considera més important és la capacitat del programa per a descobrir esquemes i patrons en la posició global de les peces sobre el tauler, de manera que va poder assignar “pesos” diferents per a avaluar la situació en moments diversos de la partida i en diferents posicions.

Els especialistes consideren el joc dels escacs una activitat de dificultat moderada entre les moltes que aborda la intel·ligència artificial. De fet, els resultats de Deep Blue són un cas típic d’aplicació de tècniques d’intel·ligència artificial en un camp on el domini de la tasca que s’ha de fer és reduït, on són necessaris molts coneixements especialitzats i on s’utilitza la potència de procés com a mecanisme de tria d’alternatives per a suplir la manca d’aquest coneixement especialitzat.

Problemes de la informatització de la societat

El progrés de la informàtica ha obert grans perspectives, però també ha generat greus problemes de tipus humà i social. Totes les activitats humanes s’han vist afectades per la “revolució informàtica”, la qual porta conseqüències no tan sols materials, sinó també intel·lectuals i morals. A més de les primeres matèries i de les fonts d’energia, existeix un altre element que cal gestionar: la informació. Aquesta gestió s’efectua a una escala de dimensions cada cop més grans, i això pot comportar la concentració del poder i la centralització del coneixement, dels organismes de decisió i de la gestió del sistemes productius. Davant d’aquesta situació, és necessari preveure els instruments que garanteixin la protecció dels individus i dels col·lectius respecte als abusos i a les violacions dels seus drets. Aquests instruments han de ser de caràcter jurídic, però en la seva aplicació també han d’implicar estaments polítics d’àmbit local, estatal o internacional. En alguns casos, es disposa ja d’una reglamentació adequada, pensada per a la protecció dels ciutadans.

Això no obstant, no podem subestimar les dificultats que cal superar per a crear els sistemes que garanteixin la confidencialitat de les dades personals i, més en general, el respecte als drets civils en matèria d’informació. Es tracta, per exemple, d’assegurar el control de l’accés a les dades fiscals, sanitàries o relacionades amb el secret professional per tal d’evitar-ne alteracions accidentals o voluntàries o la publicació o la divulgació il·legals. Això posa en qüestió, entre altres, la seguretat dels sistemes informàtics, les modalitats d’identificació dels usuaris, la seguretat dels aparells i la fiabilitat de les tècniques de transmissió, i els mecanismes de protecció de la informació activats pels sistemes operatius dels ordinadors.

El nou mil·lenni i l’euro

Tot i que es tracta de dues qüestions diferents, la gran informàtica tradicional ha assistit recentment al plantejament explícit d’uns problemes francament seriosos. D’una banda, la adaptació necessària al nou mil·lenni (l’anomenat “problema de l’any 2000”) dels milers de programes existents i, de l’altra, i per raons ben diverses, la necessitat d’adaptar els sistemes informàtics europeus a la nova moneda (el “problema de l’euro”). Tots dos problemes han estat en certa manera posats dins del mateix cistell en l’oferta de consultors i proveïdors d’aplicacions informàtiques, que han fet d’aquest tema un argument comercial de gran pes sobretot per raons de la proximitat de l’any 2000.

L’anomenat “problema de l’any 2000” és conegut des de fa temps. Fa vint o trenta anys, l’espai en el disc i la memòria del sistemes informàtics era molt reduït i cada byte resultava molt car d’emmagatzemar. Per això, els analistes van decidir que identificar cada any amb quatre dígits era malbaratar l’espai disponible. En aquella època d’escassesa ningú no va mirar cap al futur. I, així, es va decidir de mantenir només les dues darreres xifres de l’any de la data (75 i no 1975, per exemple). Però, en arribar al segle XXI, cal saber si 00 fa referència a 1900 o 2000 i, el més important, cal poder ordenar adequadament els anys, cosa que no és possible si només se n’han guardat les dues darreres xifres. El problema és que ara, que l’emmagatzematge en disc o en memòria és força barat i no hi ha cap problema a consumir vuit bytes per cada data que s’ha d’emmagatzemar, queden milers i milers de programes fets de fa anys que caldrà retocar per tal d’incorporar-hi les quatre xifres que determinen sense errors l’any de la data. Una feina que es preveu llarga i feixuga.

L’altre enrenou, l’anomenat “problema de l’euro”, del tot diferent però coincident si fa no fa en el temps, prové del fet que, després d’haver eliminat les xifres decimals de les quantitats monetàries quan es referien a pessetes, ara caldrà tornar a introduir les xifres decimals quan es comenci a fer servir la nova moneda europea, l’euro, que ha de substituir la pesseta i la incorporació del qual és prevista per al primer de gener de 1999 i, ja definitivament, el primer de juliol de l’any 2002. Si els cèntims de pesseta són d’escassa importància, no passa pas el mateix amb els cèntims de l’euro. Per tant, caldrà retocar fitxers, bases de dades, programes, factures, rebuts i altres programes i documents per tal de reintroduir uns decimals que es van abandonar (també a causa de l’elevat preu del byte) els anys setanta i vuitanta.

Es tracta de dos problemes diferents que, és evident, obligaran a modificar i a corregir un munt de vells programes encara operatius i, per desgràcia, escassament documentats. Un nou maldecap per als informàtics i una feina que cal fer de totes passades en el poc temps que encara queda.