Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
AccessAdobe photoshopAlgoritmiAutocadBaze de dateCC sharp
CalculatoareCorel drawDot netExcelFox proFrontpageHardware
HtmlInternetJavaLinuxMatlabMs dosPascal
PhpPower pointRetele calculatoareSqlTutorialsWebdesignWindows
WordXml


Camp

c



+ Font mai mare | - Font mai mic



Camp

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



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 669
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved