Compilatoare

Curs
7/10 (1 vot)
Domeniu: Calculatoare
Conține 1 fișier: doc
Pagini : 12 în total
Cuvinte : 2768
Mărime: 21.49KB (arhivat)
Publicat de: Livia Vasilescu
Puncte necesare: 0
Profesor îndrumător / Prezentat Profesorului: Stefan Stanescu

Cuprins

  1. Limbaje - introducere

Extras din curs

Evolutia vietii este insotita de o permanenta acumulare de experienta statistica, dobandita prin incercari directe ale unor subiecti activi. Pastrarea experientei si transmisia ei spre generatiile urmatoare prin diferite semne prezinta avantajul de a le furniza aceastora date, scutindu-le de efortul intregului proces de experimentare.

Suportul si forma de organizare a informatiei transmise a evoluat perpetuu, precum si mecanismele asociate de acumulare, pastrare si emisie. Forme de compresie si de protectie a informatiei au marit randamentul acestor mecanisme. Primele semne au fost concepute ca modificari ale unor stari stationare, pe un suport chimic, ADN, avand avantajul unei sigurante in functionare exceptionale, dar cu o durata mare intre innoiri. Semnalele au evoluat in diferite forme, generate si verificate de experienta umana indelungata si nemijlocita. Cea mai complexa organizare de semne grupeaza semnale sonore in sisteme lingvistice, folosind siruri de sunete, cuvintele, alcatuind dialecte sau limbaje, intervenind in comunicarea directa intre oameni pentru transmiterea de experienta.

Limbajul nu a facut decat sa reflecte mecanisme de gandire logica, inteleasa ca o reflectare a regulilor statisticii observatiilor, conform eperientei dobandite atat nemijlocit cat si prin acumulare de la generatiile anterioare. Fiecare limbaj este o varianta de mecanism de conservare si de transmisie de informatie, avand la baza un set de reguli de functionare construite conform legilor logicii. Setul de reguli proprii unui limbaj alcatuiesc gramatica acelui limbaj.

Activitatea de programare a masinilor de calcul este exercitata de un programator, in vederea exploatarii resurselor specifice de mecanisme rapide si fiabile de pastrare, redare si prelucrare de procese intelectuale, destinamdu-le rezolvarii unei aplicatii concrete.b

Semnul este o modificare a unei stari stationare.

Semiotica se ocupa cu studiul semnelor.

Semantica este o parte a semioticii care studiaza relatia intre semn si realitatea semnificata.

Limbajul este o colectie organizata de semne.

Sintaxa este o parte a semioticii care se ocupa cu regulie de definire a semnelor unui limbaj si cu relatiile stabilite intre cestea.

Gramatica este un set de regili de definire si de compunere a semnelor exprimand sintaxa unui limbaj.

Legile lexicate sunt un set de reguli gramaticale prin care de stabilesc tipurile si structura elementelor lexicale permise in reprezentarea limbajului.

Legile sintactice sunt setul de reguli gramatile care stabilesc regulile de compunere a elementelor lexicale in reprezentarea unui limbaj, in conformitate cu natura lexicala a semnelor.

Compilatorul este un program de transfer de la un limbaj de nivel inalt, care respecta legile unei gramatici relativ complexe, apropiata de mecanismele logice ale unui limbaj natural, la o reprezentare in cod masina, executabil pe o masina concreta.

Compilatorului simplifica activitatea unui programator de masini de calcul, folosind un limbaj apropiat de limbajul natural, structurat pe legile generale ale logicii.

Compilatorul asista programatorul in activitatea de conceptie, specificare, punere la punct si intretinere.

Analiza lexicala este operatia de examinare a unui text sursa din punct de vedere al diferitelor componente (tokens), implicand operatii de recunoastere si de clasificare.

Partea compilatorului care se ocupa cu analiza lexicala se numeste scaner .

Analiza sintactica este operatia de examinare a constructiei asertiunilor din elemente lexicale .Partea compilatorului care se ocupa cu analiza sintactica se numeste parser .

Generatorul de cod este un utilitar software care dispune de rezultatele analizei lexicale si a analizei sintactice a unui program sursa scris intr-un limbaj de nivel inalt in vederea transpunerii efective a programului sursa intr-o forma compatibila cu structura hardware a unei masini concrete. Generatorul de cod transpune un program abstract intr-un modul executabil de o masina, facand legatura de la conceptia abstracta la realitate.

Cele trei tipuri de activitati se indeplinesc de regula in sectiuni seprate ale unui compilator. Existenta celor trei zone ale compilatorului nu presupune obligatoriu trei parcurgeri succesive ale programului sursa, fiind uneori posibila o singura trecere, ca in cazul compilatoarelor interpretoare .

