Previzualizare laborator:

Extras din laborator:

Scopul lucrării este prezentarea unui scurt istoric a limbajului C şi a noţiunilor legate de lucrul pe

calculator (limbaj de programare, compilare, baze de numeraţie) iar în final iniţierea în folosirea

compilatorului Developer C++ prin rularea unor aplicaţii tipice de conversie dintr-o bază de numeraţie

în alta.

I. OBSERVAŢII TEORETICE

1.1. Scurt istoric C

Limbajul C a fost creat prima dată de către Dennis Ritchie şi Brian Kernighan la

laboratoarele BELL Labs. din SUA. Versiunea premergătoare lui C a fost B. Odată creat el a fost

folosit - împreună cu limbajul de asamblare - la scrierea completă a sistemului de operare UNIX.

Aceasta arată că limbajul are o putere şi flexibilitate aparte.

1.2. Limbajul C - caracteristici generale

Limbajul C se bucură de următoarele caracteristici:

- este de uz general, adică poate fi folosit atât în scrierea de programe tip aplicaţie cât

şi în situaţii dedicate (cum sunt metodele numerice - calcule ştiinţifice, grafică,

editoare de text ş.a.);

- de nivel mediu - cu relativ puţine instrucţiuni se pot spune relativ multe lucruri; pe

scara aceasta de clasificare a limbajelor de programare C se află deasupra limbajului

de asamblare, dar sub limbajele de nivel înalt: Pascal, C++, Java, SmallTalk, Python,

Eiffel, ADA, Fortran etc. (figură cu clasificarea limbajelor de programare din punct

de vedere al nivelului lor - scăzut, mediu şi înalt);

- compilat - în urma etapelor de compilare şi editare a legăturilor rezultă un fişier

executabil (.exe sau .com); dacă se şterg de pe hard-disk toate fişierele cu excepţia

acestui executabil despre care vorbim - presupunând că nu se şterg şi fişierele sistem

- acest program va rula fără probleme majore; C este diferit de limbajele interpretate

(Visual Basic sau Java) în cazul cărora în urmă procesului de traducere a sursei în

limbaj apropiat de limbajul maşinii pe care rulăm nu avem un fişier executabil

concret. Ce se întâmplă în acest caz? Odată lansat codul sursă, datorită asocierii,

este lansat automat interpretorul acelui limbaj, care preia sursa şi o execută,

succesiv, linie cu linie. Efectele instrucţiunilor se reflectă ca şi în cazul unui program

executabil. De obicei compilatoarele sunt mai rapide decât interpretoarele, în sensul

că generează cod obiect mai rapid. În ultima vreme, deoarece limbajul Java se

Îndrumar de laborator 2

impune ca un standard de facto în programarea Internet (s-a şi impus, de altfel),

unde este nevoie de rapiditate - suntem foarte aproape de cerinţele unui software în

timp real -, nu ar fi deloc de acceptat o întârziere în încărcarea paginilor Web, tocmai

datorită timpului de interpretare datorat applet-urilor Java cuprinse de acele

pagini. Programele compilate sunt, în plus, şi mai compacte decât cele interpretate;

- portabil - adică odată dus de pe o platformă hardware pe o alta programul nu are

nevoie de modificări, sau are nevoie de foarte puţine modificări pentru a rula corect.

Comportamentul programului aste analog (se poate spune aproape perfect analog)

pe cele două platforme. La aceasta contribuie şi standardizarea limbajului.

- flexibil şi puternic - C combină flexibilitatea limbajului de asamblare cu puterea

nivelului său mediu.

1.3. Baza de numeraţie 2 (sistemul BINAR)

Ca în orice bază de numeraţie, cifrele folosite în reprezentarea numerelor sunt cuprinse în

intervalul:

[0, baza-1]

Rezultă că în baza 2 avem o reprezentare a numerelor folosind doar cifrele 0 şi 1.

Fiecare dintre cifrele semnificative ale unei baze de numeraţie poartă denumirea de digit. În

baza 2 deoarece sunt doar doi digiţi posibili aceştia au preluat denumirea de binary digit (bit). De

aici provenienţa cuvântului bit.

În baza 10 aceste cifre sunt 0...9. Alte baze de numeraţie folosite în legătură cu sistemul binar

sunt: 4, 8 (octal) şi 16 (hexazecimal). Pentru baza 16 cifrele de reprezentare sunt:

0..9 şi A..F

deoarece nu s-ar putea spune dacă, de exemplu, combinaţia 12 este obţinută prin alăturarea

cifrelor 1 şi 2 ca cifre utile de reprezentare, sau este luată ca atare (12). Ar rezulta un mod de

reprezentare echivoc, din moment ce 12 este şi valoare separată, dar şi o alăturare de alte două

cifre semnificative ale bazei de numeraţie 16. S-a convenit atunci folosire primelor litere ale

alfabetului, cu semnificaţia:

A ţine locul lui 10

B lui 11

...

E lui 14

F lui 15.

În calculatoarele actuale baza de numeraţie este 2. Au existat încercări de creare a unor

calculatoare în bază 10, dar nu s-au putut ridica la performanţele calculatoarelor binare. S-a

păstrat astfel sistemul binar ca standard pentru calculatoarele digitale.

Să luăm un exemplu de număr în baza 2:

0110 1101

Ce înseamnă acesta? Cum poate fi interpretat astfel încât să poată fi înţeles de către noi

(adică tradus în baza 10)?

Download gratuit

Documentul este oferit gratuit,
trebuie doar să te autentifici in contul tău.

Structură de fișiere:
  • laborator1.pdf
  • laborator2.pdf
  • laborator3.pdf
  • laborator4.pdf
  • laborator5.pdf
Alte informații:
Tipuri fișiere:
pdf
Nota:
9.5/10 (2 voturi)
Nr fișiere:
5 fisiere
Pagini (total):
63 pagini
Imagini extrase:
63 imagini
Nr cuvinte:
20 676 cuvinte
Nr caractere:
108 540 caractere
Marime:
823.74KB (arhivat)
Publicat de:
NNT 1 P.
Nivel studiu:
Facultate
Tip document:
Laborator
Domeniu:
Limbaje de Programare
Predat:
la facultate
Materie:
Limbaje de Programare
Profesorului:
Vlad Grosu
Sus!