Acasă / Recenzii / Limbajul de programare pentru computer. Programarea de jocuri arcade și predarea informaticii. Limbaje de programare la nivel înalt: listă

Limbajul de programare pentru computer. Programarea de jocuri arcade și predarea informaticii. Limbaje de programare la nivel înalt: listă

1. Introducere

Introducerea computerelor în toate sferele activității umane necesită specialiști de diverse profiluri care să stăpânească abilitățile de utilizare a tehnologiei informatice. Este în creștere nivelul de pregătire al studenților universitari, care din primul an sunt introduși în utilizarea computerelor și a metodelor numerice simple, ca să nu mai vorbim de faptul că la finalizarea cursurilor și a proiectelor de diplomă, utilizarea tehnologiei informatice devine norma în marea majoritate a universităților.

Tehnologia calculatoarelor este acum folosită nu numai în calculele inginerești și științele economice, ci și în specialități tradiționale non-matematice precum medicina, lingvistica și psihologia. În acest sens, se poate afirma că utilizarea computerelor a devenit larg răspândită. A apărut o mare categorie de specialiști - utilizatori de computere care au nevoie de cunoștințe privind utilizarea computerelor în industria lor - abilități de lucru cu software-ul existent, precum și de a crea propriul software adaptat pentru a rezolva o problemă specifică. Și aici descrierile limbajelor de programare vin în ajutorul utilizatorului.

2. Ce este un limbaj de programare

Limbajul de programare- un sistem formal de semne conceput pentru a descrie algoritmi într-o formă convenabilă pentru executant (de exemplu, un computer). Un limbaj de programare definește un set de reguli lexicale, sintactice și semantice utilizate pentru alcătuirea unui program de calculator. Acesta permite programatorului să determine exact la ce evenimente va reacționa computerul, cum vor fi stocate și transmise datele și ce acțiuni ar trebui efectuate asupra acestora în diferite circumstanțe.

De la crearea primelor mașini programabile, omenirea a venit deja cu mai mult de două mii și jumătate de limbaje de programare. În fiecare an numărul lor este completat cu altele noi. Unele limbi sunt folosite doar de un număr mic de dezvoltatori, în timp ce altele devin cunoscute de milioane de oameni. Programatorii profesioniști folosesc uneori mai mult de o duzină de limbaje de programare diferite în munca lor.

Creatorii de limbaj interpretează conceptul diferit limbaj de programare. Printre punctele comune recunoscute de majoritatea dezvoltatorilor se numără următoarele:

· Funcţie: un limbaj de programare conceput pentru a scrie programe de calculator, care sunt utilizate pentru a transmite instrucțiuni către computer pentru a efectua un anumit proces de calcul și pentru a organiza controlul dispozitive separate.

· Sarcină: Un limbaj de programare diferă de limbajele naturale prin faptul că este conceput pentru a transmite comenzi și date de la o persoană la un computer, în timp ce limbajele naturale sunt folosite numai pentru ca oamenii să comunice între ei. În principiu, putem generaliza definiția „limbajelor de programare” - aceasta este o modalitate de transmitere a comenzilor, comenzilor, îndrumări clare pentru acțiune; întrucât limbile umane servesc și la schimbul de informații.

· Execuţie: Un limbaj de programare poate folosi constructe speciale pentru a defini și manipula structurile de date și pentru a controla procesul de calcul.

3. Etape ale rezolvării unei probleme pe calculator.

VT și-a găsit cea mai eficientă utilizare atunci când efectuează calcule intensive în muncă în cercetarea științifică și calculele de inginerie. Atunci când rezolvați o problemă pe un computer, rolul principal îi revine în continuare persoanei. Mașina își îndeplinește sarcinile numai conform programului dezvoltat. Rolul omului și al mașinii este ușor de înțeles dacă procesul de rezolvare a unei probleme este împărțit în etapele enumerate mai jos.

Enunțarea problemei. Această etapă constă într-o formulare semnificativă (fizică) a problemei și determinarea soluțiilor finale.

Constructii model matematic. Modelul trebuie să descrie corect (adecvat) legile de bază ale procesului fizic. Construirea sau selectarea unui model matematic dintre cele existente necesită o înțelegere profundă a problemei și cunoașterea ramurilor relevante ale matematicii.

Dezvoltarea Cupei Mondiale. Deoarece un computer poate efectua doar cele mai simple operații, „nu înțelege” formularea problemei, chiar și într-o formulare matematică. Pentru a o rezolva, trebuie găsită o metodă numerică care să facă posibilă reducerea problemei la un algoritm de calcul. În fiecare caz specific, este necesar să selectați o soluție adecvată dintre cele standard deja dezvoltate.

Dezvoltarea algoritmului. Procesul de rezolvare a unei probleme (proces de calcul) este scris ca o succesiune de operații aritmetice și logice elementare care conduc la rezultatul final și se numește algoritm de rezolvare a problemelor.

