CATEGORII DOCUMENTE |
DOCUMENTE SIMILARE |
|
TERMENI importanti pentru acest document |
|
Limbajul C permite utilizatorului definirea si prelucrarea datelor pe biti. Utilizarea datelor pe biti este legata de folosirea indicatorilor care de obicei sunt date care iau numai doua valori 0 sau 1.
Nu este justificat ca un astfel de indicator sa fie pastrat ca un intreg pe 16 biti si nici macar pe un octet. Indicatorul poate fi pastrat pe un singur bit. In acest scop, limbajul C ofera posibilitatea de a declara date care sa se aloce pe biti (unul sau mai multi biti). Acest lucru isi gaseste aplicare in programele de sistem. Astfel, de exemplu, atributele variabilelor dintr-o tabela de simboluri pot fi pastrate pe biti, ceea ce conduce la o economisire substantiala a memoriei ocupate de tabela respectiva.
Prin camp intelegem un sir de biti adiacenti continuti intr-un cuvant calculator. Campurile se grupeaza formand o structura.
Un camp se declara ca si o componenta a unei structuri si el are tipul unsigned (intreg fara semn). Totodata in declaratia campului se indica si dimensiunea lui in biti.
In general, o structura cu componente campuri are forma:
struct
nume;
unde campi (i=1,,n) are unul din formatele de mai jos:
unsigned nume lungime_in_biti
sau lungime_in_biti
Exemplu:
struct
indicatori;
Data indicatori se aloca intr-un cuvant calculator, adica pe 16 biti. Componentele ei sunt:
a un bit;
b un bit;
c doi biti;
d doi biti;
e trei biti.
La campuri ne putem referi la fel ca si la componentele oricarei structuri. Deci la indicatorii de mai sus ne putem referi prin urmatoarele constructii:
indicatori a
indicatori b
indicatori c
indicatori d
indicatori e
Alocarea bitilor este dependenta de calculator. De obicei bitii se aloca de la dreapta spre stanga ca in figura de mai jos:
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
a
b
c
d
e
Observatii:
1o. Daca un camp nu poate fi alocat in limitele unui cuvant, el se aloca in intregime in cuvantul urmator.
2o. Nici un camp nu poate avea o dimensiune mai mare decat 16 biti.
3o. Formatul fara nume (al doilea format) pentru camp se foloseste pentru cadraje. Acest lucru este util atunci cand sunt zone de biti neutilizate in cadrul unui cuvant. De asemenea, utilizarea formatului cu lungime egala cu zero permite ca alocarea campurilor urmatoare lui sa se faca in cuvantul urmator.
4o. O structura care are si componente campuri poate avea si componente obisnuite.
5o. Nu se pot defini tablouri de campuri.
6o. Unui camp nu i se poate aplica operatorul adresa.
Campurile se utilizeaza frecvent la scrierea unor programe de sistem, cum ar fi : drivere pentru periferice, compilatoare, etc.
Utilizarea campurilor poate conduce la programe cu o portabilitate redusa. Totodata, accesul la date pe biti conduce la cresterea numarului de operatii, fiind necesare deplasari si operatii pe biti suplimentare, fapt ce poate conduce atat la cresterea timpului de executie a programelor, cat si la cresterea memoriei utilizate. Ori datele pe biti se folosesc chiar in ideea de a economisi memorie.
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 669
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved