Tehnici de Compilare

Curs
8/10 (2 voturi)
Conține 5 fișiere: doc
Pagini : 157 în total
Cuvinte : 39325
Mărime: 335.60KB (arhivat)
Puncte necesare: 0

Extras din curs

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

Spus simplu, un compilator este un program care citeste un alt program scris într-un anumit limbaj, numit limbaj sursa si îl traduce într-un program echivalent în alt limbaj, numit limbaj destinatie (vezi Fig. 1.1.). O parte importanta a procesului de traducere o constituie si atentionarea utilizatorului asupra erorilor din programul sursa.

&1.1. Introducere

Principiile si tehnicile folosite în scrierea unui compilator sunt atît de cuprinzatoare încât multe dintre acestea pot fi folosite cu succes în multe alte cazuri. Scrierea unui compilator necesita cunostinte de programare, arhitectura calculatoarelor, limbaje formale si algoritmica.

Tehnicile utilizate în constructia compilatoarelor pot folosi si în alte domenii cum ar fi: editoare de texte, sisteme de regasire a informatiilor si recunoasterea formelor. De asemenea, limbajele independente de context si definitiile orientate pe sintaxa pot fi folosite pentru a construi minilimbaje ca acelea de tiparire sau de desenare a figurilor. Tehnicile de optimizare a codului au fost folosite în verificarea programelor si în producerea de programe structurate din unele nestructurate.

Un compilator este un program care are ca intrare un program sursa, scris într-un limbaj evoluat, iar ca iesire furnizeaza un program obiect. În timpul traducerii, compilatorul afiseaza mesajele de eroare, putând chiar sa corecteze anumite erori.

Exista mii de limbaje de programare, de la cele traditionale (FORTRAN, PASCAL) pâna la limbaje specializate aparute în diferite domenii ale aplicatiilor calculatoarelor. Cu cât programul sursa este scris într-un limbaj mai evoluat (mai apropiat de limbajul natural), cu atât structura compilatorului este mai complicata.

Limbajul obiect poate avea mai multe acceptiuni: alt limbaj de programare sau un limbaj masina pentru orice calculator între un microprocesor si un supercomputer.

Desi compilatoarele pot fi într-un singur pas, multi-pass, load-and-go (evita trecerea prin faze necesare numai programelor complexe – forma direct executabila) si altele, tehnicile de baza folosite sunt aceleasi.

Compilatoarele single-pass efectueaza o singura trecere asupra programului sursa, pe când cele multi-pass proceseaza de mai multe ori sursa

Primele compilatoare au început sa apara prin anul 1950, experimentarea si implementarea lor fiind facuta independent de grupuri diferite. Primele încercari de compilare au început cu traducerea expresiilor aritmetice în cod masina. În aceasta perioada, compilatoarele erau considerate programe deosebit de dificile. De exemplu, compilatorul FORTRAN (Backus s.a., 1957) a necesitat 18 ani de munca în echipa pentru implementare. De atunci s-au descoperit tehnici pentru rezolvarea principalelor probleme care apar în compilare, tehnici care au facut posibila scrierea unui compilator în cadrul unui proiect studentesc.

Compilatorul se compune din doua parti principale: analiza si sinteza. Partea de analiza realizeaza descompunerea programului sursa în parti constituente si crearea reprezentarii intermediare. Partea de sinteza construieste programul obiect dorit din reprezentarea intermediara.

Preview document

Tehnici de Compilare - Pagina 1
Tehnici de Compilare - Pagina 2
Tehnici de Compilare - Pagina 3
Tehnici de Compilare - Pagina 4
Tehnici de Compilare - Pagina 5
Tehnici de Compilare - Pagina 6
Tehnici de Compilare - Pagina 7
Tehnici de Compilare - Pagina 8
Tehnici de Compilare - Pagina 9
Tehnici de Compilare - Pagina 10
Tehnici de Compilare - Pagina 11
Tehnici de Compilare - Pagina 12
Tehnici de Compilare - Pagina 13
Tehnici de Compilare - Pagina 14
Tehnici de Compilare - Pagina 15
Tehnici de Compilare - Pagina 16
Tehnici de Compilare - Pagina 17
Tehnici de Compilare - Pagina 18
Tehnici de Compilare - Pagina 19
Tehnici de Compilare - Pagina 20
Tehnici de Compilare - Pagina 21
Tehnici de Compilare - Pagina 22
Tehnici de Compilare - Pagina 23
Tehnici de Compilare - Pagina 24
Tehnici de Compilare - Pagina 25
Tehnici de Compilare - Pagina 26
Tehnici de Compilare - Pagina 27
Tehnici de Compilare - Pagina 28
Tehnici de Compilare - Pagina 29
Tehnici de Compilare - Pagina 30
Tehnici de Compilare - Pagina 31
Tehnici de Compilare - Pagina 32
Tehnici de Compilare - Pagina 33
Tehnici de Compilare - Pagina 34
Tehnici de Compilare - Pagina 35
Tehnici de Compilare - Pagina 36
Tehnici de Compilare - Pagina 37
Tehnici de Compilare - Pagina 38
Tehnici de Compilare - Pagina 39
Tehnici de Compilare - Pagina 40
Tehnici de Compilare - Pagina 41
Tehnici de Compilare - Pagina 42
Tehnici de Compilare - Pagina 43
Tehnici de Compilare - Pagina 44
Tehnici de Compilare - Pagina 45
Tehnici de Compilare - Pagina 46
Tehnici de Compilare - Pagina 47
Tehnici de Compilare - Pagina 48
Tehnici de Compilare - Pagina 49
Tehnici de Compilare - Pagina 50
Tehnici de Compilare - Pagina 51
Tehnici de Compilare - Pagina 52
Tehnici de Compilare - Pagina 53
Tehnici de Compilare - Pagina 54
Tehnici de Compilare - Pagina 55
Tehnici de Compilare - Pagina 56
Tehnici de Compilare - Pagina 57
Tehnici de Compilare - Pagina 58
Tehnici de Compilare - Pagina 59
Tehnici de Compilare - Pagina 60
Tehnici de Compilare - Pagina 61
Tehnici de Compilare - Pagina 62
Tehnici de Compilare - Pagina 63
Tehnici de Compilare - Pagina 64
Tehnici de Compilare - Pagina 65
Tehnici de Compilare - Pagina 66
Tehnici de Compilare - Pagina 67
Tehnici de Compilare - Pagina 68
Tehnici de Compilare - Pagina 69
Tehnici de Compilare - Pagina 70
Tehnici de Compilare - Pagina 71
Tehnici de Compilare - Pagina 72
Tehnici de Compilare - Pagina 73
Tehnici de Compilare - Pagina 74
Tehnici de Compilare - Pagina 75
Tehnici de Compilare - Pagina 76
Tehnici de Compilare - Pagina 77
Tehnici de Compilare - Pagina 78
Tehnici de Compilare - Pagina 79
Tehnici de Compilare - Pagina 80
Tehnici de Compilare - Pagina 81
Tehnici de Compilare - Pagina 82
Tehnici de Compilare - Pagina 83
Tehnici de Compilare - Pagina 84
Tehnici de Compilare - Pagina 85
Tehnici de Compilare - Pagina 86
Tehnici de Compilare - Pagina 87
Tehnici de Compilare - Pagina 88
Tehnici de Compilare - Pagina 89
Tehnici de Compilare - Pagina 90
Tehnici de Compilare - Pagina 91
Tehnici de Compilare - Pagina 92
Tehnici de Compilare - Pagina 93
Tehnici de Compilare - Pagina 94
Tehnici de Compilare - Pagina 95
Tehnici de Compilare - Pagina 96
Tehnici de Compilare - Pagina 97
Tehnici de Compilare - Pagina 98
Tehnici de Compilare - Pagina 99
Tehnici de Compilare - Pagina 100
Tehnici de Compilare - Pagina 101
Tehnici de Compilare - Pagina 102
Tehnici de Compilare - Pagina 103
Tehnici de Compilare - Pagina 104
Tehnici de Compilare - Pagina 105
Tehnici de Compilare - Pagina 106
Tehnici de Compilare - Pagina 107
Tehnici de Compilare - Pagina 108
Tehnici de Compilare - Pagina 109
Tehnici de Compilare - Pagina 110
Tehnici de Compilare - Pagina 111
Tehnici de Compilare - Pagina 112
Tehnici de Compilare - Pagina 113
Tehnici de Compilare - Pagina 114
Tehnici de Compilare - Pagina 115
Tehnici de Compilare - Pagina 116
Tehnici de Compilare - Pagina 117
Tehnici de Compilare - Pagina 118
Tehnici de Compilare - Pagina 119
Tehnici de Compilare - Pagina 120
Tehnici de Compilare - Pagina 121
Tehnici de Compilare - Pagina 122
Tehnici de Compilare - Pagina 123
Tehnici de Compilare - Pagina 124
Tehnici de Compilare - Pagina 125
Tehnici de Compilare - Pagina 126
Tehnici de Compilare - Pagina 127
Tehnici de Compilare - Pagina 128
Tehnici de Compilare - Pagina 129
Tehnici de Compilare - Pagina 130
Tehnici de Compilare - Pagina 131
Tehnici de Compilare - Pagina 132
Tehnici de Compilare - Pagina 133
Tehnici de Compilare - Pagina 134
Tehnici de Compilare - Pagina 135
Tehnici de Compilare - Pagina 136
Tehnici de Compilare - Pagina 137
Tehnici de Compilare - Pagina 138
Tehnici de Compilare - Pagina 139
Tehnici de Compilare - Pagina 140
Tehnici de Compilare - Pagina 141
Tehnici de Compilare - Pagina 142
Tehnici de Compilare - Pagina 143
Tehnici de Compilare - Pagina 144
Tehnici de Compilare - Pagina 145
Tehnici de Compilare - Pagina 146
Tehnici de Compilare - Pagina 147

