Običajno je algoritem zapisan kot seznam korakov, ki nas pripeljejo do rešitve problema. Kako podrobno razdelamo korake, je odvisno od tega, kdo izvaja algoritem (človek, računalnik). Če algoritem izvaja računalnik, potem govorimo o računalniškem programu.
Računalniški program (ali samo program) je zaporedje ukazov v strojni kodi, to je oblika, ki jo lahko računalnik oziroma procesor izvede. Strojna koda programov je vedno specializirana za izvajanje na določeni arhitekturi, ki je skupek lastnosti strojne in programske opreme. Strojna koda, ki jo programi vsebujejo, izvaja ukaze preko operacijskega sistema, ki deluje kot vmesnik med strojno in programsko opremo.
Z uporabo različnih prevajalnikov lahko program v enem od programskih jezikov prevedemo v strojno kodo namenjeno različnim arhitekturam. |
Izvršljive programske datoteke v okolju Microsoft Windows imajo končnico .EXE, ali pa .DLL, Pri operacijskem sistemu LINUX izvršljive datoteke nimajo karakteristične končnice, pač pa je to razvidno iz lastnosti oziroma dovoljenj datotek.
Računalniško programiranje je dejavnost, katere cilj je ustvarjanje novih računalniških programov ali njihovih sestavnih delov na temelju določenih pravil. Računalniški programi so napisani v izvorni kodi določenega programskega jezika, pri delu pa si programer lahko pomaga z ustreznimi razvojnimi orodji zanj. Snovanje programov vsebuje elemente znanosti, umetnosti, matematike in tehnike.
Programski jezik je skupek pravil, podatkovnih struktur in programerskih vmesnikov, ki programerju služijo kot orodje za izdelavo programa. Programski jeziki se uporabljajo zato, ker sta človekova in računalnikova »govorica« tako različni, da je pisati programje v jeziku računalnika (strojni kodi) nepregledno in nasploh mukotrpno. Programski jezik se delijo na nizkonivojske, ti so bližje strojnemu jeziku, visokonivojski pa so bližje naravnim jezikom. Java je na primer visokonivojski jezik. Isto velja za Python. Razlika med njima je predvsem v tem, da moramo programe v jeziku Java pred izvajanjem prevesti, Python pa sodi med takoimenovane skriptne jezike, ki potrebujejo za svoje izvajanje interpreter oziroma tolmač.
V družino skriptnih jezikov sodi tudi JavaScript, ki je danes (skupaj z raznimi knjižnicami) popularen pri programiranju spletnih aplikacij. |
Primer programa v jeziku Java |
Primer programa v jeziku Python |
import java.util.Scanner; |
xString= input('Vnesi prvo število:
') vsota = x + y; print('Vsota ', x, ' + ', y, ' = ', vsota );
|
Izpis na zaslonu: Vnesi dve stevili, da jih sestejem 22 33 Vsota obeh stevil = 55 |
Izpis na zaslonu: |
Da, da, programi v Pythonu so večinoma krajši
Na drugi strani pa je zbirni jezik (zbirnik), ki je najbliže strojnemu jeziku. Ta je večinoma izredno težko razumljiv človeku in je potrebno veliko učenja, de se ga navadi. Navadno je to skupek številk in črk (črke so le interpretacija številk). Edini razlog za njegovo uporabo, je (bila) njegova možnost, da z njim procesor uporabimo optimalno. |
Primer programa v zbirnem jeziku:
|
Program v zbirnem jeziku je vezan na določen tip procesorja oziroma njegovih strojnih ukazov. Tudi v našem primeru imamo seštevanje dveh števil. Program je precej daljši od programov v višjih programskih jezikih. In zelo nepregleden. Še posebno brez komentarjev.
Zbirni jezik je le en nivo nad strojnim jezikom. Za ukaze uporablja kratke mnemonike in programerju omogoča uporabo imen za dele pomnilnika. Podobno kot sam strojni jezik zahteva zbirni jezik podrobno poznavanje zgradbe računalnika. Uporaben je predvsem za programiranje interakcije računalnika s perifernimi napravami (tiskalniki, skenerji, diski ipd). |