CATEGORII DOCUMENTE |
Reprezentarea interna a numerelor reale
Din considerentele de la reprezentarea externa a datelor putem trage alte concluzii importante din punct de vedere al reprezentarii interne. Numerele binare intregi fara semn au aceeasi reprezentare atat externa cat si interna.
Numerele intregi cu semn (care in reprezentare externa sunt prefixate cu ) au ca reprezentare interna un bit de semn, dar care se trateaza deosebit de ceilalti biti ai reprezentarii. Toti intregii cu semn, care au MSB=1, sunt reprezentati intern in complement fata de 2.
Numerele reale se pot reprezenta identic cu cele intregi cu semn, cu o precizare: nu se face o deosebire neta intre bitii reprezentarii partii intregi si cei ai reprezentarii partii fractionare. Acest tratament nediferentiat provine de la reprezentarea stiintifica uzuala cu mantisa si exponent. Fie, spre exemplu, reprezentarea binara a numarului 12.25:
Calculatorul poate reprezenta sirul de biti 110001 si retine faptul ca punctul se pune dupa primii 4 biti ai reprezentarii. Acest lucru se intampla si in realitate. Deci, singura deosebire intre reprezentarea numerelor reale si a celor intregi consta in faptul ca numerele reale necesita o informatie suplimentara despre asa numitul exponent, in cazul nostru numarul pozitiv 4.
In cele ce urmeaza, vom prezenta tipurile de baza pe care le pot avea datele in reprezentarea interna.
Tipul unei date determina modul in care procesorul stocheaza si prelucreaza data respectiva. Cum primele procesoare care au condus la aparitia pe piata a primelor calculatoare pentru neprofesionisti (asa numitele Home Computers) au fost procesoare capabile sa prelucreze si sa transmita in paralel 8 biti, a fost naturala gruparea a 8 biti intr-o entitate numita byte.
1B = 8b (adica un byte reprezinta 8 biti)
Procesoarele au evoluat, ajungandu-se in prezent la procesoare pe 64 de biti. Cum evolutia lor s-a facut trecandu-se succesiv prin multipli de 8 biti, s-au impus si alte entitati de reprezentare a informatiei, pe care le vom prezenta sintetic in tabelul de mai jos.
|
Denumire |
Dimensiune |
a |
Notatie |
||||||
Nr. byte |
Nr. biti | |||||||||
Byte |
1B |
8 b |
octet |
B |
|
|||||
Word |
2B |
16 b |
cuvant |
W |
|
|||||
Double_Words |
4B |
32 b |
Cuvant dublu |
DW |
|
|||||
Quad_Words |
8B |
64 b |
Cuvant cvadruplu |
QW |
|
|||||
Ten_Words |
10B |
80 b |
TW |
|
||||||
A determina reprezentarea interna inseamna sa determinam lungimea reprezentarii (de obicei in multipli de octeti), modul de interpretare al bitilor ce compun reprezentarea si gama de reprezentare, adica sa determinam magnitudinea (valorile minime si maxime pozitive si negative) ce pot fi reprezentate in formatul respectiv.
In limbajul C, exista doua tipuri de reprezentare pe care le putem numi principale: tipul intreg si tipul real, fiecare avand si anumite particularizari. Astfel, tipul intreg (int) include si tipul caracter (char) iar tipul real (float) include si tipul real extins (double).
Tipurile de date le vom reprezenta de la simplu la complex, in ordinea char, int, float, double.
Tipurile de baza sunt char, int, float, double si cu ajutorul modificatorilor de tip putem obtine diverse particularizari. Modificatorii pot fi signed, unsigned, short, long.
Ca o generalitate, numerele sunt reprezentate intern luandu-se in considerare bitul de semn, deci implicit numerele intregi sau reale au MSB bit de semn. Daca se specifica explicit, prin modificatorul unsigned, nu se mai considera (interpreteaza) bitul de semn.
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 934
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved