Uvod u programiranje
Osnove digitalnih računala i brojevnih sustava.
Digitalna računala
Sastavni dijelovi digitalnog računala su prikazani na slici 1.1. Centralna procesorska jedinica (CPU) kontrolira izvršenje programa i aritmetičko logičkih operacija. CPU je izveden kao jedinstven integrirani elektronički sklop (čip) i naziva se mikropreocesor. Često se koristi naziv procesor, bilo da se radi o mikroprocesoru ili o skupini čipova koji obavljaju funkcije CPU. Procesor izvršava programski kod te je stoga uobičajeno programe koji se izvršavaju u računalu nazivati procesima. Prema tome, proces predstavlja program u izvršenju.
Slika 1.1. Pojednostavljeni prikaz digitalnog računala
Radna memorija pamti digitalne informacije za vrijeme dok je računalo u operativnom stanju. U memoriji se nalazi programski kod i podaci s kojima operira procesor na temelju naredbi koje su sadržane u programskom kodu. Memorija je napravljena od poluvodičkih elemenata u koje procesor može upisati i iz kojih može očitati stanje digitalne informacije i naziva se RAM (Random Access Memory). S gledišta programera RAM predstavlja linearno uređen prostor u kojem se istovremeno može pristupiti grupi od 8 bita (1 Byte) digitalne informacije. Položaj ove temeljne memorijske ćelije se označava prirodnim brojem i predstavlja adresu memorijske lokacije. Također jedan manji dio memorije je napravljen od poluvodičkih elemenata koji mogu trajno pamtiti digitalnu informaciju i naziva se ROM (Read Only Memory). U ROM-u je upisan program koji služi za pokretanje osnovnih funkcija računala. U samom procesoru je ugrađeno nekoliko manjih memorijskih jedinica koje se nazivaju registri. Registri služe za privremeni smještaj programskog koda i podataka iz radne memorije, te rezultata aritmetičko-logičkih operacija koje se izvršavaju u samo procesoru. Broj bita koji može biti pohranjen u jednom registru naziva se riječ (word) procesora. Kod današnjih PC računala riječ procesora sadrži 32 bita (4 bajta) ili 64 bita (8 bajtova), pa se kaže da su to 32-bitna ili 64-bitna računala.
Vanjska memorija služi za trajno pohranjivanje podataka, a za pohranu se koriste magnetski, optički i elektronički mediji (tvrdi diskovi, optički diskovi, flash memorije ...).
Ulazne jedinice služe za unos podataka (tipkovnica, miš, mikrofon, skener...).
Izlazne jedinice služe za prikaz informacija korisniku računala (monitori, pisači, zvučnici ...).
Računalo u radnom stanju održava poseban program koji se naziva operacijski sustav (operation system). Ovaj program obavlja osnovne funkcije računala: inicijalizaciju računala i priključenih vanjskih jedinica pri uključenju samog računala (paljenju), kontrolu i redosljed izvođenja programa, kontrolu uporabe memorije, prijem, pohranjivanje i obradu podataka, vremesku raspodjelu funkcija računala, itd. Operacijski sustav nije nužno jedinstven program, već se sastoji od više programskih cjelina. On se jednim dijelom trajno nalazi u ROM memoriji računala, te se programi s ovakvim svojstvom nazivaju rezidentni programi. Svi ostali programi se prije izvršenja moraju upisati u memoriju računala. Podjela softvera se može izvršiti na sistemski i aplikativni. U sistemski softver spadaju programi operacijskog sustava, razni jezični procesori (interpreteri, kompajleri, emulatori ...), programi za testiranje programa (debugger), servisni i uslužni programi, te razni pomoćni programi (matematički, statistički, baze podataka i uređivači teksta ...). Aplikativni softver predstavljaju različiti korisnički programi (programi za pristup i obradu podataka iz različitih baza, programi za određeni hardver i sl.). Programi koji studenti obrađuju u sklopu ovog kolegija spadaju u aplikativni softver.