Sunteți pe pagina 1din 19

Meniul principal









Căutare
Creare cont
 Autentificare

Unelte personale

Cuprins
ascunde

Început


Funcționare


Istoric


Arhitectura von Neumann


Circuite digitale (hardware)


Memorare de date


Periferice de intrare/ieșire

Instrucțiuni (software)
Toggle Instrucțiuni (software) subsection
o
Programe

o
Cod mașină

o
Limbaje de programare


Limbaje de nivel inferior


Limbaje de nivel superior

o
Biblioteci și sisteme de operare


Variante constructive de calculatoare


Utilizare
Toggle Utilizare subsection
o
Rețele de calculatoare și Internetul


Concepte de viitor


Vezi și


Note explicative


Referințe


Legături externe


Bibliografie
Calculator
229 limbi
 Articol
 Discuție
 Lectură
 Modificare
 Modificare sursă
 Istoric
Unelte












De la Wikipedia, enciclopedia liberă
Pentru dispozitivele de calcule aritmetice, vedeți Calculator de buzunar.
Desen al unui calculator personal.

Calculator portabil
Un calculator, numit și sistem de calcul, computer sau ordinator, este o mașină de
prelucrat date și informații conform unei liste de instrucțiuni numită program. În zilele
noastre calculatoarele se construiesc în mare majoritate din componente electronice și
de aceea cuvântul „calculator” înseamnă de obicei un calculator electronic.
Calculatoarele care sunt programabile liber și pot, cel puțin în principiu, prelucra orice
fel de date sau informații se numesc universale (engleză general purpose, pentru
scopuri generale). Calculatoarele actuale nu sunt doar mașini de prelucrat informații, ci
și dispozitive care facilitează comunicația între doi sau mai mulți utilizatori, de exemplu
sub formă de numere, text, imagini, sunet sau video sau chiar toate deodată
(multimedia).

Știința prelucrării informațiilor cu ajutorul calculatoarelor se


numește informatică (engleză Computer Science). Tehnologia necesară pentru
folosirea lor poartă numele Tehnologia Informației, prescurtat TI sau IT (de la termenul
englezesc Information Technology).

În principiu, orice calculator care deține un anumit set minimum de funcții (altfel spus,
care poate emula o mașină Turing) poate îndeplini funcțiile oricărui alt asemenea
calculator, indiferent că este vorba de un PDA sau de un supercalculator. Această
compatibilitate a condus la folosirea calculatoarelor cu arhitecturi asemănătoare pentru
cele mai diverse activități, de la calculul salarizării personalului unei companii până la
controlul roboților industriali sau medicali (calculatoare universale).
Funcționare[modificare | modificare sursă]
Calculatoarele clasice pe care le folosim în prezent efectuează operații logice
folosind biți - un flux de impulsuri electrice sau optice reprezentând formule binare
formate din 1 sau 0. Un calculator obișnuit stochează și procesează informația cu
ajutorul tranzistorilor: când tranzistorul permite trecerea curentului electric, apare un
semnal de tip 0, iar, dacă tranzistorul nu permite trecerea curentului electric, un semnal
de tip 1. În orice sarcină a computerului, procesul este același: un algoritm manipulează
o serie de biți, unde fiecare bit este fie 0, fie 1 (input), din care rezultatul este un nou șir
de biți (output).

Istoric[modificare | modificare sursă]


Articol principal: Istoria mașinilor de calcul
Cel mai vechi mecanism cunoscut care se pare că putea funcționa ca o mașină de
calculat se consideră a fi mecanismul de la Antikythera, datând din anul 87 î.e.n. și
folosit aparent pentru calcularea mișcărilor planetelor. Tehnologia care a stat la
baza acestui mecanism nu este cunoscută.

Odată cu revigorarea matematicii și a științelor în timpul Renașterii europene au


apărut o succesiune de dispozitive mecanice de calculat, bazate pe
principiul ceasornicului, de exemplu mașina inventată de Blaise Pascal. Tehnica de
stocare și citire a datelor pe cartele perforate a apărut în secolul al XIX-lea. În
același secol, Charles Babbage este cel dintâi care proiectează o mașină de calcul
complet programabilă (1837), însă din păcate proiectul său nu va prinde roade, în
parte din cauza limitărilor tehnologice ale vremii.

În prima jumătate a secolului al XX-lea, nevoile de calcul ale comunității științifice


erau satisfăcute de calculatoare analoage, foarte specializate și din ce în ce mai
sofisticate. Perfecționarea electronicii digitale (datorată lui Claude Shannon în anii
1930) a condus la abandonarea calculatoarelor analogice în favoarea celor digitale
(numerice), care modelează problemele în numere (biți) în loc de semnale electrice
sau mecanice. Este greu de precizat care a fost primul calculator digital; realizări
notabile au fost: calculatorul Atanasoff-Berry, mașinile Z ale germanului Konrad
Zuse - de exemplu calculatorul electromecanic Z3, care, deși foarte nepractic, a fost
probabil cel dintâi calculator universal, apoi calculatorul ENIAC cu o arhitectură
relativ inflexibilă care cerea modificări ale cablajelor la fiecare reprogramare, precum
și calculatorul secret britanic Colossus, construit pe bază de lămpi și programabil
electronic.

Echipa de proiectare a ENIAC-ului, recunoscând neajunsurile acestuia, a elaborat o


altă arhitectură, mult mai flexibilă, care a ajuns cunoscută sub numele de arhitectura
von Neumann sau „arhitectură cu program memorat“. Aceasta stă la baza aproape
tuturor mașinilor de calcul actuale. Primul sistem construit pe arhitectura von
Neumann a fost EDSAC.

În anii 1960 lămpile (tuburile electronice) au fost înlocuite de tranzistori, mult mai
eficienți, mai mici, mai ieftini și mai fiabili, ceea ce a dus la miniaturizarea și ieftinirea
calculatoarelor. Din anii 1970, adoptarea circuitelor integrate a coborât și mai mult
prețul și dimensiunea calculatoarelor, permițând printre altele și
apariția calculatoarelor personale de acum.

Arhitectura von Neumann[modificare | modificare sursă]


Articol principal: Arhitectura von Neumann.

Deși design-ul și performanțele calculatoarelor actuale s-au îmbunătățit considerabil


în comparație cu cele din anii 1940, principiile arhitecturii von Neumann sunt în
continuare la baza aproape a tuturor mașinilor de calcul[1][2][3] contemporane. Ea este
denumită așa după renumitul matematician austro-ungar John von Neumann.

Această arhitectură descrie un calculator cu patru module importante: unitatea


aritmetică-logică (UAL), unitatea de control (UC), memoria centrală și dispozitivele
de intrare/ieșire (prescurtat I/E). Acestea sunt interconectate cu un mănunchi de fire
numit magistrală pe care circulă datele de calcul și datele de program (instrucțiuni)
și sunt conduse în tactul unui ceas (șir de impulsuri continuu).

Conceptual, memoria unui calculator poate fi văzută ca o mulțime de „celule“


numerotate. Fiecare celulă primește drept adresă un număr unic propriu; ele pot
înmagazina o cantitate mică, prestabilită de informație. Informația poate fi ori o
instrucțiune, ori date propriu-zise. Instrucțiunile spun calculatorului ce să facă, iar
datele sunt acele informații care trebuie prelucrate conform cu instrucțiunile. În
principiu orice celulă poate stoca (memora) atât instrucțiuni cât și date. Interesant
este și cazul când una sau mai multe instrucțiuni, deja stocate în memorie, sunt
privite de către alte instrucțiuni drept date de prelucrat/modificat și sunt deci ele
însele modificate dinamic („în mers“), după necesitate.

Alte arhitecturi întrebuințate la calculatoarele de uz general sunt de


exemplu arhitectura Harvard și arhitectura Dataflow.

Circuite digitale (hardware)[modificare | modificare sursă]


Principiile de mai sus pot fi implementate cu o varietate de tehnologii - de ex.
mașina lui Babbage era alcătuită din componente mecanice. Însă singura
asemenea tehnologie care s-a dovedit suficient de practică este cea a circuitelor
digitale (numerice), circuite electronice care pot efectua operații din algebra
booleană și aritmetica binară. Dar primele „circuite” digitale
foloseau relee electromecanice pentru a reprezenta stările "0" (blocat) și "1"
(conducție), aranjate în porți logice. Releele au fost repede înlocuite cu lămpi
electronice - tuburi electronice cu vid, dispozitive 100% electronice, folosite până
atunci în electronica analogă pentru proprietățile lor de amplificare, dar care au putut
fi utilizate și drept comutatoare (elemente de bază în construcția calculatoarelor) de
stare, 1→0 sau 0→1.

Aranjând corect porți logice binare , se pot construi circuite care execută și funcții
mai complexe, de exemplu sumatoare. Sumatorul electronic adună două numere
folosind același procedeu (în termeni informatici, algoritm) învățat de copii la școală:
se adună fiecare cifră corespondentă, iar „transportul” este transmis către cifrele din
stânga. În consecință, reunind mai multe asemenea circuite, se pot obține o UAL și
o unitate de control complete. CSIRAC, unul din primele calculatoare bazate pe
arhitectura von Neumann și probabil cel mai mic asemenea calculator posibil, avea
circa 2000 de lămpi (tuburi) - deci chiar și pentru sisteme minimale e nevoie de un
număr considerabil de componente.

Un circuit integrat văzut la microscop


Lămpile electronice erau caracterizate de câteva limitări severe în folosirea lor
pentru construcția porților logice: erau scumpe, puțin fiabile, ocupau mult spațiu și
consumau cantități mari de curent. Deși erau incredibil de rapide față de releele
electromecanice, aveau și ele totuși o viteză de operare relativ limitată. Astfel că
începând din anii 1960 lămpile (tuburile electronice) au fost înlocuite cu tranzistori,
dispozitive ce funcționau asemănător, însă erau mult mai mici, mai rapide, mai
fiabile, mai puțin consumatoare de curent și mult mai ieftine.

Din anii 1960-'70, tranzistorul a fost și el înlocuit cu circuitul integrat, care conținea
mai mulți tranzistori, și firele de interconectare corespunzătoare, pe o singură
plăcuță de siliciu (numită cip). Din anii '70, UAL-urile combinate cu unități de control
(UC) au fost produse unitar ca circuite integrate, numite microprocesoare,
sau CPU (Central Processing Unit/unitate de procesare centrală). În timp,
densitatea tranzistorilor din circuitele integrate a crescut incredibil, de la câteva zeci,
în anii 70, până la peste 100 de milioane de tranzistoare pe circuit integrat, la
procesoarele Intel și AMD din anul 2005.

Memorare de date[modificare | modificare sursă]


Lămpile electronice și tranzistorii pot fi folosite și pentru construirea de memorii -
așa-numitele circuite flip-flop sau „basculante bistabile” (CBB), și chiar sunt folosite
pentru mici circuite de memorie de mare viteză, numite „cu acces direct”. În puține
cazuri, designul de calculatoare a folosit bistabile pentru grosul nevoilor de
memorie, memorii de amploare. Primele calculatoare foloseau tuburi Williams - în
esență proiectând puncte pe un ecran TV și citindu-le din nou mai târziu, sau linii de
mercur, în care datele erau depozitate sub formă de unde sonore care parcurgeau
tuburi cu mercur la viteză mică (comparativ cu viteza de operare a mașinii). Aceste
metode destul de neproductive au fost înlocuite cu dispozitive de stocare
(memorare) în mediu purtător magnetic, de exemplu memoria cu miezuri
magnetice de formă inelară, în care un curent electric era folosit pentru a induce un
câmp magnetic remanent (dar slab) într-un material feros, care putea fi citit ulterior,
după necesitate pentru a folosi datele. În cele din urmă a apărut memoria dynamic
random access memory , DRAM. DRAM-ul este format din bănci (mulțimi grupate)
de condensatori, componente electrice care pot reține o sarcină electrică pentru o
anumită durată de timp. Scrierea informației într-o astfel de memorie se face prin
încărcarea condensatorilor cu o anumită sarcină electrică, iar citirea prin
determinarea („măsurarea”) sarcinii acestora (dacă este încărcat sau descărcat).

Periferice de intrare/ieșire[modificare | modificare sursă]


„I/E” („intrare-ieșire”), sau în engleză I/O (de la input/output), este termenul general
pentru acele dispozitive prin care un calculator primește informații din lumea
exterioară, inclusiv instrucțiuni despre ce să facă, sau trimite înapoi (în afară)
rezultatele calculelor sau operațiilor logice pe care le-a efectuat. Rezultatele pot fi
destinate ca informații oamenilor, sau pot fi folosite în mod direct (nemijlocit) drept
decizii în dirijarea altor mașini; de exemplu în cazul unui robot industrial, cel mai
important dispozitiv de ieșire (dispozitiv E) al calculatorului (de robot) înglobat în el
creează comenzile detailate necesare pentru toate operațiile (mișcările) mecanice
ale robotului propriu-zis.

Prima generație de calculatoare era echipată cu o gamă de dispozitive I/E destul de


limitată și cu viteză de execuție redusă; de exemplu, pentru introducerea datelor de
calcul și a instrucțiunilor de program se folosea în principal un cititor de cartele
perforate sau un dispozitiv asemănător, iar pentru afișarea rezultatelor se folosea o
imprimantă, de obicei un teleimprimator modificat de tip „telex”. De-a lungul timpului
însă au apărut o imensă diversitate de dispozitive I/E. Pentru calculatorul personal
de azi, cele mai comune modalități de introducere directă a datelor
sunt tastaturile și mausurile, iar principalul mijloc prin care calculatorul prezintă
informații către utilizator sunt monitoarele, deși imprimantele sau dispozitivele de
generat sunet sunt folosite și ele în mod obișnuit. Alte dispozitive sunt specializate
pentru numai anumite tipuri de intrări sau ieșiri, de exemplu aparatul foto
digital și scanerul.

Două categorii principale de dispozitive sunt:

 dispozitivele secundare de stocare: dischetele,


unitățile CD, DVD, discurile dure și altele; capacitățile de stocare a datelor
pot diferi foarte mult între ele.
 precum și dispozitivele pentru conectarea la rețele de calculatoare.
Posibilitatea de a interconecta calculatoarele pentru a transfera date și
informații între ele a deschis calea unei mulțimi de noi aplicații. Internetul,
și aici în special World Wide Web, permit miliardelor de calculatoare de
pe glob să se lege unele cu altele pentru a transfera între ele informații de
toate tipurile.

Instrucțiuni (software)[modificare | modificare sursă]


Vezi articolul principal Software
Instrucțiunile interpretate de către unitatea de control și executate de UAL nu
seamănă deloc cu limbajul uman. Calculatorul cunoaște prin construcție un set
relativ mic de instrucțiuni elementare, care sunt simple, bine definite și
neambigue. Exemple de instrucțiuni sunt: „copiază conținutul celulei de memorie
5 și plasează rezultatul în celula 10”, „adună conținutul celulei 7 cu conținutul
celulei 13 și plasează rezultatul în celula 6”, „dacă conținutul celulei 999 este 0
(zero), următoarea instrucțiune de executat se găsește memorată în celula 30”,
dacă nu, „se urmează secvența (șirul de instrucțiuni) mai departe”.

Instrucțiunile calculatorului se împart în patru mari categorii:

