| |
Danes obstaja na stotine (neznano število) programskih jezikov. V približno štiristo jezikih (ocena) so napisani razni uporabni programi.
Vse te programske jezike lahko razvrščamo po različnih kriterijih. Znan je naslednji način razvrščanja;
~ strojni jezik
~ zbirni jezik
~ postopkovni jeziki (algoritmični, ukazovalni)
~ nepostopkovni (deklarativni) jeziki
~ objektni (modularni) jeziki
|
 |
| |
Strojni jezik je edini programski jezik, ki ga računalnik neposredno razume. Zato ga ni treba prevajati. Strojni jezik sestavlja ustrezno zaporedje znakov 0 in 1. V strojnem jeziku so bili napisani prvi programi. Danes v strojnem jeziku pišejo redki programerji. Vsaka vrsta procesorjev ima v splošnem drugačen strojni jezik.
|
 |
| |
Ker je strojni jezik zapleten, odvisen od vrste procesorja, nepregleden itd., so začeli nastajati 'višji' programski jeziki. Z razvojem programskih jezikov raste razumljivosti teh jezikov. Vendar so potrebni vedno bolj komplicirani prevajalniki. Prevajalniki ukaze, napisane v nekem programskem jeziku, prevedejo v jezik (strojni), ki ga razume procesor računalnika.
Zbirni jezik ali zbirnik ali assembler je vmesna stopnja med strojnim in višjimi programskimi jeziki. Ustrezno zaporedje znakov za določeno operacijo so nadomestili z ustreznim ukazom: npr. za množenje (ukaz MP), shranjevanje v spomin (ukaz STO), seštevanje itd. Tudi zbirnik ni prenosljiv med različnimi vrstami procesorjev.
|
 |
| |
Postopkovni (algoritmični, ukazovalni) jeziki
Med postopkovne jezike spadajo basic, pascal, C. S temi jeiziki s posredovanjem ukazov računalniku opišemo postopek za rešitev problema. Če je jezik še proceduralen, lahko problem razdelimo na več delnih problemov in jih rešujemo s podprogrami.
|
|
| |
Med nepostopkovne (deklarativne) jezike spadata LISP, PROLOG. Pri teh jezikih je potrebno določiti zveze (relacije) med vhodnimi podatki in rezultati (podajanje baz in relacij). Rezultate dobimo s pomočjo vprašanj (querry). Postopki so vgrajeni v programski jezik in jih ni treba poznati. Ti jeziki so najbližji človeškemu načinu razmišljanja.
|
|
| |
Objektni (modularni) nepostopkovni jeziki
Taka jezika sta tudi C++ in java. V objektnih jezikih so osnovni gradniki objekti (moduli). Na modulih se izvajajo določene operacije. Posamezni objekti zagotavljajo določene operacije. Program je zgrajen iz objektov.
|
|
| |
Programov, ki niso napisani v strojnem jeziku, procesor ne razume.
Poljuben program lahko napišemo s katerimkoli urejevalnikom teksta (na primer Notepad - beležnica, Wordpad itd.). Tako napisan program mora računalnik pred izvajanjem prevesti. Prevajanje programa opravi računalnik s pomočjo posebnega programa - prevajalnika (compiler). Prevajanje programov in izvajenje programov poteka na dva različna načina:
1. Prevajalnik (na primer prevajanlniki za pascal, C, C++) celoten program pred prvim izvajanjem prevede v strojni jezik (končnica .exe ali .com). Tako preveden program lahko kadarkoli poženemo na računalniku. Enkrat prevedenega programa ni treba več prevajati.
2. Programe, napisane v določenih programskih jezikih, računalnik prevaja vsakokrat sproti. Program tolmač (interpreter) prevaja vsak ukaz posebej in procesor ukaze sproti izvaja. Programi tolmači obstajajo za programske jezike Basic, LISP.
3. Programe, ki so napisani v programskem jeziku java, najprej prevedemo s prevajalnikom v vmesno kodo (byte code; datoteka dobi končnico .class).Ta vmesna koda je še neodvisna od procesorja. To vmesno kodo pa tolmač sproti tolmači v strojno kodo v javinem navideznem stroju (Java Virtual Machine). Značilnost takega načina obdelave je počasnejše delo, posebno pri zankah.
|
|