Reprezentarea Informatiei in sistemul de calcul

SISTEMUL BINAR

. unitatea de baza a informatiei este bit-ul si poate avea 2 valori (0 sau 1).Sistemul binar  Informatia este reprezentata digital – unitatea fundamentala pentru reprezentarea informatiei este discreta (nu poate lua orice valoare)  Se foloseste reprezentarea binara a informatiei.  Strict conventional se atribuie valoarea 0 prezentei potentialului electric si 1 absentei acestuia.

 O secventa de 8 biti se numeste byte.  Ex.9).  5267=7x100+6x101+2x102+5x103 .  Fiecare numar in aceasta baza este exprimat ca o suma de produse ale fiecarei cifre si a unei puteri a lui 10.2. numerele 1÷ 255.1.  Un byte reprezinta 28=256.: In sistemul zecimal sunt 10 cifre (0.  1 kilobyte = 210 byte = 1024 byte  Sistemul zecimal – numarul cifrelor distincte reprezinta baza sistemului numeric. putem reprezenta 256 valori: 256 caractere.….

 Sistemul binar (baza 2) este alcatuit din 2 cifre (0.1). Similar:  10101 = 1x20+0x21+1x22+0x23+1x24  10101 (2) = 21 (10) Zecimal 1 2 3 4 5 6 7 8 9 10 BInar 1 10 11 100 101 110 111 1000 1001 1010 Suma argumentilor lui 2 1 2+0 2+1 4+0+0 4+0+1 4+2+0 4+2+1 8+0+0+0 8+0+0+1 8+0+2+0 .

1.D.2.B. 100101110 + 110011011 --------------1011001001   Numerele binare lungi sunt greu de citit.Aritmetica binara   Pentru a aduna doua numere. Daca suma pentru orice coloana este mai mare decat ceea ce putem exprima cu o cifra (0 sau 1 pentru baza 2) atunci transportam un 1 la puterea imediat urmatoare (mai mare).….A. le aliniem unul sub altul dupa puterile bazei si dupa aceea adunam cifrele dinspre dreapta. exista conventia de a grupa bits-ii cate 3 sau 4 incepand de la dreapta. Numim aceasta o depasire (overflow) daca puterea imediat urmatoare nu a fost implementata si acest transport nu este posibil. Aceste cifre sunt 0.3.E.   Este obisnuit sa scriem fiecare set de 4 bits ca o cifra in baza 16 (hexazecimala).9. Din acest motiv.C.F  Astfel 0011 este 3 si 1111 este F .

 Pentru a explica scaderea este necesar sa cunoastem un concept al algebrei moderne numit aditivul invers. De fiecare data cand adunam un numar la aditivul sau.  Scaderea minus scazator ----------------diferenta Adunarea plus inversul scazatorului -------------------------suma  Acest fapt este important deoarece UCP are logica de adunare.  Ex. Daca putem converti scaderea la adunare atunci putem folosi aceasta logica. .: 3 + (-3) = 0  Matematic scaderea este posibila deoarece fiecare numar are un invers. scaderea nu este altceva decat adunarea aditivului invers. obtinem 0. De fapt.

Mai intai formam un numar care este numit complement de unu: oriunde numarul original are un bit de 1.  De exemplu sa consideram urmatoarele numere de 8 bits:  0010 0101 Numar 1101 1010 Complement de unu 1101 1011 Complement de 2  Notati ca adunand un numar cu complementul sau de doi. . Putem calcula aditivul invers in numai 2 pasi. suma este o putere a lui 2 ( de aici si numele)  Ex.: 0010 0101 Numar +1101 1011 Complement de doi ------------------------------------------10000 0000 Suma ca putere a lui doi  Daca luam in considerare numai 8 bits din dreapta atunci cu adevarat raspunsul este 0. Apoi adaugam 1 si obtinem complementul de 2. complementul va avea un 0 si viceversa.

adunam deinmultitul la produsul partial si deplasam inmultitorul cu o pozitie la stanga. daca bitul este 0. cu exceptia faptului ca tabla inmultirii este mult mai restransa. pur si simplu facem numai deplasarea.  Ex.  Daca bitul este 1. Inmultirea urmeaza acelasi proces folosit in aritmetica zecimala. . putem converti problema inmultirii intr-o serie de adunari si deplasari (shifts) analizand bits-ii din inmultitor.: 101 x 101 ----------------101 000 101 -----------------11001  Atata timp cat multiplicam numai prin 1 si 0.

.  Rezulta ca multiplicarea se realizeaza mai complicat si ia mai mult timp. Dupa cum stim CPU (UCP) are logica atat pentru adunare cat si pentru deplasare asa ca putem intelege cum se realizeaza inmultirile. De fapt timpul necesr unei inmultiri va depinde de numarul de 0 in inmultitor.  Impartirea in binar se face asemanator cu impartirea in sistemul zecimal.  Observam ca ceea ce pentru noi este o singura operatie devine pentru computer o secventa de operatii primitive. Cu cat sunt mai putini de 0 cu atat sunt mai multe adunari si timpul de calcul este mai indelungat.  De retinut din aceasta: nu toate instructiunile au aceeasi viteza de procesare si unele viteze de procesare variaza cu datele.

. atunci numerele care pot fi pastrate intr-un byte pot varia de la -127 la 127. functie de formalismul de reprezentare.  Daca lasam deoparte primul (cel din stanga) bit pentru a servi ca bit de semn.     1 octet = 0÷255 2 octeti – se numeste reprezentare de 16 bits = 0÷64000 4 octeti (32 bits) = 232 8 octeti (64 bits)  Cel mai mare numar ce poate fi pastrat intr-un byte este 11111111 sau 28-1 sau 255.Reprezentarea numerelor  Numerele pot fi reprezentate ca intregi sau in virgula mobila (floating point).  Pentru reprezentarea ca intreg se folosesc un numar de 2n octeti.

3 bytes mantisa). Modul de lucru se numeste virgula mobila (floating point). In 16 bits se poate pastra un numar pozitiv de ordinul 216-1 sau 65535.  Prima reprezentare de tip virgula mobila este pe 4 bytes si se numeste reprezentare in simpla precizie (1 byte exponetul. . Putem sa lucram cu numere mai largi folosind 4 bytes (32 bits) ca unitate. 7 bytes mantisa) (± 255 valori reprezentabile pe 7 bytes x 10±127) numere care acopera aproape toata clasa de precizie. Pentru a memora numere mai mari putem combina 2 bytes consecutivi. Daca folosim un bit pentru a fi bitul de semn atunci intervalul devine: -32767 la 32767. el este in general numit intreg si formatul de 16 bits este numit formatul de numar intreg.  Acest numar este destul de mare pentru majoritatea aplicatiilor.  Pentru reprezentarea in dubla precizie se aloca 8 bytes (1 byte exponentul.  Totusi unele probleme necesita numere mai mari sau valori fractionale.

cand utilizatorul tasteaza “57” la un terminal.Reprezentarea caracterelor  Alfabetul calculatorului contine 26 de litere mari si 26 de litere mici. In acelasi fel softul de sistem trebuie sa converteasca datele la siruri de coduri care pot fi listate sau afisate. .  Fiecare dintre aceste caractere are un cod unic care poate fi exprimat pe un byte.  Pentru a elimina erorile de transmisie. 10 cifre. De exmplu. Bitul de paritate este setat fie pe 0 fie pe 1 pentru a garanta numarul impar de cifre de 1 al codului (exista deasemenea si o paritate para). el de fapt introduce un cod de 8 bits pentru “5” urmat de un cod de 8 bits pentru “7”. computerul adauga un bit de paritate pentru a detecta codurile invalide. cateva duzini de semne de punctuatie si cateva duzini de caractere speciale de control pe care hardul le recunoaste.  Softul de sistem al calculatorului poate converti apoi aceste coduri in numar binar 0011 1001 care poate fi folosit pentru calcul.

operatia este intrerupta. Totusi. softul de sistem normal incearca sa reciteasca (sa rescrie) caracterul. Acest fapt este folositor in special cand citim date stocate pe medii magnetice.  Cand o eroare de paritate este detectata. de un numar fix de ori. pe care orice particula de praf poate cauza erori temporare.  Folosirea unui bit pentru verificarea paritatii va face codul caracterului mai lung. acesta nu este de fapt o problema atata timp cat codurile necesare reprezentarii alfabetului sunt mai putine de 128 si 128 de coduri pot fi exprimate in 7 bits. Daca eroarea persista. cum sunt discurile. . Este simplu sa proiectam hard-ul in asa fel incat sa testeze paritatea fiecarui caracter procesat pentru a detecta codurile invalide. Al 8-lea bit este disponibil pentru a folosi ca bit de paritate.

 Majoritatea memoriilor utilizeaza un al 9-lea bit de paritate pentru a-si verifica continutul. American Standard Code for Information Interchange (ASCII) este codul utilizat de toate aplicatiile folosite in microcomputere. Acesta este un cod de 8 bits dezvoltat de IBM pentru calculatoarele mari. Un astfel de bit de paritate este utilizat de hard si nu poate fi utilizat de programe. Fiecare caracter este scris pe 7 bits. . El nu necesita un bit de paritate deoarece hardul care il proceseaza adauga un bit de paritate.  De exemplu: 100 0001 este codul pentru A 110 0001 este codul pentru a 100 0010 este codul pentru B  Mai exista si alte coduri printre care si Extended Binary Coded Decimal Interchange Code (EBCDIC).

in schimb. marimea cuvantului este de 8 bits. De exemplu.  Entitatile logice sunt acelea care comunica intelesul. Marimea cuvantului este numarul de bits care pot fi accesati ca o unitate.  Pentru a citi o unitate logica exprimand un numar in virgula mobila este necesar sa citim patru unitati (cuvinte) fizice. este o unitate fizica.Reprezentarea logica si fizica  Atunci cand vorbim despre calculatoare trebuie sa facem diferenta intre entitatile logice si cele fizice. un intreg pe 16 bits.  Cuvantul. Intr-un calculator de 8 bits. . un numar in dubla precizie pe 64 bits sunt toate unitati logice. Pe de alta parte un calculator de 32 bits in mod normal are facilitati pentru a accesa numai o parte a unui cuvant (un anume byte). un numar in virgula mobila pe 32 bits. un cod de caractere pe 8 bits.

 Adancimea de culoare de 1 byte ce permite reprezentarea a 256 culor sau 256 nuante de gri. alcatuite dintr-o matrice pixel (pixel = elementul cel mai mic din imagine.  1 pixel este caracterizat prin pozitia in cadrul imaginii si culoarea sa.  Adancimea de culoare de 4 byte – cateva milioane de culori.  Adancimea de culoare de 2 byte – 64000 culori.Reprezentarea imaginilor  Imaginile se considera a fi obiecte dreptunghiulare. .  Cel mai des intalnite:  Adancimea de culoare de 1 bit pentru alb-negru. Numarul maxim de culori ce poate fi luat de un pixel se numeste adancime de culoare. ce este definit individual).