De exemplu, in expresia:

I := J + K I, J, K: integer

variabilele sunt identice din punctul de vedere lexical, astfel ca se aplica regula sintactica de compunere prin adunare in cadrul restrans al variabilelor intregi.

In expresia putin schimbata:

I := J + K I: integer; X, Y:real

variabilele sunt diferite punct de vedere lexical, astfel ca se aplica regulile gramaticale de conversie, prin care se specifica operatia de transformare a tipului intreg la tipul real.

Unitatea lexicala este token-ul. Token-urile sunt formatiuni de simboluri dispuse in siruri delimitate precis. Token-urile sunt caramizile cu care se construiesc asertiunile intr-un limbaj. Ele pot fi cuvinte rezervate, nume de variabile, operatori aritmetici sau logici.

Preview document

Compilatoare - Pagina 1
Compilatoare - Pagina 2
Compilatoare - Pagina 3
Compilatoare - Pagina 4
Compilatoare - Pagina 5
Compilatoare - Pagina 6
Compilatoare - Pagina 7
Compilatoare - Pagina 8
Compilatoare - Pagina 9
Compilatoare - Pagina 10
Compilatoare - Pagina 11
Compilatoare - Pagina 12

Conținut arhivă zip

  • Compilatoare.DOC

Alții au mai descărcat și

Limbaje Formale și Translatoare

1. Introducere Curs1 LFT Limbajele de nivel înalt au o serie de avantaje în raport cu limbajele de asamblare. Pentru a putea însă folosi limbaje...

Programare HTML și XML

CAPITOLUL I NOTIUNI GENERALE [13, 28, 78, 77] 1.1 INTERNET Internet-ul, sau reteaua mondială de calculatotore, reprezintă un puternic instrument...

Inginerie Software

Fazele dezvoltării unui produs software 1 Ce este ingineria programării? 2. Fazele ingineriei programării 2.1. Faza de analiză 2.2. Faza de...

Limbaje de Asamblare

Introducere. Necesitatea programării în limbaje de asamblare Modalităţile de programare s-au schimbat imens de la inventarea calculatorului, în...

Proiectarea unei interfețe pentru comanda unui motor de curent continuu folosind un microcontroler

Microcontrolerele Siemens SAB 80C166 Caracteristici Firma Siemens a dezvoltat propria linie de microcontrolere. Aceasta cuprinde microcontrolere...

Algoritmi

ETAPELE REZOLVARII UNEI PROBLEME ALGORITMUL – reprezintă o succesiune finită şi ordonată de operaţii univoc determinate, efectuate mecanic, care...

Software de Sistem

Cap.1 - INTRODUCERE 1.1 DEFINIŢII Propoziţia simplă este o aserţiune, o afirmaţie, exprimată minimal printr-o acţiune concretă, un predicat,...

Asambloare

2.1. FUNCŢIILE UNUI ASAMBLOR Pentru a rezolva o problemă care nu este rezolvată de programele curente, un dezvoltator de aplicaţii care a ajuns la...

Te-ar putea interesa și

Aplicație web de licitații online

Cuvant Inainte Aplicatiile distribuite sînt de o buna perioada de timp o prezenta uzuala în peisajul IT chiar si din tara noastra. Ultimii ani au...

Securitatea Informațiilor la Dispozitive Mobile

INTRODUCERE În ziua de azi, a fi informat reprezintă o caracteristică a celor care ies învingători în orice domeniu. Informaţiile sunt foarte...

Proiect - Record MidLet

Introducere în Java ME Telefoanele mobile sunt mai numeroase decât calculatoarele ca metodă de conectare la internet, iar trendul va continua. Cu...

Compilatoare

Grace Murray Hooper a fost o figură importantă în domeniul informaticii. Aceasta a fost un ofiţer în marina militară a Statelor Unite ale Americii...

Limbaje formale și proiectarea compilatoarelor

Scopul lucrării: 1.Pentru gramatica formală G=(VN, VT, P, S) construiţi 5 şiruri care aparţin limbajului L(G) generat de această gramatică....

Audit Financiar

Test iniţial În vederea evaluării iniţiale a demersului formativ în Audit financiar, vă rugăm să completaţi această pretestare, răspunzând sincer...

Programare II - limbajul C

Cap 1 INTRODUCERE ÎN LIMBAJUL C 1.1 Scurt istoric 1.2 Forma unui program C 1.3 Compilarea unui program C 1.1 Scurt istoric Strămoşii...

Tehnici de Compilare

În acest capitol vom vedea ce este un compilator si vom descrie pe scurt fazele si componentele unui compilator. Spus simplu, un compilator este...

Ai nevoie de altceva?