duminică, 12 martie 2017

Memoria calculatorului.

Memoria RAM este esenţială pentru computerele de azi, dar aceasta nu a fost intotdeauna la fel de puternica cum este astazi. Acest articol descrie evolutia tehnologiei, incepand de la tuburile cu vacuum apoi memoria feromagnetica pana la  memoria RAM din zilel noastre.
     RAM a evoluat de la o tehnologie mai veche, memoria feromagnetica  care a aparut in anii 50  si care la randul sau, a inlocuit  memoria cu tuburi de vacuum. Pana in anii 1945 s-au folosit  tuburile cu vacuum si linii de intarziere cu mercur pentru a putea stoca temporat memoria.In jurul anilor 1950 cercetatorii au reusit sa descopere memoria feromagnetica.  Acest  tip de memorie stoca informatiile pe baza sistemului binar  1 sau 0. Memoria feromagnetica nu era costisitoare din din acest motiv a fost folosita pana in jurul anilor 70.  Incepand din 1974 au inceput sa se construiasca tranzistoarele si odata cu acestea si memorii mai performante.
     Memoria RAM a fost inventata la sfarsitul anilor \’60 , practic nu a fost un salt tehnologic extraordinar,in loc de inele magnetice, s-au folosit tranzistori pentru a stoca datele in sistem binar. Deşi acest lucru poate parea ca o modificare tehnica minora, a permis dezvoltarea de semiconductori ieftini si in masa de catre IBM.
     Din aceasta perioada inceput cursa pentru a utiliza din ce in ce mai multi RAM în spatii mai mici. Creşterea exponenţiala a fost şi chiar si astazi continuă sa faca acest lucru. 
     Tehnologia RAM la inceput vindea dispozitive pe 64 de biti, acum insa computerele noastre de zi cu zi  functioneaza  la sute de milioane de biti. Este o schimbare uimitoare într-o perioada atat de scurta de timp, abia patru decenii in urma  si de atunci, memoria RAM s-a dezvoltat pana la un nivel la la care se pot face calcule calcule incredibil de complexe,care nici un om nu ar putea sa calculeze singur.
      Exista tipuri usor diferite de RAM, care reflectă rolurile pe care le pot avea memoriile RAM. Memoria dinamică RAM, sau DRAM, este de tipul cel mai frecvent găsite în computere, aceasta are nevoie constanta de a fi actualizata.. Acesta este tipul original de memorie RAM. Memoria RAM static, sau SRAM, prin contrast, nu are nevoie să fie actualizata. Mai exista si memoria flash care este considerata a fi din punct de vedere tehnic este un alt tip de memorie RAM si este utilizat in multe din unitatile de astăzi.
     Memoria DRAM stocheaza informatia random in condensatorii cercuitoului integrat. 0 sau 1 reprezinta starea in care se afla condensatorul. 0 in cazul in care este gol iar 1 este atunci cand condensatoruleste incarcat.
    Memoria SRAM stocheaza informatia utilizand un bistabil.Acest tip de stocare este destul de costisitor dar in acelasi timp este si mai eficienta comparativ cu memoria DRAM.
     Incep sa se testeze  si memorii in faze experimentale  precum memoria TRAM. Aceasta tehnologie se doreste a unifica beneficiile DRAM si SRAM aceasta insemnand volum mare de informatii si viteza crescuta.
    O alta tehnologie moderna este Nano – RAM care are la baza nanotuburile aceasta se antcipeaza a avea o performanata mult mai buna de cat a memoriilor clasice.

Programarea si utilizarea unui calculator.


Modul de evaluare Sem. I

  • Verificarea Scris cu subiecte din toata materia ( curs + laborator ):50% din nota finala; NS>=5.
  • Verificarea Laborator ( la terminal ) si activitate pe parcursul semestrului. 
  • Dosar 5 programe: 3 primite si 2 la alegere 50% din nota finala; NL>=5.
  • Sunt valabine regulamentele oficiale ale facultatii privind prezenta studentilor la activitatile didactice.
  • Prezenta la curs - obligatorie pt. An. 1.
Cursu 1: Generalitati despre capculatoare si programarea lor.                   

1. Computer-ul sau calculator electronic este o masina de prelucrat date / informatii ( numere, text, imagini, sunet sau video ) conform unui program = lista de instructiuni.
Sugstantivul computer ← ---- din verbul englez  to compute, ← ---- preluat in 1631 din franceza        ( verbul computer ), ← ---- din latina ( verbul computere ) care are intelesul a calcula, a socoti.
Computerul personal (PC) este cel mai familiar calculator ( varianta sa portabila, laptop-ul, notebook-ul ). In 1981 IBM lanseaza primul PC.
Computerului integrat ( embedded ) - este inglobat complet si controleaza dispozitivul pe care il conduce; CI este cea mai raspandita forma de calculator: computer de bord la avion, racheta, automobil, aparat foto, bicicleta, felicitari muzicale etc.

Informatica este stiinta prelucrarii informatiilor cu ajutorul calculatoarelor.
Limbajul de programare este un set de expresii si reguli de formulare a instructiunilor pentru un calculator. Un limbaj de programare are definite un set de reguli sintactice si semantice. Prin instructiuni programatorul specifica in mod exact si amanuntit actiunile pe care trebuie sa  le execute calculatorul, in ce ordine si cu ce date.
Programarea calculatorului este actiunea de scriere a programelor in diverse limbaje de programare.

                     II. Istoric: 
Calculatorul mecanic - construirea primelor masini de calcul numeric: Blaise Pascal ( 1623 - 1662 ) la 18 ani, dupa ce a lucrat 3 ani, intre 1642 si 1645 a inventat si realizat primul calculator mecanic, numit Pascaline ( pentru a-l ajuta pe tatal sau la gestionarea taxelor).
Calculatorul analogic - apare in prima jumatate a secolului al XX-lea; sunt specializate si sofisticate.
Calculatorul digital (numeric) au aparut odata cu perfectionarea electronicii digitale (datorita lui Claude Shannon in anii 1980) care modeleaza problemele in numere (biti) in loc de semnale electrice sau mecanice.
Colossus (de volumul unei camere) este primul calculator digital  electronic programabil folosit in timpul razboiului al II-lea de catre englezi sa cipeasca/sparga codurile mesajulor germane criptate. Doi ani mai tarziu in SUA este construit calculatorul ENIAC (de marimea catorva autobuse double-decker). Revista Populara specula in 1947 ca intr-o zi calculatoarele  numerice ar marimea unui automobil.

In prezent arhitectura von Neumann  descrie un calculator prin patru module importante:

  1. unitate aritmetica-logica (UAL),
  2. unitate de control,
  3. memorie centrala,
  4. dispozitivele de intrare/iesire I/E (I/O, input/output).

Modulele de mai sus sunt interconectate cu un mănunchi de fire numit magistrală (bus) şi sunt conduse de tactul unui ceas (Real-time clock – un cristal ).
UAL este din multe puncte de vedere "inima" calculatorului. Aceasta este capabilă să
efectueze operaţii aritmetice (adunare, înmulţire etc.), operaţii logice, de comparaţie, operaţii de
manevrare a datelor (duplicare, mutare, trunchiere etc.).
Unitatea de control este un modul central care comandă toate celelalte module. Rolul ei
este să:
- citească instrucţiunile şi datele din memorie sau de la dispozitivele I/E,
- să decodeze instrucţiunile,
- să ofere UAL date de intrare corecte conform cu instrucţiunea,
- să "instruiască" UAL ce anume operaţie să efectueze asupra intrărilor,
- să trimită rezultatele înapoi (să "scrie") în memorie sau către dispozitivele I/E.
Instrucţiunile "instruiesc" calculatorul ce să facă, iar datele sunt acele informaţii care trebuie
prelucrate conform cu instrucţiunile.
Contorul de instrucţiuni: este o componentă cheie a unităţii de control. Acesta conţine la
orice moment adresa instrucţiunii curente, în permanentă schimbare.
Unitatea centrală de procesare (central processing unit, CPU ) sau microprocesor este
(începînd din anii 1980, se plasează pe acelaşi circuit integrat) UAL + Unitatea de control.
Sistemele de calcul puternice pot avea
inglobate mai multe procesoare.
Memoria unui calculator poate fi văzută
ca o mulţime de "celule" numerotate.
Fiecare celulă se identifică printr-un număr
sau adresă. Un grup de celule poate
înmagazina o cantitate mică de informaţie de
tip instrucţiune sau date propriu-zise.
Sistemele de I/O sunt dispozitive prin care computerul preia informaţii din lumea exterioară
şi raportează înapoi rezultatele.
Dispozitive de intrare: tastatura, mouse-ul, scannerul,
Dispozitive de ieşire: monitorul, imprimanta, ploter etc.
Dispozitive I/O combinate: modemul, cartela de LAN, discul magnetic.
Azi, principiile de funcţionare a calculatorului sunt implementate prin circuite digitale
(numerice)= circuite electrice care pot efectua operaţii din algebra booleană şi aritmetica
binară.
1. Primele circuite digitale foloseau relee electromecanice pentru a reprezenta stările "0"
(blocat) şi "1" (conducţie), aranjate în porţi logice.
2. Releele au fost repede înlocuite cu lămpi - tuburi cu vid, dispozitive 100% electrice, folosite
pînă atunci în electronica analogă pentru proprietăţile lor de amplificare, dar care pot
funcţiona şi drept comutatoare.
3. In anii 1960 lămpile au fost înlocuite cu tranzistori = dispozitive ce funcţionau asemănător
dar mult mai mici, mai rapide, mai fiabile, mai ieftine, la consum mic de curent.
 Circuitul integrat conţinea mai mulţi tranzistori şi firele de interconectare
corespunzătoare, totul pe o singură plăcuţă de siliciu. Mai târziu, UAL-urile combinate cu
unităţi de control (UC) au fost produse ca circuite integrate, numite microprocesoare (CPU -
Central Processing Unit ).
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 produse
de firmele Intel şi AMD din anul 2005.
Zilele calulatoarelor bazate pe circuite în cipuri de siliciu sunt numărate. Miniaturizarea nu mai poate mult continua pe această tehnologie.
Placa de bază (MB motherboard) este principala placă cu circuite integrate din calculator.
La MB se conectează toate componentele computerului a) prin montare directă pe placă b) prin
cabluri. MB găzduieşte:
1. Procesorul (CPU), memorie ROM (în principal BIOS-ul) şi magistralele.
2. Expantion slots (PCI, ISA) = conectoare pentru montarea unor componente (plăci de
sunet, modem, plăci de achiziţie de date din mediu etc.)
3. Placa video (ex. AGP) – conector specific montării plăcii video a computerului;
4. Sloturi pentru montarea memoriei RAM (SIMM, DIMM);
5. Porturi – conectori pentru transmisia de date serială sau paralelă etc.
MB include chipset-ul sau PCIset (glue logic) = este grupul de microcircuite care
controlează fluxul de date dintre principalele componente a PC-ului: CPU, memoria centrală,
cache-ul secundar şi orice dispozitiv conectat la magistralele ISA şi PCI. De asemenea controlează
schimbul de informaţie cu Hard discul. Performanţa unui calculator depinde mult de calitatea CPU, a
chipsetului şi de cantitatea de RAM.
 Instrucţiunile procesorului – cod maşină (software)
- sunt interpretate de către unitatea de control şi
- executate de UAL.
Procesorul cunoaşte prin construcţie un set relativ mic de instrucţiuni elementare, care
sunt simple, bine definite şi neambigue. Exemple de instrucţiuni:
* "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, următoarea instrucţiune de executat se găseşte la
celula 30".
Instrucţiunile procesorului se împart în 4 categorii:
 1. mutare/copiere de date dintr-o locaţie în alta,
2. executare de operaţii aritmetice şi logice asupra datelor,
3. testarea unor condiţii, de exemplu "conţine celula 999 un 0?",
4. modificarea secvenţei operaţiilor.
În calculator instrucţiunile şi datele sunt stocate în cod binar. De exemplu, codul pentru una
din operaţiile de copiere pe un procesor fabricat de firma Intel este 10110000.
Limbajul maşină al procesorului este mulţimea instrucţiunilor care pot fi executate de
procesor.