Programare. Algoritmul pentru rezolvarea unei probleme este scris într-un limbaj ușor de înțeles de mașină sub forma unei secvențe precis definite de operații - un program. Procesul se desfășoară de obicei folosind un limbaj intermediar, iar traducerea acestuia este efectuată de mașina în sine și de sistemul său.

Ajustarea programului. Programul compilat conține diverse tipuri de erori, inexactități și erori de scris. Depanarea include monitorizarea programului, diagnosticarea (căutarea și determinarea conținutului) erorilor și eliminarea acestora. Programul este testat prin rezolvarea problemelor de control (test) pentru a câștiga încredere în fiabilitatea rezultatelor.

Efectuarea calculelor.În această etapă, datele inițiale pentru calcule sunt pregătite și calculele sunt efectuate folosind un program bine stabilit. În același timp, pentru a reduce munca manuală în prelucrarea rezultatelor, pot fi utilizate pe scară largă forme convenabile de eliberare a rezultatelor sub formă de text și informații grafice, într-o formă pe înțelesul oamenilor.

Analiza rezultatelor. Rezultatele calculului sunt atent analizate, iar documentația științifică și tehnică este întocmită.

4. Pentru ce sunt limbajele de programare?

Procesul de funcționare a computerului constă în executarea unui program, adică a unui set de comenzi foarte specifice într-o ordine foarte specifică. Forma de mașină a instrucțiunii, constând din zerouri și unu, indică exact ce acțiune ar trebui să efectueze procesorul central. Aceasta înseamnă că, pentru a oferi computerului o secvență de acțiuni pe care trebuie să le efectueze, trebuie să specificați o secvență de coduri binare pentru comenzile corespunzătoare. Programele de cod de mașină constau din mii de instrucțiuni. Scrierea unor astfel de programe este o sarcină dificilă și plictisitoare. Programatorul trebuie să-și amintească combinația de zerouri și unu din codul binar al fiecărui program, precum și codurile binare ale adreselor de date utilizate în execuția acestuia. Este mult mai ușor să scrieți un program într-o limbă care este mai apropiată de limbajul uman natural și să încredințați unui computer munca de traducere a acestui program în coduri de mașină. Așa au apărut limbaje concepute special pentru scrierea programelor - limbaje de programare.

Există multe limbaje de programare diferite disponibile. De fapt, puteți folosi oricare dintre ele pentru a rezolva majoritatea problemelor. Programatorii cu experiență știu ce limbaj este cel mai bine să folosească pentru a rezolva fiecare problemă specifică, deoarece fiecare limbă are propriile sale capacități, orientare către anumite tipuri de probleme și propriul mod de a descrie concepte și obiecte utilizate în rezolvarea problemelor.

Toate numeroasele limbaje de programare pot fi împărțite în două grupuri: limbi de nivel scăzutŞi limbi de nivel înalt.

Limbile de nivel scăzut includ limbaje de asamblare (din engleză toassemble - assemble, assemble). Limbajul de asamblare folosește comenzi simbolice ușor de înțeles și rapid de reținut. În loc de o secvență de coduri binare de comenzi, sunt scrise denumirile lor simbolice, iar în loc de adrese binare ale datelor utilizate la executarea unei comenzi, sunt scrise nume simbolice ale acestor date alese de programator. Limbajul de asamblare este uneori numit cod mnemonic sau cod automat.

Majoritatea programatorilor folosesc limbaje de nivel înalt pentru a scrie programe. La fel ca limbajul uman obișnuit, o astfel de limbă are propriul alfabet - un set de simboluri folosite în limbă. Aceste simboluri sunt folosite pentru a alcătui așa-numitele cuvinte cheie ale limbii. Fiecare dintre cuvintele cheie îndeplinește propria funcție, la fel ca în limba noastră familiară, cuvinte formate din litere ale alfabetului a acestei limbi, poate îndeplini funcții diferite părți vorbire. Cuvintele cheie sunt legate între ele în propoziții conform anumitor reguli sintactice ale limbii. Fiecare propoziție definește o anumită secvență de acțiuni pe care computerul trebuie să le efectueze.

Un limbaj de nivel înalt acționează ca un intermediar între o persoană și un computer, permițând unei persoane să comunice cu un computer într-un mod mai familiar oamenilor. Adesea, un astfel de limbaj ajută la alegerea metodei potrivite pentru rezolvarea unei probleme.

Înainte de a scrie un program într-un limbaj de nivel înalt, programatorul trebuie să scrie algoritm rezolvarea unei probleme, adică un plan de acțiune pas cu pas care trebuie finalizat pentru a rezolva această problemă. Prin urmare, limbile care necesită o compilare preliminară a unui algoritm sunt adesea numite limbaje algoritmice.

