e-gradiva     Sistemi Motorola Omrežja      
  logotip  
SERŠ Maribor    

NARAVA RAčUNANJA IN RAčUNALNIKOV

Kaj je računanje in kakšni naj zato bodo stroji, ki znajo računati. To vprašanje je očitno ključnega pomena, čeprav o njem največkrat ne razmišljamo. Večina ljudi je intuitivno prepričanih, da vedo kaj računanje je. Za večino tudi velja, da bi se znašli v težavah, če bi morali pojem računanja natančneje razložiti; vendar zaradi tega v vsakdanjem življenju praktično nikoli nimamo težav. Stvari pa postanejo drugačne, če pričnemo razmišljati o gradnji strojev, ki bi bili sposobni izračunati vse, kar se izračunati da.

Zgodovinski pogled

Za opravljanje dela, ki mu pravimo računanje, so ljudje večji del svoje zgodovine uporabljali predvsem lastne možgane. V skladu z današnjim načinom govorjenja bi torej lahko rekli, da so bili ljudje sami svoj računalnik. čeprav so se že zgodaj pojavili razni računski pripomočki kot sta npr. abak ali logaritmično računalo, so ti le poenostavili ročno računanje, niso pa ga nadomestili. Ko sta obseg in zapletenost računanja naraščala, sta postali očitni dve resni pomanjkljivosti ročnega računanja.

  1. Hitrost, s katero računajo ljudje, je omejena. Za preproste operacije, kot sta seštevanje ali množenje, trajajo nekaj sekund ali minut. Problemi z nekaj milijardami takih operacij, ki so vsakdanja stvar na današnjih računalnikih, ročno sploh niso rešljivi v nekem pametnem času.
  2. Ljudje so nagnjeni k napakam tako, da so zapleteni ročni izračuni v splošnem nezanesljivi, če ne uporabimo zahtevnih varnostnih ukrepov za odstranjevanje napak. Ker so stroji neobčutljivi za običajne vzroke človeških napak (nepazljivost, utrujenost, itd.), so njihovi rezultati z veliko verjetnostjo brez napak.

Gledano s praktičnega stališča sta opisani pomanjkljivosti več kot zadosten motiv za razvoj strojev, ki bi nadomestili ročno računanje. Problem računanja pa je zelo zanimiv tudi s teoretičnega stališča. Že samo razmišljanje o strojih za računanje odpira vprašanje o obstoju računskih strojev, ki bi bili sposobni sami izračunati vse, kar se sploh da izračunati. če želimo odgovoriti na to vprašanje, moramo seveda vedeti (in biti sposobni dobro definirati) kaj pomeni, če rečemo, da se neka stvar da izračunati. Odgovor na to še malo ni preprost in potrebno je bilo veliko dela množice matematikov, da smo prišli do danes veljavnih odgovorov.

Lahko bi rekli, da imamo na eni strani opraviti z vprašanjem, kako narediti in uporabiti stroj, ki bo kar najhitreje in najbolj zanesljivo rešil vrsto problemov. Na drugi strani se zastavlja vprašanje kakšen naj bi sploh bil stroj, ki bi bil sposoben rešiti vse probleme. Prvo vprašanje je bolj, čeprav ne povsem, tehnične narave, drugo pa bolj matematične ali celo filozofske narave. Kot bomo videli v nadaljevanju, smo danes bolj ali manj gotovi, da odgovor na drugo vprašanje poznamo.

Ročno računanje in računalnik

ročno računaje

Slika: Osnovni elementi ročnega računanja.

Analizirajmo dogajanja pri ročnem računanju, pri katerem se uporabljata svinčnik in papir. Osnovni namen papirja je shranjevanje informacije. Informacija na papirju lahko vsebuje navodila za računanje, oziroma drugače povedano ukaze, ki jih je potrebno izvršiti pri računanju, kot tudi števila, ki se uporabljajo. Prvemu bi danes rekli algoritem ali program, drugemu pa podatki. Med računanjem so vmesni rezultati in nazadnje končni rezultat zapišejo na papir. Računanje samo poteka v možganih, ki bi jih v skladu z današnjo terminologijo lahko imenovali procesor.

če premislimo, kaj delajo možgani pri računanju, ni težko priti do zaključka, da lahko razlikujemo naslednji dve funkciji:

  1. Kontrolno funkcijo, ki prevzema in analizira ukaze ter skrbi, da se izvršujejo v pravilnem vrstnem redu.
  2. Izvršilno funkcijo, ki opravlja z ukazi zahtevane operacije kot so seštevanje, odštevanje, množenje in deljenje. Izvršilni funkciji možgamov lahko pomagajo razni računski pripomočki, kot je danes npr. elektronski kalkulator.

Zgradba s slike je osupljivo podobna zgradbi današnjih računalnikov, ki jo prikazuje naslednja slika. Tu predpostavljamo, da bralec vsaj približno pozna osnove njihovega delovanja.

Glavni pomnilnik računalnika ustreza papirju, ki ga uporablja človek pri ročnem računanju. Centralna procesna enota ustreza možganom in v njej kontrolna enota kontrolni funkciji možganov, aritmetično-logična enota pa izvršilni funkciji možganov. Edina razlika je pravzaprav v škatli z označbo vhod/izhod. Osnovna funkcija vhoda/izhoda je pretvorba informacije iz strojnega jezika, v katerem dela računalnik, v človeški jezik. Ker ljudje uporabljajo naravne jezike s širokim naborom simbolov in običajno števila v desetiški obliki, računalniki pa umetne strojne jezike z običajno binarno predstavitvijo števil, je pretvorba informacije nujno potrebna.

ročno računaje

Slika : Zgradba tipičnega današnjega računalnika.

Ugotovimo lahko, da imamo tako pri ročnem računanju, ki ga opravlja človek, kot pri strojnem računanju, ki ga opravlja računalnik, naslednje elemente:

  1. Procesor, ki zna izvrševati ukaze.
  2. Pomnilnik, ki hrani ukaze in podatke.
  3. Pot, po kateri se prenaša informacija med procesorjem in pomnilnikom.

Videti je, kot da so bili današnji računalniki razviti po vzoru na ročno računanje. Tu se takoj zastavlja vprašanje ali je to tudi edina in najboljša rešitev. Drugače povedano, ali bi bilo z drugačno zasnovo mogoče doseči enake ali celo boljše rezultate, oziroma ali z obstoječo rešitvijo sploh lahko vse izračunamo. Odgovor na to vprašanje je ključnega pomena za računalniško znanost. Pomislimo samo kaj bi se zgodilo, če bi nenadoma prišlo do odkritja bistveno drugačno zasnovanih računalnikov, na katerih bi lahko reševali tudi danes nerešljive probleme. Kot bomo videli v nadaljevanju, obstajajo dobri razlogi, da danes v to možnost ne verjamemo preveč.

SERŠ Maribor, Strokovna gimnazija, leto: 2004/05, avtor: Neven Šrok