1. mutare de date dintr-o locație în alta (instrucțiuni de transfer),


2. executare de operații aritmetice și logice asupra datelor
(instrucțiuni aritmetice, instrucțiuni logice),
3. testare a unor condiții, de exemplu „conține celula de memorie nr.
999 un 0?” (instrucțiuni de testare sau de condiție),
4. modificare a secvenței (șirului) de operații (instrucțiuni
de comandă propriu-zise).
În calculator instrucțiunile „externe” sunt memorate și deci reprezentate în cod
binar, la fel ca și toate celelalte date de calcul (numere, litere, simboluri). De
exemplu, codul în limbaj-mașină pentru una din operațiile de copiere într-un
microprocesor fabricat de firma Intel este 10110000, „1” și „0” fiind cele două
valori logice binare „înțelese” de microprocesor (computer, mașină). În
completarea exemplului de mai sus, se poate intui că o instrucțiune
de adunare în respectivul Intel-microprocesor trebuie să fie reprezentată altfel
decât cea de copiere, de exemplu 01001110. Mulțimea
de instrucțiuni implementate într-un calculator (computer) formează și este
numit limbajul mașină al acelui calculator.

Simplificat vorbind, dacă două calculatoare au CPU-uri (unități centrale de


procesare) care răspund la fel la același set de instrucțiuni, programele
(executabile) scrise pentru unul pot rula și pe celălalt aproape fără modificări,
dar de exemplu cu viteze diferite. Ușurința portabilității este o motivație pentru
proiectanții de calculatoare ca ei să nu modifice radical designul existent, decât
pentru motive serioase.

Programe[modificare | modificare sursă]


Programele de calculator sunt listele de instrucțiuni de executat de către un
calculator. Acestea pot număra de la câteva instrucțiuni, care îndeplinesc o
sarcină simplă, până la milioane de instrucțiuni pe program (unele din ele
executate repetat), plus tabele de date. Un calculator personal curent din
anul 2008 din categoria sub 1.000 euro este capabil să execute peste 4 miliarde
de instrucțiuni pe secundă. Compunerea sau scrierea acestor programe este
efectuată de către programatori, care pot fi profesioniști, semiprofesioniști sau
amatori, în funcție de temele de rezolvat și mediul de dezvoltare.

În practică, programele nu se mai scriu demult în limbajul mașină al


calculatorului. Scrierea în limbaj-mașină era extrem de laborioasă și erorile se
puteau strecura ușor, ceea ce putea provoca scăderea productivității la
programare. Actualmente programele dorite sunt de obicei descrise/scrise într-
un limbaj de programare de nivel mai ridicat (superior), care, înainte de a putea
fi executat, este tradus automat în limbaj-mașină de către programe specializate
(interpretoare și compilatoare), adică într-o „limbă” inteligibilă mașinii de calcul
(computerului).

Unele limbaje de programare sunt foarte strâns legate de limbajul mașină de la


baza calculatorului, ca de ex. limbajul de asamblare, de aceea sunt numite
limbaje de „nivel jos”. La cealaltă extremă se situează limbajele de „nivel înalt”,
de ex. C++, Java, Lisp, Visual Basic ș.a. Acestea oferă programatorilor
posibilitatea operării cu concepte foarte abstracte, complexe, a căror
implementare concretă la nivelul de jos nu mai interesează (dacă interpretorul
sau compilatorul funcționează corect). Limbajul ales pentru o anume problemă
depinde în primul rând chiar de natura problemei, de competența profesională a
programatorilor, de disponibilitatea uneltelor de proiectare precum și de bugetul
disponibil.

Programele mai sunt numite și software, ele putând fi memorate permanent


sau/și doar memorabile temporar; însă software-ul poate include, pe lângă
programele propriu-zise, și material auxiliar, cum ar fi date grafice, în cazul
unui joc pe calculator.

Instrumentele moderne de proiectare software precum și tehnicile de


programare ce pun accentul pe reutilizarea codului (de ex. programarea
orientată pe obiecte) fac posibilă realizarea unor programe complexe, constituite
din zeci de milioane de instrucțiuni; de exemplu browserul Firefox al organizației
Mozilla se compune din peste 2 milioane de linii de cod în limbajul C++.
Gestiunea acestor programe complexe face obiectul unei științe numite ingineria
programării.

Cod mașină[modificare | modificare sursă]

Monitorul limbajului mașinii într-un computer cu o