Dacă vrei să înveți programarea computerelor și cauți ghid rapid, explicând cum să înveți această artă, acest articol este doar pentru tine.

Aici vă voi oferi sfaturi despre cum să învățați să scrieți singur programe de calculator.

Programarea computerelor este unul dintre cele mai interesante și pline de satisfacții domenii în care să lucrezi. Milioane de linii de cod sunt scrise în fiecare zi, în întreaga lume, rezultând noi aplicații și software. Dacă îți place să gândești analitic și să rezolvi puzzle-uri și probleme de tot felul, programarea este treaba ta. Cheia pentru a învăța programarea este să stăpânești limbaje de programare și să înveți cum să le folosești pentru a rezolva probleme complexe.

Modul standard de a învăța să codificați, să mergeți la facultate și să obțineți o diplomă în informatică. Cu toate acestea, sunt mulți oameni care nu au studiat niciodată în instituții, dar, în ciuda acestui fapt, au abilitățile și talentul pentru gândirea analitică. Am scris acest articol pentru cei dintre voi care nu ați studiat pentru a deveni programator, dar ați descoperit deja frumusețea programării și ar dori să stăpânească această știință. Internetul a creat o cultură de codificare care vă poate ghida prin acest proces. Cu autodisciplină și perseverență, puteți învăța să programați și să scrieți propriul software. Aceasta nu este doar o metodă de a vă exersa mintea, ci și o modalitate excelentă de a câștiga bani vânzând propriul software sau de a găsi un loc de muncă într-o firmă specializată, dacă sunteți cu adevărat bun la asta.

Cum să înveți să programezi?

Informatica este domeniul principal de stăpânit, îți va oferi cunoștințe minime și experiență în programare. Iată câteva recomandări despre cum să devii programator.

Învață limbaje de programare

În primul rând, aveți nevoie de un computer desktop sau laptop care vă permite să citiți și să executați programele. Programarea este capacitatea de a comunica cu configurația hardware a unui computer pentru a efectua diverse sarcini de calcul. Un computer înțelege doar limbajul mașină, scris în 1 și 0 Pentru ca noi, oamenii, să comunicăm cu computerele, au fost create limbaje de programare al căror cod poate fi convertit în formă care poate fi citită de mașini de către compilatori. Există o serie de limbaje de programare care variază în aplicațiile lor. Va trebui să înveți cel puțin o duzină de limbaje de programare majore, care includ C, C++, Java, Perl, Lisp și Python.

Pentru a învăța elementele de bază ale programării, începeți să învățați C sau Python de la început. Folosiți resurse online și cărți de programare pentru a obține elementele de bază. Instalați programe de codare și rulați-le pe computer. Lucrați din exemplele și problemele furnizate în cărți și manuale electronice pentru a vă scrie propriul cod. Una dintre cele mai bune cărți pentru a începe să înveți „C” este „”. O altă carte bună „”.

Obțineți abilitățile „C” și apoi treceți la programarea orientată pe obiecte, posibilă prin C++. Apoi obțineți abilități în Java, Perl și , care sunt utilizate pe scară largă pentru dezvoltarea web. Învață HTML dacă intenționezi să lucrezi în dezvoltarea web. După cum puteți vedea, există o mulțime de materiale de învățat și va dura cel puțin 5 - 6 ani pentru a obține competențe în majoritatea limbilor.

Începeți să scrieți codul

Acest cel mai bun mod exersează ceea ce ai învățat. Scrieți codul, faceți greșeli, învățați, depanați codul. Participați la concursuri de codare online și testați-vă abilitățile de programare. Ia-l software open source, citiți codul și înțelegeți cât de bune sunt scrise programe. Aflați cum maeștrii programatori realizează economii de cod și claritate logică. Cunoaște-ți computerul și hardware-ul principal. Aflați cum funcționează un computer la niveluri de bază cu memorie și procesoare.

Învață să rulezi Linux sau Unix

Nu vă puteți numi programator până nu stăpâniți sistemele de operare Linux și Unix. Instalați distribuția Ubuntu pe computer și familiarizați-vă cu ea. Acest lucru vă va oferi toate instrumentele de programare de care aveți nevoie, împreună cu compilatoare.

Compiler este un program care realizează compilarea (traducerea unui program compilat din codul sursă).

Student - Expert - Programator

Găsiți un mentor bun care vă poate pune pe calea spre a deveni un programator maestru. Ascultă sfaturi și învață din ele.

Citiți regulile de scriere a codului și continuați să vă îmbunătățiți

Continuați să scrieți propriul cod de computer și să vă gândiți cum l-ați putea îmbunătăți. Alăturați-vă mișcării open source și analizați anatomia programe bune. Creează-ți site-ul web și aprofundează-ți constant cunoștințele. Amintiți-vă că întotdeauna există loc de îmbunătățire!

Să nu se facă iluzii că programarea nu este o sarcină ușoară. Va dura cel puțin zece până la cincisprezece ani pentru a ajunge la punctul în care puteți începe să vă numiți un programator cu drepturi depline. Succesul tău în programare este direct proporțional cu dăruirea și perseverența cu care îți urmărești învățarea.

Scopul acestui articol este să vă ofere un impuls în direcția corectă. Sper că acest obiectiv a fost atins într-o oarecare măsură. Eliberează-ți mintea și intră în lumea programării cu distracție!

Programarea este o întreagă știință care vă permite să creați programe de calculator. Include un număr mare de operații și algoritmi diferiți care formează un singur limbaj de programare. Deci, ce este și care sunt diferitele limbaje de programare? Articolul oferă răspunsuri și oferă, de asemenea, o prezentare generală a limbajelor de programare.

Istoria apariției și schimbărilor limbajelor programelor ar trebui studiată împreună cu istoria dezvoltării tehnologie informatică, deoarece aceste concepte sunt direct legate între ele. Fără limbaje de programare, ar fi imposibil să se creeze vreun program pentru ca un computer să funcționeze, ceea ce înseamnă că crearea computerelor ar deveni un exercițiu inutil.

Primul limbaj de mașină a fost inventat în 1941 de Konrad Zuse, care este inventatorul motorului analitic. Puțin mai târziu, în 1943, Howard Aiken a creat mașina Mark 1, capabilă să citească instrucțiuni la nivelul codului mașinii.

În anii 1950, a existat o cerere puternică pentru dezvoltarea de software, iar limbajul mașinii nu putea gestiona cantități mari de cod, așa că a fost creat mod nou comunicarea cu calculatoarele. „Assembler” este primul limbaj mnemonic care înlocuiește instrucțiunile mașinii. De-a lungul anilor, lista limbajelor de programare crește doar, deoarece domeniul de aplicare al tehnologiei informatice devine mai larg.

Clasificarea limbajelor de programare

Pe în acest moment Există peste 300 de limbaje de programare. Fiecare dintre ele are propriile caracteristici și este potrivit pentru o anumită sarcină. Toate limbajele de programare pot fi împărțite în mai multe grupuri:

  • Orientat pe aspect (ideea principală este separarea funcționalității pentru a crește eficiența modulelor software).
  • Structural (bazat pe ideea creării unei structuri ierarhice a blocurilor individuale de program).
  • Logic (bazat pe teoria aparatului logicii matematice și a regulilor de rezoluție).
  • Orientat pe obiecte (în astfel de programare nu mai sunt folosiți algoritmi, ci obiecte care aparțin unei anumite clase).
  • Multi-paradigmă (combină mai multe paradigme, iar programatorul însuși decide ce limbaj să folosească într-un caz dat).
  • Funcțional (elementele principale sunt funcții care își modifică valoarea în funcție de rezultatele calculelor datelor sursă).

Programare pentru începători

Mulți oameni se întreabă ce este programarea? În esență, este o modalitate de a comunica cu un computer. Datorită limbajelor de programare, putem pune înainte diverse dispozitive anumite sarcini, crearea aplicatii speciale sau programe. Când studiezi această știință în stadiul inițial, cel mai important lucru este să alegi limbaje de programare potrivite (interesante pentru tine). O listă pentru începători este prezentată mai jos:

  • Basic a fost inventat în 1964, aparține familiei de limbaje de nivel înalt și este folosit pentru scrierea programelor de aplicație.
  • Python este destul de ușor de învățat datorită sintaxei sale simple și lizibile, dar avantajul este că poate fi folosit pentru a crea atât programe desktop obișnuite, cât și aplicații web.
  • Pascal este una dintre cele mai vechi limbi (1969) creată pentru predarea studenților. Modificarea sa modernă este strict tipificată și structurată, dar Pascal este un limbaj complet logic, care este de înțeles la nivel intuitiv.

Acest lucru nu este lista completa limbaje de programare pentru începători. Există un număr mare de sintaxe care sunt ușor de înțeles și cu siguranță vor fi solicitate în următorii ani. Fiecare are dreptul să aleagă în mod independent direcția care va fi interesantă pentru el.

Începătorii au ocazia să-și accelereze învățarea programării și a bazelor acesteia datorită instrumentelor speciale. Asistentul principal este mediul de dezvoltare integrat pentru programe și aplicații Visual Basic („Visual Basic” este, de asemenea, un limbaj de programare care a moștenit stilul limbajului Basic al anilor 1970).

Nivelurile limbajelor de programare

Toate limbajele formalizate destinate creării, descrierii de programe și algoritmi pentru rezolvarea problemelor pe computere sunt împărțite în două categorii principale: limbaje de programare de nivel scăzut (lista este prezentată mai jos) și de nivel înalt. Să vorbim despre fiecare dintre ele separat.

Limbile de nivel scăzut sunt concepute pentru a crea instrucțiuni de mașină pentru procesoare. Principalul lor avantaj este că folosesc notații mnemonice, adică, în loc de o secvență de zerouri și unu (din sistemul de numere binar), computerul își amintește un cuvânt abreviat semnificativ din limba engleză. Cele mai cunoscute limbaje de nivel scăzut sunt „Assembler” (există mai multe subtipuri ale acestui limbaj, fiecare dintre ele având multe în comun, dar diferă doar printr-un set de directive și macrocomenzi suplimentare), CIL (disponibil în .Net platformă) și JAVA Bytecode.

Limbaje de programare la nivel înalt: listă

Limbile de nivel înalt sunt create pentru confort și eficiență mai mare a aplicațiilor, ele sunt exact opusul limbilor de nivel scăzut. Trăsătura lor distinctivă este prezența constructelor semantice care descriu succint și concis structurile și algoritmii programelor. În limbile de nivel scăzut, descrierea lor în codul mașinii ar fi prea lungă și neclară. Limbile de nivel înalt sunt independente de platformă. În schimb, compilatorii îndeplinesc funcția de traducător: traduc textul programului în instrucțiuni elementare ale mașinii.

Următoarea listă de limbaje de programare: C ("C"), C# ("C-sharp"), "Fortran", "Pascal", Java ("Java") - se numără printre cele mai utilizate sintaxe de nivel înalt. Are următoarele proprietăți: aceste limbaje funcționează cu structuri complexe, acceptă tipuri de date și operațiuni cu informații despre fișiere I/O și au, de asemenea, avantajul de a fi mult mai ușor de lucrat datorită lizibilității și sintaxei ușor de înțeles.

Cele mai utilizate limbaje de programare

În principiu, puteți scrie un program în orice limbă. Întrebarea este: va funcționa eficient și fără eșec? De aceea ar trebui să alegeți cele mai potrivite limbaje de programare pentru a rezolva diverse probleme. Lista după popularitate poate fi descrisă după cum urmează:

  • Limbaje OOP: Java, C++, Python, PHP, VisualBasic și JavaScript;
  • grup de limbaje structurale: Basic, Fortran și Pascal;
  • multi-paradigmă: C#, Delphi, Curry și Scala.

Domeniul de aplicare al programelor și aplicațiilor

Alegerea limbii în care este scris un anumit program depinde în mare măsură de domeniul de aplicare al acestuia. Deci, de exemplu, pentru lucrul cu hardware-ul computerului în sine (drivere de scriere și programe de suport), cea mai bună opțiune ar fi C ("C") sau C++, care sunt incluse în principalele limbaje de programare (vezi lista de mai sus) . Și pentru dezvoltare aplicații mobile, inclusiv jocuri, ar trebui să alegeți Java sau C# („C-sharp”).

Dacă nu v-ați hotărât încă în ce direcție să lucrați, vă recomandăm să începeți să studiați cu C sau C++. Au o sintaxă foarte clară și o împărțire structurală clară în clase și funcții. În plus, cunoscând C sau C++, puteți învăța cu ușurință orice alt limbaj de programare.

Capitolul 2: Ce este un limbaj de calculator?

Video: Ce este un limbaj de calculator?

Care este esența unui limbaj informatic? De ce au nevoie computerele? De ce există atât de multe limbaje informatice în lume?

Așa cum nu trebuie să conduceți o mașină pentru a înțelege cum funcționează un motor, nu trebuie să programați pentru a înțelege răspunsul la aceste întrebări. Dar pentru a vă îmbunătăți cunoștințele despre subiect, trebuie să înțelegeți cum funcționează un computer. O scurtă explicație este oferită aici.

2.1 Scurt istoric al programării

Calculatoarele sunt electronice digitale. Percepția lor asupra datelor este prezența sau absența tensiunii în fire. Absența tensiunii arată ca zero pentru computer, prezența tensiunii arată ca una. De fapt, computerele nu cunosc alte numere, așa că ajunge să fie nevoit să combine 0 și 1 pentru a face numere.

Anterior, comutatoarele speciale erau folosite pentru a încărca unii și zerourile în memoria computerului. Această imagine, deținută de Wikimedia Commons, arată un Altair 8800. Comutatoarele de pe panoul frontal au fost folosite pentru a încărca programul. Luminile au arătat rezultatul. Nu era niciun monitor.

Fiecare set de comutatoare reprezintă un număr. Fiecare număr reprezintă date sau o instrucțiune pe care computerul ar trebui să le facă cu el. Acest sistem, care folosește doar zerouri și unu pentru a reprezenta numere, se numește sistem de numere binar. Acest tip de limbaj de calculator se numește 1GL, sau limbaj de programare de prima generație.

Numerele din sistemul binar sunt cel mai adesea reprezentate în combinații de patru cifre. De exemplu:

1010 0010 0011

O îmbunătățire a comutării de intrare a fost introducerea codurilor hexazecimale. Numerele zecimale folosite în viața de zi cu zi constau din numerele 0-9. Sistemul de numere hexazecimale este format din cifrele 0-9, precum și din caracterele de la A la F pentru a reprezenta un set de patru comutatoare, cu valori posibile de 0-15.

BinarZecimalhexazecimal
0 0 0
1 1 1
10 2 2
11 3 3
100 4 4
101 5 5
110 6 6
111 7 7
1000 8 8
1001 9 9
1010 10 O
1011 11 B
1100 12 C
1101 13 D
1110 14 E
1111 15 F
1 0000 16 10
1 0001 17 11

Următorul videoclip explică puțin mai multe despre cum funcționează sistemul numeric: Video: sisteme zecimal, binar și hexazecimal

Pentru a facilita introducerea programelor, computerele ulterioare au permis introducerea programelor folosind limbajul de asamblare. Fiecare comandă folosea un mnemotec, iar un program numit compilator a transformat mnemonicii în numere reprezentând comenzile. Acest tip de limbaj se numește 2GL sau limba de a doua generație.

Mai jos este o parte a programului în limbaj de asamblare, prin amabilitatea Wikimedia Commons.
Figura 2.2: Exemplu de limbaj de asamblare

Deși aceasta a fost o îmbunătățire, încă nu a fost suficient pentru a face programarea ușoară. Următoarea generație de limbi a oferit abstracții de nivel superior. Primele limbi de generație a treia: (COBOL, FORTRAN și LISP) au fost mult mai ușor de înțeles și programat.

Limbile de a doua și a treia generație au folosit un program numit compilator. Compilatorul preia programul introdus de utilizator (așa-numitul cod sursă) și îl transformă în cod de mașină. Programatorul rulează codul mașinii. Codul sursă original nu rulează.

Dacă un program folosește cod sursă din surse diferite, acestea pot fi legate între ele într-una singură folosind un program numit linker (linker, editor de linkuri, linker). Linker-ul funcționează cu codul de mașină generat de compilator pentru a crea versiunea finală a programului. Această versiune finală este ceea ce rulează utilizatorul. Nu este nevoie de cod sursă pentru aceasta.

Dezavantajul limbajului mașină este că programul va rula doar pe anumite tipuri de computer. Programele compilate pentru computerele Windows, cel mai probabil, nu vor funcționa pe computerele Apple Macintosh și invers.

Deoarece întregul proces de compilare și legare poate fi dificil pentru programatorii începători, unele limbi au început să se folosească interpreți. Aceste programe se uită la codul sursă și îl convertesc în cod de mașină din mers. De asemenea, permite rularea acelorași programe pe computere Windows, Mac și Unix, atâta timp cât fiecare dintre aceste platforme are acces la un interpret.

Dezavantajul utilizării unui interpret este că este mai lent decât limbajul original, mașină.

Figura 2.4: Interpret

  1. Python este un exemplu de limbaj interpretat. Este mai ușor să scrieți în Python decât în ​​C, dar Python este mai lent și necesită un interpret pentru a rula cu succes.
  2. Dați un exemplu de număr din sistemul binar. (Deși numărul „1” poate fi binar, zecimal sau hexazecimal, încercați să veniți cu un exemplu care să arate diferența dintre sistemele numerice.)
  3. Dați un exemplu de număr în sistemul zecimal.
  4. Dați un exemplu de număr în notație hexazecimală.
  5. Convertiți numerele 1, 10, 100, 1000 și 10000 din binar în zecimal.
  6. Ce este un compilator?
  7. Ce este codul sursă?
  8. Ce este limbajul mașinii?
  9. Ce este un limbaj de programare de prima generație?
  10. Ce este un limbaj de programare de a doua generație?
  11. Ce este un limbaj de programare de a treia generație?

Ce este un interpret?

Nu sunteți autentificat. Conectați-vă și urmăriți-vă progresul.

Limbajul de programare Limbajul de programare - un sistem de semne formale conceput pentru înregistrarea programelor de calculator. Un limbaj de programare definește un set de reguli lexicale, sintactice și semantice care definesc aspect

  • Funcţie: programe și acțiuni pe care interpretul (calculatorul) le va efectua sub controlul său.
  • Sarcină: Un limbaj de programare diferă de limbajele naturale prin faptul că este conceput pentru a transmite comenzi și date de la o persoană la un computer, în timp ce limbajele naturale sunt folosite pentru a comunica între oameni. Putem generaliza definiția „limbajelor de programare” - aceasta este o modalitate de transmitere a comenzilor, comenzilor, îndrumări clare pentru acțiune; întrucât limbile umane servesc și la schimbul de informații.
  • Execuţie: Un limbaj de programare poate folosi constructe speciale pentru a defini și manipula structurile de date și pentru a controla procesul de calcul.

Standardizarea limbajelor de programare

Un limbaj de programare poate fi reprezentat ca un set de specificații care îi definesc sintaxa și semantica.

Au fost create standarde internaționale pentru multe limbaje de programare utilizate pe scară largă. Organizațiile speciale actualizează și publică în mod regulat specificațiile și definițiile formale ale limbii corespunzătoare. În cadrul unor astfel de comitete, dezvoltarea și modernizarea limbajelor de programare continuă și problemele de extindere sau susținere a constructelor de limbaj existente și noi sunt rezolvate.

Tipuri de date

Calculatoarele digitale moderne sunt de obicei binare și stochează date în cod binar (deși sunt posibile și implementări în alte sisteme numerice). Aceste date reflectă de obicei informații din lumea reală (nume, conturi bancare, măsurători etc.) reprezentând concepte de nivel înalt.

Sistemul special prin care datele sunt organizate într-un program este tip sistem limbaj de programare; dezvoltarea și studiul sistemelor de tip este cunoscută sub numele de teoria tipurilor. Limbile pot fi clasificate ca sisteme cu tastare staticăși limbi cu tastare dinamică.

Limbile tastate static pot fi subdivizate în continuare în limbi cu declarație obligatorie, unde fiecare declarație de variabilă și funcție are o declarație de tip obligatorie și limbi cu tipuri deduse. Limbile tastate dinamic sunt uneori numite dactilografiat latent.

Structuri de date

Sistemele de tipări în limbaje de nivel înalt permit definirea unor tipuri complexe, compuse, așa-numitele structuri de date. De obicei, tipurile de date structurale sunt formate ca un produs cartezian al tipurilor de bază (atomice) și al tipurilor compozite definite anterior.

Structurile de bază de date (liste, cozi, tabele hash, arbori binari și perechi) sunt adesea reprezentate de constructe sintactice speciale în limbaje de nivel înalt. Astfel de date sunt structurate automat.

Semantica limbajelor de programare

Există mai multe abordări pentru definirea semanticii limbajelor de programare.

Cele mai răspândite varietăți sunt următoarele trei: operaționale, derivaționale (axiomatice) și denotaționale (matematice).

  • Când descrieți semantica în interior operațional abordare, de obicei, execuția constructelor limbajului de programare este interpretată folosind un calculator imaginar (abstract).
  • Derivativ semantica descrie consecințele executării constructelor de limbaj folosind limbajul logicii și specificând pre- și postcondiții.
  • Denotațional Semantica operează cu concepte tipice matematicii - mulțimi, corespondență, precum și judecăți, enunțuri etc.

Paradigma de programare

Un limbaj de programare este construit în conformitate cu unul sau altul model de calcul de bază și paradigmă de programare.

În ciuda faptului că majoritatea limbilor sunt concentrate pe modelul imperativ de calcul, definit de arhitectura computerului von Neumann, există și alte abordări. Putem aminti limbaje cu model de calcul în stiva (Forth, Factor, PostScript etc.), precum și de programare funcțională (Lisp, Haskell etc.) și logică (Prolog) și limbajul REFAL, bazat pe modelul de calcul. introdus de matematicianul sovietic A. Markov Jr.

În prezent, limbajele de programare orientate către probleme, declarative și vizuale sunt, de asemenea, în curs de dezvoltare.

Modalități de implementare a limbilor

Limbajele de programare pot fi implementate fie compilate, fie interpretate.

Un program într-un limbaj compilat, folosind un compilator (un program special), este convertit (compilat) în cod mașină (un set de instrucțiuni) pentru un anumit tip de procesor și apoi asamblat într-un modul executabil, care poate fi lansat pentru execuție ca program separat. Cu alte cuvinte, compilatorul traduce codul sursă al programului dintr-un limbaj de programare de nivel înalt în coduri binare ale instrucțiunilor procesorului.

Dacă programul este scris într-o limbă interpretată, atunci interpretul execută (interpretează) direct textul sursă fără traducere prealabilă. În acest caz, programul rămâne în limba originală și nu poate fi lansat fără un interpret. Procesorul computerului, în acest sens, poate fi numit interpret pentru codul mașinii.

Împărțirea în limbi compilate și interpretate este condiționată. Deci, pentru orice limbaj compilat în mod tradițional, cum ar fi Pascal, puteți scrie un interpret. În plus, majoritatea interpreților „puri” moderni nu execută constructe de limbaj în mod direct, ci le compilează într-o reprezentare intermediară de nivel înalt (de exemplu, cu dereferențierea variabilelor și extinderea macro).

Un compilator poate fi creat pentru orice limbaj interpretat - de exemplu, limbajul Lisp, care este interpretat nativ, poate fi compilat fără restricții. Codul generat în timpul execuției programului poate fi, de asemenea, compilat dinamic în timpul execuției.