Conținut arhivă zip

  • Tehnici de Compilare
    • cap1
      • Tehnici de Compilare.DOC
    • cap2
      • Cap2var-sem2.doc
    • cap3
      • cap-3-formule-28.doc
    • cap4
      • a-sim2.doc
    • cap5
      • Generare cod.doc

Alții au mai descărcat și

Curs HTML

Internetul a fost descris ca „o colectie larga de retele“ sau ca o „retea de retele“. Desi ambele definitii sînt corecte, nici una nu surprinde...

Visual C++

Dupa cum multi dintre noi cunosc ,atomul este format din particule materiale si anume un nucleu incarcat electric pozitiv si mai multi electroni...

Limbajul SQL

CAPITOLUL 1. TEORIA BAZELOR DE DATE RELATIONALE 1.1. MODELUL RELATIONAL Modelul relational a fost propus de catre IBM si a revolutionat...

Programare în Java Script

Java - Sectiunea 3 Reducerea efectului de palpaire la crearea animatiilor Efectul suparator de palpaire a imaginii in cazul animatiilor, se poate...

Structuri de Date și Algoritmi

Arbori Binari Optimi Despre arbori binari optimi putem vorbi atunci cand, pentru fiecare dintre cheile unui arbore binar ordonat cunoastem...

Curs C++

Limbajele C si C++ sunt limbaje de programare de nivel înalt. Limbajul C a aparut în anii 1970 si a fost creat de Dennis Ritchie în...

Baze de Date

CAPITOLUL I INTRODUCERE IN BAZE DE DATE CURSUL 1 1. Ce este o baza de date? La inceput calculatoarele au fost utilizate numai pentru calcule...

Grafică pe calculator

Computer Graphics Cristian Rusu Office 3-8 cristian.rusu@ucv.cl What will be? It will not be an ENGLISH course! ENGLISH will be an...

Te-ar putea interesa și

Metode de Programare cu Matrice Rare

Introducere Lucrarea cuprinde metode tradiţionale de calcul matriceal care sunt utilizate frecvent în practică, metode reanalizate şi revăzute...

Sisteme Expert pentru Management

1. Sistemele expert si inteligenta artificiala Inteligenta artificiala este un domeniu care retine din ce în ce mai mult atentia economistilor,...

Unix - Sistem de Operare

Istoricul Sistemului de Operare UNIX Unix-ul este un sistem de operare relativ vechi, fiind creat la Bell Laboratories în 1969, unde a fost...

Curs POO

1. INTRODUCERE 1.1. Scurt istoric Multá vreme C a fost limbajul preferat de programatori, ín special de cei care dezvoltau aplicaþii pentru...

Tema 8 - hazarde structurale la procesoarele de tip pipeline - exemple reale și soluții

Pentru a creste performanta procesoarelor a fost dezvoltata tehnica “benzii de asamblare”, numita si pipeline. Majoritatea procesoarelor din zilele...

Audit financiar - răspunsuri grile

Raspunsuri grile 181. Auditul statutar este activitatea realizata de cenzori potrivit dispozitiilor legale, pe baza mandatului acceptat si...

Structura și arhitectura calculatoarelor

Cap. 1. SISTEME PIPELINE Tehnica pipeline reprezintă o metodă de îmbunătătire a performantelor unui procesor sau a unei unităti aritmetice....

Technici Euristice

Automate finite. Rolul lor în modelarea activităţilor din analiza lexicală[1] Un program de recunoastere pentru un limbaj este acel program care...

Ai nevoie de altceva?