singură placă W65C816S, afișând dezasamblarea codului, precum și
registrul procesorului și depozitele de memorie.
În cele mai multe calculatoare, instrucțiunile individuale sunt stocate sub formă
de cod mașină, fiecărei instrucțiuni atribuindu-i-se un număr unic (cod de
operație sau opcod pe scurt).[4] Comanda pentru a adăuga două numere
împreună ar avea un opcode; comanda de a le multiplica ar avea un opcod
diferit, și așa mai departe. Cele mai simple calculatoare sunt capabile să
efectueze oricare din câteva diferite instrucțiuni; calculatoarele mai complexe au
câteva sute de instrucțiuni din care să aleagă, fiecare cu un cod numeric unic.
Întrucât memoria calculatorului este capabilă să stocheze numere, se pot stoca,
de asemenea, codurile de instruire. Aceasta conduce la faptul important
că programe întregi (care sunt chiar listele cu aceste instrucțiuni) pot fi
reprezentate ca liste de numere și pot fi manipulate în interiorul calculatorului în
același mod ca datele numerice. Conceptul fundamental de a stoca programe în
memoria calculatorului alături de datele pe care le operează e punctul cheie von
Neumann, sau al arhitecturii programului de memorat. În unele cazuri, un
calculator poate stoca unele sau toate programele sale în memorie care este
ținută separat de datele cu care operează. Aceasta se numește arhitectura
Harvard, după computerul Harvard Mark I. Calculatoare moderne von Neumann
includ unele trăsături ale arhitecturii Harvard în proiectele lor, cum ar fi cache-ul
CPU.

Deși este posibil să se scrie Program (informatică)|programe de calculator]] ca


liste lungi de numere (limbaj mașină), această tehnică fiind folosită pe multe alte
calculatoare timpurii,[Note 1] este extrem de obositor și potențial predispusă la erori
în acest sens, în practică, în special pentru programele mai complicate. În
schimb, fiecărei instrucțiuni de bază i se poate da un nume scurt care indică
funcția sa și este ușor de ținut minte - un mnemonic, cum ar fi ADD, SUB, MULT
sau JUMP. Aceste mnemonice sunt colectiv cunoscut sub numele de limbaj de
asamblare al unui computer. Conversia programelor scrise în limbaj de
asamblare în ceva ce computerul poate înțelege de fapt (limbaj mașină) se face
de obicei de către un program de calculator numit de asamblare.[5]

Majoritatea covârșitoare a programelor practice de astăzi sunt scrise în limbaje


de nivel superior sau limbaj de asamblare. Codul sursă este apoi tradus în cod
mașină executabil de utilitare precum compilatoare, asamblări și linkere, cu
excepția importantă a programelor interpretate,[Note 2] care nu sunt traduse în cod
mașină. Cu toate acestea, interpretul însuși, care poate fi văzut ca un executor
sau procesor care execută instrucțiunile codului sursă, constă de obicei din cod
mașină executabil direct (generat din ansamblu sau cod sursă de limbaj la nivel
înalt).

Codul mașinii este, prin definiție, cel mai scăzut nivel


de programare vizibil programatorului, dar la nivel intern multe procesoare
utilizează microcod sau optimizează și transformă instrucțiunile codului mașinii
în secvențe de micro-op-uri. Acesta nu este în general considerat a fi un cod
mașină.

Pamela Samuelson a scris despre codul mașină c[ este atât de ilizibil încât
Oficiul pentru Drepturile de Autor din Statele Unite nu poate identifica dacă un
anumit program codificat este o operă originală de autor; codul mașină al unui
program poate fi uneori decompilat pentru a face funcționarea sa mai ușor de
înțeles de către oameni.[6]
Profesorul de științe cognitive Douglas Hofstadter a comparat codul mașină
cu codul genetic, spunând că „Citirea unui program scris în limbajul mașinii este
vag comparabilă cu examinarea unei molecule de ADN atom cu atom”.[7]

Limbaje de programare[modificare | modificare sursă]


Limbajele de programare oferă diferite moduri de a specifica programe pentru
calculatoare pentru a le rula. Spre deosebire de limbajele naturale, limbajele de
programare sunt concepute pentru a nu permite nicio ambiguitate, și să fie
concise. Ele sunt limbaje doar scrise și sunt adesea dificil de citit cu voce tare.
Ele sunt, în general, fie traduse în cod mașină de un compilator sau un asamblor
înainte de a fi rulate, fie traduse direct în timpul rulării de către un interpretor.
Uneori programele sunt executate printr-o metodă hibridă de cele două tehnici.[4]

Limbaje de nivel inferior[modificare | modificare sursă]


Limbajele mașină și limbajele de asamblare care le reprezintă (denumite colectiv
limbaje de programare de nivel inferior) tind să fie unice pentru un anumit tip de
calculator. De exemplu, un calculator cu arhitectura ARM (cum pot fi într-un PDA
sau un joc video portabil) nu poate înțelege limba mașină a unui calculator cu
Pentium Intel sau AMD Athlon 64, care s-ar putea găsi într-un PC.

Limbaje de nivel superior[modificare | modificare sursă]


Deși mult mai ușor decât în limbajul mașină, scrierea programelor lungi în limbaj
de asamblare este adesea dificilă și este, de asemenea, predispusă la erori. Prin
urmare, cele mai multe programe practice sunt scrise în limbaje de programare
de nivel superior, mai abstracte, care sunt capabile să exprime nevoile
programatorului mai convenabil (și prin aceasta contribuie la reducerea erorilor
programatorului). Limbajele de nivel superior sunt, de obicei, "compilate" în
limbaj mașină (sau, uneori, în limbaj de asamblare și apoi în limbaj mașină),
folosind un alt program de calculator numit compilator. Limbajele de nivel
superior sunt mai puțin legate de modul de funcționare al computerului țintă
decât limbajele de asamblare, și mai mult legate de limbajul și structura
problemei care trebuie soluționată de către programul final. Prin urmare, este
adesea posibil să se utilizeze diferite compilatoare pentru a traduce același
program de limbaj de nivel superior în limbajele mașină ale multor tipuri diferite
de calculator. Aceasta este o parte din mijloacele prin care software-ul, ca
jocurile video, pot fi puse la dispoziție pentru diferite arhitecturi de calculatoare,
cum ar fi calculatoarele personale și diverse console de jocuri video.

Biblioteci și sisteme de operare[modificare | modificare sursă]


Nu cu mult timp după dezvoltarea calculatorului s-a constatat că aceleași rutine
(părți de program (subprograme) cu scop bine definit) se pot uneori folosi în mai
multe programe diferite; un exemplu fiind calcularea unor funcții matematice. Din
motive de eficiență, versiunile standard ale acestor rutine au început să fie
adunate în biblioteci de programe (în engleză: library, libraries) și puse la
dispoziția tuturor celor interesați. Un alt set foarte necesar de rutine s-a dovedit a
fi comunicarea cu diversele dispozitive de I/E (disp. periferice de intrare/ieșire).

În anii 1960 calculatoarele au început să fie folosite pe larg în industrie și


economie, iar un calculator a putut fi folosit la executarea simultană a multor
sarcini, prin intercalarea în timp a programelor. Curând a apărut și software
(sistem de program cu instrucțiuni) specializat în automatizarea planificării
acestor sarcini. Combinația între un software gestionar al hardware-ului și un
software planificator de sarcini a devenit cunoscută sub numele de „sistem de
operare” (engleză: operating system). Un prim exemplu de sistem de operare a
fost sistemul OS/360 al companiei americane IBM.

Următorul pas major a fost partajarea timpului (time sharing), prin care mai mulți
utilizatori (clienți) pot folosi o mașină simultan. Pentru aceasta programele
fiecăruia se păstrează în memorie, executându-se pe rând porțiuni din aceste
programe pentru o perioadă scurtă de timp („felie de timp”, time slice), astfel
oferind fiecărui utilizator (client) iluzia că computerul lucrează doar pentru el.
Modul de stocare (memorare) a datelor a evoluat și el, apărând conceptul de
„sistem de fișiere” (file system), în care fișierele sunt dispuse pe purtătorul de
date într-o structură ierarhică de „directoare” sau „dosare”.

O adăugire majoră în domeniul sistemelor de operare a fost acum câțiva ani


o interfață grafică cu utilizatorul (engleză: graphic user interface, GUI).

În afara acestor funcții de bază, sistemele de operare conțin deseori și o trusă


de unelte suplimentare, care parțial sunt extrem de funcționale și
complexe/sofisticate.

Calculatoarele integrate vin cu sisteme de operare mult mai mici și mai limitate
în funcțiuni, unele chiar fără sistem de operare. În acest caz programul foarte
specializat care le conduce efectuează chiar el toate operațiile necesare.

Variante constructive de calculatoare[modificare | modificare


sursă]

Calculatoarele de astăzi se produc în numeroase forme și prezentări:

 Probabil cel mai familiar este calculatorul personal (de tip PC sau și
altele) cu subvariantele sale constructive:
o „staționare” (în engleză:) desktop, tower, all-in one ș.a.
o „portabile”: laptop, notebook, netbook ș.a.
 Calculatoarele tabletă (de tip PC și altele).
 Următoarele dispozitive de dată mai recentă sunt în sine tot
calculatoare programabile (fie numai în fabrică, fie și de către
utilizator): toate telefoanele portabile celulare de tip smartphone, toate
calculatoarele de tip tabletă, unele playere multimedia ca de ex. cele
de tip iPod de la compania Apple; unii producători oferă și tipuri
combinate, de ex. un notebook cu tastatura detașabilă poate fi utilizat
și drept calculator tabletă.
 Calculatoare simple, de exemplu cele de buzunar.
 Calculatoare rapide, folosite la așa-numitele „ferme” de servere; de
obicei acestea nu sunt deservite de utilizatori umani și deci nu este
necesar să fie ergonomice. Pentru ele se folosește deseori forma
de paralelipiped, care permite o stivuire compactă.
 Calculatoare profesioniste de mare viteză și mari dimensiuni, cum
sunt cele de tip mainframe.
 Aparate și dispozitive speciale: console de jocuri electronice; case
electronice de încasat; afișoare de cărți și medii electronice de tip E-
book; scanerele, imprimantele, chiar și televizoarele și aparatele de
redare DVD și Blu-ray actuale conțin elemente digitale de control care
sunt, într-un fel, componente de calcul; roboți de toate genurile;
elementele de comandă pentru mașini-unelte de tip CNC și multe
altele.
 Cea mai răspândită formă este însă cea a calculatorului integrat
(embedded), adică înglobat complet în dispozitivul pe care îl
comandă. Acesta este în general preprogramat din fabrică, iar
utilizatorul nu primește posibilitatea să-i schimbe programul. Multe
mașini și aparate, de la avioanele de luptă până la aparatele
foto digitale și la aparatele de navigație bazate pe sistemul GPS, sunt
controlate de calculatoare integrate. Un alt exemplu de calculator
integrat este calculatorul de bord al automobilelor.

Utilizare[modificare | modificare sursă]


Primele calculatoare electronice digitale, fiind foarte mari și scumpe, erau
folosite la calcule științifice complicate, de multe ori pentru scopuri
militare. ENIAC-ul a fost proiectat pentru calculul tirurilor de artilerie, dar a fost
folosit și la calculul densităților transversale de neutroni, în proiectarea bombei
cu hidrogen. Multe din supercalculatoarele contemporane sunt folosite pentru
simulări de arme nucleare. Alte calculatoare au fost utilizate în criptanaliză, de
exemplu primul calculator electronic programabil, Colossus.
În ciuda concentrării de la început pe aplicații științifice și militare, calculatoarele
au început repede să fie adoptate și în alte domenii, precum cel al
afacerilor. LEO, unul din primele calculatoare bazate pe arhitectura von
Neumann, era folosit la gestiunea stocurilor încă din anii 1950. O dată cu
apariția microprocesoarelor și ieftinirea semnificativă a calculatoarelor, acestea
și-au găsit aplicare în contabilitate, birotică, alcătuirea de previziuni meteo și de
altă natură, în calculele matematice repetitive precum și în calcul tabelar.

În domeniul artelor, calculatoarele sunt întrebuințate pentru generarea și


editarea de sunet, imagini și video. Astăzi aceste activități sunt efectuate
aproape exclusiv pe calculator (computer). De asemenea, industria jocurilor pe
calculator este una foarte lucrativă.

Calculatoarele au putut fi folosite pentru comanda mecanismelor (dispozitivelor


electromecanice) din momentul în care au devenit suficient de mici și de ieftine
pentru acest scop. Primele aplicații majore pentru calculatoarele integrate au
fost ghidarea misiunilor Apollo și a rachetelor Minuteman. Astăzi se întâlnesc din
ce în ce mai rar echipamente mecanice care să nu fie comandate într-o formă
sau alta de un calculator. Unele din cele mai complexe asemenea echipamente
sunt roboții industriali, mașini mai mult sau mai puțin asemănătoare omului și
aptitudinilor sale. Calculatoarele sunt din ce în ce mai mult utilizate în domotică,
pentru aplicații casnice de genul „dacă cineva e acasă, computerul deschide
televizorul la 7 seara“ sau „reduce căldura noaptea”.

Roboții industriali sunt o prezență obișnuită în producția de masă, însă roboții


umanoizi încă nu au ajuns la nivelul la care sunt portretizați în literatura de
anticipație SF și sunt astăzi doar jucării sau subiecte de cercetare. De
asemenea, progresul inteligenței artificiale în crearea unui calculator cu
„inteligență” electronică la nivelul celei omenești a fost până acum extrem de
lent, deși de-a lungul timpului s-au dezvoltat metode care permit calculatoarelor
să îndeplinească destul de bine sarcini despre care inițial se bănuia că ar fi prin
excelență umane, cum ar fi jocurile șah și go, sau citirea scrisului de mână
(analogic).

Rețele de calculatoare și Internetul[modificare | modificare sursă]


În anii 1970 inginerii de la institutele de cercetare militare din SUA au început să
își interconecteze calculatoarele folosind tehnologia telecomunicațiilor. Rețelele
de calculatoare au avut caracter coordonator-subordonat, adică structura
respectivă conținea calculatoare „egale în drepturi”, dar care erau supuse
comenzilor unui calculator principal, „dirijor”. Proiectul a fost sprijinit de către
agenția DARPA a ministerului apărării, iar rețeaua de calculatoare care a luat
astfel naștere s-a numit Arpanet.
În timp, rețeaua Arpanet s-a extins enorm, dincolo de scopul ei inițial academic
și militar, și a devenit cunoscută sub numele de Internet. Evoluția rețelelor a
adus cu sine o redefinire a naturii și limitelor unui calculator. În cuvintele lui John
Gage și Bill Joy (de la firma Sun Microsystems), „the network is the computer“ —
„rețeaua este calculatorul“. Sistemele de operare și aplicațiile computerelor s-au
modificat, incluzând acum capacitatea de a defini și accesa resurse de pe alte
calculatoare din rețea (fie programe și informații, fie dispozitive conectate la ele),
ca extensii ale resurselor locale. Inițial aceste facilități erau disponibile numai
celor care lucrau în medii de înaltă tehnologie, însă din anii 1990, odată cu
răspândirea aplicațiilor ca de exemplu e-mail sau World Wide Web, și cu
dezvoltarea tehnologiilor de conectare în rețea ieftine și rapide
precum Ethernet sau ADSL, rețelele de calculatoare au pătruns practic în toate
domeniile vieții.

Concepte de viitor[modificare | modificare sursă]


Au fost explorate, cu diferite grade de succes, mai multe tehnologii noi de
computer care pot înlocui sau suplimenta computerele actuale:

 calculator cuantic
 calculator cu ADN
 calculator fotonic
 calculator neural
 calculator ternar
 procesor autosincron
 procesor asincron

Vezi și[modificare | modificare sursă]


 Desktop
 Computer personal
 Calculator portabil
 Calculator de buzunar
 Calculator de bord - pentru vehicule auto
 Informatică
 Ingineria calculatoarelor
 Ingineria programării
 Girder
 Overclocking
 Viteză de procesare
 Putere de calcul
 Patologia de calculator

Note explicative[modificare | modificare sursă]


1. ^ Chiar și unele calculatoare ulterioare au fost programate în mod obișnuit direct în
cod mașină. Unele minicalculatoare precum DEC PDP-8 ar putea fi programate
direct dintr-un panou de comutatoare. Cu toate acestea, această metodă a fost
utilizată de obicei doar ca parte a procesului de pornire. Majoritatea calculatoarelor
moderne pornesc automat citind un program de pornire dintr-o memorie nevolatilă.
2. ^ Precum multe versiuni de BASIC, în special cele mai vechi, precum și
Smalltalk, MATLAB, Perl, Python, Ruby și alte limbaje speciale sau de script.

Referințe[modificare | modificare sursă]


1. ^ stanamirescu oncu radian. [4537132 „citate web”] Verificați valoarea |
url= (ajutor). radian. Accesat în 19 octombrie 2021.
2. ^ Hupp, Stephen L. (1998-10), „Landmark Documents in American History. Version
2.0.98111Landmark Documents in American History. Version 2.0.. 11 Penn Plaza,
New York, NY 10001: Facts on File 1998. , ISBN: 08160‐3618‐7 Macintosh, ISBN:
08160‐3647‐0 Windows, ISBN: 08160‐3616‐0 DOS $149.95 single user, ISBN:
08160‐3618‐7 Macintosh, ISBN: 08160‐3647‐0 Windows, ISBN: 08160‐3616‐0 DOS
$499.95 lab packs (5 CD‐ROMs), ISBN: 08160‐3618‐7 Macintosh, ISBN: 08160‐
3647‐0 Windows, ISBN: 08160‐3616‐0 DOS $499.95 up to 5 simultaneous users,
ISBN: 08160‐3618‐7 Macintosh, ISBN: 08160‐3647‐0 Windows, ISBN: 08160‐3616‐
0 DOS $30 6‐49 simultaneous users, ISBN: 08160‐3618‐7 Macintosh, ISBN: 08160‐
3647‐0 Windows, ISBN: 08160‐3616‐0 DOS $25 50‐99 simultaneous users, ISBN:
08160‐3618‐7 Macintosh, ISBN: 08160‐3647‐0 Windows, ISBN: 08160‐3616‐0 DOS
$20 100‐499 simultaneous users, ISBN: 08160‐3618‐7 Macintosh, ISBN: 08160‐
3647‐0 Windows, ISBN: 08160‐3616‐0 DOS $15 500‐999 simultaneous users,
ISBN: 08160‐3618‐7 Macintosh, ISBN: 08160‐3647‐0 Windows, ISBN: 08160‐3616‐
0 DOS $10 1000+ simultaneous users”, Electronic Resources Review, 2 (10),
pp. 120–121, doi:10.1108/err.1998.2.10.120.111, ISSN 1364-5137, accesat în 2021-
11-19 Verificați datele pentru: |date= (ajutor)
3. ^ MONITOR., WHOLE SKY, URL., OCLC 796720402, accesat în 19 noiembrie
2021
4. ^ a b „Programe pe calculator”. SetThings.com. Accesat în 12 iulie 2017.
5. ^ Sfetcu, Nicolae (2014). Întreținerea și repararea calculatoarelor. MultiMedia
Publishing. ISBN 978-606-033-069-1.
6. ^ Samuelson, Pamela (1984). „CONTU Revisited: The Case against Copyright
Protection for Computer Programs in Machine-Readable Form”. Duke Law
Journal. 1984 (4): 663–769. doi:10.2307/1372418. JSTOR 1372418.
7. ^ D. Hofstadter (1980). „Gödel, Escher, Bach: An Eternal Golden Braid”: 290.

Legături externe[modificare | modificare sursă]


 Am intrat în era în care computerele preiau controlul, 5 septembrie
2011, Marius Comper, Descoperă
 Femeile-computer: armele secrete ale americanilor în cel de-al Doilea
Război Mondial, 10 aprilie 2013, Descoperă
 Calculatorul, un rau necesar, 8 noiembrie 2005, Robert
Daly/stone/getty Images/guliver, Jurnalul Național
 Sfetcu, Nicolae (2014). Întreținerea și repararea calculatoarelor.
MultiMedia Publishing. ISBN 978-606-033-069-1.

Bibliografie[modificare | modificare sursă]


 BNE: XX524661

 BNF: cb119401913 (data)

 GND: 4070083-5

 LCCN: sh85029552
Control de
autoritate
 LNB: 000047074

 NARA: 10636641

 NDL: 00561435

 NKC: ph115859
Categorie:
 Calculatoare
 Ultima editare a paginii a fost efectuată la 9 noiembrie 2023, ora 13:14.
 Acest text este disponibil sub licența Creative Commons cu atribuire și distribuire în condiții
identice; pot exista și clauze suplimentare. Vedeți detalii la Termenii de utilizare.
 Politica de confidențialitate

 Despre Wikipedia

 Termeni

 Cod de conduită

 Dezvoltatori

 Statistici

 Declarație cookie

 Versiune mobilă

S-ar putea să vă placă și