În general, programele compilate rulează mai repede și nu necesită programe suplimentare, deoarece au fost deja traduse în limbajul mașinii. În același timp, de fiecare dată când textul programului se modifică, acesta trebuie să fie recompilat, ceea ce încetinește procesul de dezvoltare. În plus, programul compilat poate fi executat doar pe același tip de computer și, de obicei, sub același sistem de operare, pentru care a fost conceput compilatorul. Pentru a crea un executabil pentru un alt tip de mașină, este necesară o nouă compilare.

Limbile interpretate au câteva caracteristici suplimentare specifice (vezi mai sus), în plus, programele din ele pot fi rulate imediat după modificare, ceea ce facilitează dezvoltarea. Un program într-o limbă interpretată poate fi deseori rulat diferite tipuri mașini și sisteme de operare fără efort suplimentar.

Cu toate acestea, programele interpretate rulează considerabil mai lent decât cele compilate și nu pot fi executate fără un program de interpret.

Această abordare, într-un sens, vă permite să utilizați atât avantajele interpreților, cât și ale compilatorilor. De menționat că există limbi care au atât un interpret, cât și un compilator (Forth).

Simboluri folosite

Limbajele de programare moderne sunt concepute pentru a utiliza ASCII, adică accesibilitatea tuturor grafic Caracterele ASCII sunt o condiție necesară și suficientă pentru scrierea oricăror constructe de limbaj. Managerii Caracterele ASCII sunt utilizate într-o măsură limitată: sunt permise doar returul carucior CR, avansul de linie LF și fila orizontală HT (uneori și fila verticală VT și fluxul de pagină FF).

Primele limbi, apărute în era caracterelor pe 6 biți, foloseau un set mai limitat. De exemplu, alfabetul Fortran are 49 de caractere (inclusiv spațiu): A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 = + - * / () . , $ " :

O excepție notabilă este limbajul APL, care folosește o mulțime de caractere speciale.

Utilizarea caracterelor non-ASCII (cum ar fi caracterele KOI8-R sau caracterele Unicode) este dependentă de implementare: uneori sunt permise doar în comentarii și constante de caractere/șir, iar uneori în identificatori. În URSS au existat limbi în care toate cuvintele cheie erau scrise cu litere rusești, dar cele mai populare limbi similare nu a cucerit (excepția este limbajul de programare încorporat 1C:Enterprise).

Extinderea setului de caractere utilizat este constrânsă de faptul că multe proiecte de dezvoltare software sunt internaționale. Ar fi foarte dificil să lucrezi cu coduri în care numele unor variabile sunt scrise cu litere rusești, altele în arabă și altele cu caractere chinezești. În același timp, pentru a lucra cu date text, limbaje de programare de nouă generație (Delphi 2006, Java) acceptă Unicode.

Clasele de limbaj de programare

Vezi de asemenea

Note

Literatură

  • Hal Abelson, Gerald Jay Sussman. Structura și interpretarea programelor de calculator
  • Robert W. Sebesta. Concepte de bază ale limbajelor de programare = Concepte ale limbajelor de programare / Transl. din engleză - a 5-a ed. - M.: Williams, 2001. - 672 p. - 5000 de exemplare.
  • - ISBN 5-8459-0192-8 (rusă), ISBN 0-201-75295-6 (engleză) Wolfenhagen V. E.
  • Construcții ale limbajului de programare. Tehnici de descriere. - M.: Centrul YurInfoR, 2001. - 276 p. - ISBN 5-89158-079-9 Paronjanov V.D.
  • Cum să-ți îmbunătățești mintea. Algoritmi fără programatori - este foarte simplu! - M.: Delo, 2001. - 360 p. - ISBN 5-7749-0211-0 F. Biancuzzi, S. Worden.

Pionierii programării. Dialoguri cu creatorii celor mai populare limbaje de programare. - Sankt Petersburg. : Symbol-Plus, 2010. - 608 p. - ISBN 978-5-93286-170-7

  • Legături
  • Lista de limbi (engleză) - mai mult de 2500 de limbi cu descrieri scurte
  • Istoria limbajelor de calculator (engleză) - istoria limbajelor de programare (din 1954 până în mai 2004) (conține o diagramă actualizată regulat)
  • Exemple (engleză) - exemple de programare în 162 de limbi
  • Popularitatea limbajului de programare (engleză) - studiu al popularității limbajelor de programare pentru 2004
  • Indexul comunității de programare (engleză) - clasament actualizat în mod regulat al popularității limbajelor de programare
  • Computer Language Shootout Benchmarks (engleză) - comparație a limbajelor de programare în funcție de eficiență
  • Limbaje de programare care sunt iubite (engleză) - comparație a limbajelor de programare prin „dragoste” și „ura” pentru ele

Fundația Wikimedia.