73
Informatika 1 1 Informatika 1 FOI [email protected] Monika Tenšić

Informatika 1.pdf

Embed Size (px)

Citation preview

Informatika 1 1

Informatika 1

FOI [email protected] Monika Tenšić

Informatika 1 2

Table of Contents

I. PODATKOVNO OPISIVANJE REALNIH SUSTAVA .............................................................................................................. 6

KOMUNIKACIJA I KOMUNIKACIJSKI SUSTAV ................................................................................. 6

PODATAK I INFORMACIJA ........................................................................................................................ 6

INFORMACIJSKI SUSTAV ............................................................................................................................ 7

POSLOVNI SUSTAV ........................................................................................................................................ 8

POSLOVNI SUSTAV – SUSTAVSKI PRISTUP ......................................................................... 8

POSLOVNI SUSTAV I NJEGOV IS ............................................................................................. 9

II. RAČUNALO KAO DIO INFORMACIJSKOG SUSTAVA .............................................................................................................. 9

POVIJESNI RAZVITAK RAČUNALNOG SUSTAVA ........................................................................... 9

POJAM DIGITALNE TEHNOLOGIJE .................................................................................................... 10

KODIRANJE U RADU RAČUNALA ........................................................................................................ 10

TOČKE KODIRANJA U RAČUNALU ...................................................................................... 10

BIT, BAJT, STROJNA RIJEČ ........................................................................................................................ 11

PERMUTACIJE I REDUNDANCA U KODU ........................................................................................ 11

PAKIRANI I NEPAKIRANI OBLIK ZAPISA ........................................................................................ 12

PROVJERA PARITETA ................................................................................................................................. 12

III. BROJEVNI SUSTAVI ......................................................................................... 13

BROJEVNI SUSTAVI – PRETVARANJA ................................................................................................. 15

BROJEVNI SUSTAVI – RAČUNSKE OPERACIJE ............................................................................... 16

Zbrajanje binarnih brojeva ................................................................................................................ 16

Oduzimanje binarnih brojeva ........................................................................................................... 16

IV. ZAPISIVANJE PODATAKA U PROCESORU .................................................. 17

ARITMETIKA KLIZNOG ZAREZA ......................................................................................................... 18

V. OSNOVNI ELEMENTI RAČUNALNOG SUSTAVA ............................................................................................................. 19

ŠKOLSKO RAČUNALO ............................................................................................................................... 19

PROCESOR ....................................................................................................................................................... 20

PROCESOR – građa ......................................................................................................................... 21

OSNOVNI LOGIČKI SKLOPOVI ............................................................................................................. 21

Informatika 1 3

SLOŽENI LOGIČKI SKLOPOVI ............................................................................................................... 23

VI. OSNOVNI PRINCIP RADA RAČUNALA ....................................................... 27

VII. NAČINI ORGANIZACIJE MIKROPROCESORA ........................................................................................ 28

VIII. INSTRUKCIJA .................................................................................................... 29

INSTRUKCIJA – način izvođenja ................................................................................................................. 29

IX. ADRESIRANJE MEMORIJE ............................................................................ 30

NEPOSREDNO ADRESIRANJE: ............................................................................................................... 30

DIREKTNO ADRESIRANJE: ...................................................................................................................... 31

INDIREKTNO ADRESIRANJE: ................................................................................................................ 31

RELATIVNO ADRESIRANJE S OBZIROM NA PROGRAMSKO BROJILO: .......................................................................................................................... 32

ADRESIRANJE REGISTARA I POMOĆU REGISTARA: ................................................................... 32

INDEKSIRANO ADRESIRANJE: .............................................................................................................. 33

ADRESIRANJE PO STRANICAMA (STRANIČENJE): ........................................................................ 34

X. VANJSKA MEMORIJA ...................................................................................... 35

VANJSKA MEMORIJA – MAGNETSKA ................................................................................................. 35

VANJSKA MEMORIJA - ČVRSTI DISK .................................................................................... 35

VANJSKA MEMORIJA – DISKETA .......................................................................................... 37

VANJSKA MEMORIJA - MAGNETSKI DISKOVI ................................................................ 37

VANJSKA MEMORIJA – VRPCA................................................................................................ 37

VANJSKA MEMORIJA – OPTIČKA ......................................................................................................... 38

VANJSKA MEMORIJA - CD-ROM ............................................................................................. 39

VANJSKA MEMORIJA - CD-RW ................................................................................................ 40

VANJSKA MEMORIJA - DVD ..................................................................................................... 40

XI. VIRTUALNA MEMORIJA ................................................................................. 41

XII. PROGRAMSKI PREKIDI .................................................................................. 42

XIII. IZLAZNE JEDINICE – MONITOR ................................................................ 43

IZLAZNE JEDINICE - MONITOR – CRT .............................................................................................. 43

IZLAZNE JEDINICE - MONITOR – REZOLUCIJA ............................................................ 44

IZLAZNE JEDINICE - MONITOR – PIKSEL ........................................................................ 45

IZLAZNE JEDINICE - MONITOR – LCD.............................................................................................. 46

XIV. IZLAZNE JEDINICE – PISAČ ......................................................................... 48

Pisači s udarcem ................................................................................................................................................. 48

Informatika 1 4

Matrični pisači ..................................................................................................................................................... 48

Pisači bez udarca ................................................................................................................................................ 49

IZLAZNE JEDINICE – LASERSKI PISAČ.............................................................................................. 49

IZLAZNE JEDINICE – TINTNI PISAČ ................................................................................................... 50

Tintni pisač s termičkom glavom ..................................................................................................... 51

Tintni pisač s piezo-električnom glavom ........................................................................................ 52

XV. ULAZNE JEDINICE – SKENER ..................................................................... 52

ULAZNE JEDINICE - SKENER - PRINCIP RADA ............................................................................. 53

XVI. FONT .................................................................................................................. 54

VRSTE FONTOVA ......................................................................................................................................... 54

XVII. VEKTORSKO-RASTERSKA PRETVORBA (RIP) .................................................................................................................... 55

XVIII. ........................................................................................................................................... ORGANIZACIJA PROCESORSKOG VREMENA .............................................. 55

XIX. TEHNOLOGIJE IZRADE ELEMENATA RAČUNALA ........................................................................................................ 57

XX. ORGANIZACIJA UNUTRAŠNJE MEMORIJE ............................................... 58

Dvodimenzionalna organizacija (2D) .............................................................................................. 58

Trodimenzionalna organizacija (3D) ............................................................................................... 59

Memorija organizirana u stack .......................................................................................................... 60

XXI. VRSTE UNUTRAŠNJIH MEMORIJA .............................................................. 61

ROM memorija ................................................................................................................................... 61

RAM memorija ................................................................................................................................... 61

XXII. UVOD U PROGRAMIRANJE ........................................................................... 63

UVOD ................................................................................................................................................................. 63

PROGRAMSKI JEZIK .................................................................................................................................. 64

Ključne riječi ....................................................................................................................................... 64

Pravila pisanja naredbi (sintaksa) ..................................................................................................... 64

Editor programskog koda ................................................................................................................. 64

Program prevoditelj ........................................................................................................................... 65

GENERACIJE PROGRAMSKIH JEZIKA ............................................................................................... 66

Prva generacija .................................................................................................................................... 66

Druga generacija ................................................................................................................................. 66

Informatika 1 5

Treća generacija .................................................................................................................................. 67

Četvrta generacija ............................................................................................................................... 67

Peta generacija..................................................................................................................................... 68

OSNOVNE PROGRAMSKE STRUKTURE ............................................................................................ 68

Blok dijagram – simboli ..................................................................................................................... 69

Slijed (sekvenca) .................................................................................................................................. 69

METODE PROGRAMIRANJA.................................................................................................................... 72

Informatika 1 6

PODATKOVNO OPISIVANJE REALNIH SUSTAVA

► Komunikacija i komunikacijski sustav - povijest i razvoj

► Pojam podatka i informacije

► Informacijski sustav (IS)

Elementi

Funkcije

► Poslovni sustavi

► Sustavni pristup

► Područja primjene IS-a

► Povezanost informacijskog sustava sa organizacijskim i komunikacijskim (pod)sustavima

KOMUNIKACIJA I KOMUNIKACIJSKI SUSTAV

► SIMPLEX – POLUDUPLEX – (FULL) DUPLEX

Komunikacijski sustav sa SIMPLEX komunikacijom NIJE SUSTAV!

► Komunikacija u vremenu i prostoru

zapisi u pećinama, na kamenim pločama, papirusu, papiru...

► Egipat

simbolika u pismu

papirus

pargamena(ovčja koža)

► Kina

papir – trajniji od papirusa

► Razvoj industrije

tiskarski stroj

glasovno zapisivanje, telegraf

televizija – informacijski šok

informatička tehnologija

PODATAK I INFORMACIJA

► PODATAK = pojam kojim opisujemo i kvantificiramo funkciju objektivne stvarnosti

(elementarno stanje objektivne stvarnosti) u određenom trenutku

► ELEMENT = nedjeljiva cjelina unutar sistema sa bar jednom vezom sa nekim

drugim elementom

► podaci se dovode u neki odnos prema modelu transformacije

► različiti modeli transformacije daju različite konkluzije

► INFORMACIJA = najmanje dva podatka u nekom odnosu, koji predstavljaju novost i koji

nas potiču na neku aktivnost

Informatika 1 7

INFORMACIJSKI SUSTAV

► javlja se u trenutku kad je trebalo iskustvo zapisati na materijalni nositelj podataka

► potrebno je prikupiti podatke o dijelu objektivne stvarnosti koji nas zanima, te dovesti

prikupljene podatke u određeni odnos prema modelu transformacije

► INFORMACIJSKI SUSTAV = podatkovna slika funkcija i procesa iz objektivne stvarnosti

► informacijski sustav prikuplja, obrađuje, distribuira i čuva informacije

► može, ali i ne mora biti podržan računalom

► CILJ IS-a= dostaviti pravu informaciju na pravo mjesto u pravo vrijeme u organizaciji uz

minimalne troškove

► ELEMENTI:

► HARDWARE (HW) - fizičke komponente

► SOFTWARE (SW) - programska rješenja

koja fizičke komponente implementiraju

► LIFEWARE (LW) - ljudi koji rade sa informacijskim

tehnologijama

► ORGWARE (OW) - organizacijski postupci, metode i načini

povezivanja prethodne tri komponente u skladnu cjelinu

► NETWARE (NW) - koncepcija i realizacija komunikacijskog povezivanja svih

elemenata u skladnu cjelinu

► DATAWARE (DW) - ulazni podaci koji opisuju stanje

realnog sustava u određenom trenutku

► FUNKCIJE

► informacijski sustav djeluje unutar nekog poslovnog sustava omogućavajući mu da

komunicira unutar sebe i sa okolinom

► IS-om čovjek/pojedinac formalizira poslovno okružje u podatke, procedure,

algoritme, informacije i znanja te usklađujući primjenu IT-a i programsku podršku,

ispunjava poslovne funkcije i zadatke (dostavljanje i čuvanje podatka neophodnih za

odlučivanje, održanje procesa te neprekidnost poslovanja

► pri tom se IS u velikoj mjeri oslanja na ICT (informacijsko-komunikacijsku

tehnologiju) te njihovom primjenom obrađuje, prenosi, pohranjuje, dohvaća i

objavljuje informacije i podatke kojima se opisuje tijek,stanja i procesi poslovnog

sustava

Informatika 1 8

POSLOVNI SUSTAV

► u poslovni sustav ulaze i izlaze materijalni (materijal, sirovina, energija) i informacijski tokovi

► dvije su temeljne aktivnosti svakog poslovnog sustava:

izvršavanje poslovnih procesa

► kad govorimo o poslovnom procesu, mislimo na osnovnu

djelatnost promatranog poslovnog sustava odnosno

na poslove koji se u njemu obavljaju.

► u proizvodnom poduzeću poslovni proces sastoji

se npr. od poslova proizvodnje, nabave

potrebnih sirovina i energije, plasmana

proizvedenih proizvoda itd.

► u bankama poslovni proces obuhvaća poslove

obavljanja financijskih transakcija, kreditiranja, štednje itd.

upravljanje poslovnim sustavom

► svaki poslovni odnosno realni sustav nastoji izgraditi svoj informacijski

sustav koji će dati podlogu za brzo i kvalitetno odlučivanje, dakle za

transformaciju informacija u odluke

POSLOVNI SUSTAV – SUSTAVSKI PRISTUP

► ukoliko poslovni sustav promatramo kao cjelinu koju ne možemo rastaviti na djelove a da pri

tom ne izgubimo osnovna svojstva tada možemo govoriti o SUSTAVSKOM PRISTUPU

► sustavskim se pristupom istražuju pojave i rješavaju problemi u njihovoj cjelokupnosti i

složenosti, obuhvaćajući sve bitne veze i odnose između dijelova sustava i između sustava i

okoline

► Da bismo opisali neki sustav, potrebno je pobliže odrediti:

koji elementi pripadaju sustavu,

koje veze postoje između elemenata unutar sustava i

između elemenata sustava i okoline i

kakvo je ponašanje (funkcioniranje) sustava

► Realni sustav sačinjen je od elemenata koji su dio konkretnog realnog objekta, koji se opisuje

kao sustav

Informatika 1 9

POSLOVNI SUSTAV I NJEGOV IS

► informacijski sustav je model poslovnog sustava

► MODEL = “apstrakcija”, odnosno pojednostavljena reprezentacija stvarnog sustava

- u modelu promatramo samo one činjenice poslovnog sustava koje nas zanimaju

► informacijski sustav je podsustav poslovnog sustava i sam sebi nije svrha

► da nema poslovnog sustava, informacijski sustav ne bi ni postojao jer ne bi imao što opisivati

► Informacijski sustav preuzima informacije, obrađuje ih i prerađene prezentira poslovnom

sustavu ili okolini.

RAČUNALO KAO DIO INFORMACIJSKOG SUSTAVA

POVIJESNI RAZVITAK RAČUNALNOG SUSTAVA

► S povećanjem razine složenosti obrade traži se i odgovarajući razvoj računalne potpore

► Razvoj obrade sadržaja kroz vrijeme:

► Ručna obrada

► abakus

► Mehanička obrada

► računski strojevi (Pascal, Leibnitz - 17. stoljeće) i pisaći strojevi (18. stoljeće)

► Mehanografska i birotehnička obrada

► elektro-mehanički uređaji (19. stoljeće)

► Elektronička obrada

► prva digitalna računala (Mark 1, ENIAC, UNIVAC – 20.stoljeće)

Proces transformacij

e (temeljna aktivnost

Izlaz Ulaz

POSLOVNI SUSTAV

POVRATNA

INFORMACIJSKI SUSTAV

OKOLINA

Informatika 1 10

POJAM DIGITALNE TEHNOLOGIJE

► Digitalna tehnologija je utemeljena na sklopovima koji mogu poprimiti jedno od dva stanja iz

binarnog brojevnog sustava – 0 ili 1

♦ BISTABILI – elektronički sklopovi s dva stabilna stanja; osnovica su za složenije

digitalne sklopove

♦ POVEZIVANJEM VELIKOG BROJA BISTABILA GRADI SE DIGITALNO

RAČUNALO

► Digitalno računalo razumije samo binarni zapis sadržaja – potreba za pretvorbom čovjeku

čitljivih sadržaja u binarni zapis i obrnuto - KODIRANJE

KODIRANJE U RADU RAČUNALA

► Različite komponente u računalu zahtijevaju određeni format i oblik zapisivanja u binarnom

zapisu

► Koriste se odgovarajući kodovi za svaku vrstu podataka (brojčanih ili tekstualnih)

♦ Brojčani podaci – tzv. tetradni kodovi

► BCD kod

► Aiken kod

► Excess-3 kod

► Gray kod

♦ Tekstualni podaci

► ASCII kod

► EBCDI kod

► UNICODE

TOČKE KODIRANJA U RAČUNALU

► TOČKE KODIRANJA = mjesta u računalnom sustavu na kojima se izvodi kodiranje, tj.

pretvorba podataka iz jednog kodnog oblika u drugi kodni oblik

► Dvije tipične točke kodiranja (ne i jedine!!)

♦ tipkovnica – memorija

♦ memorija – monitor/pisač

Informatika 1 11

BIT, BAJT, STROJNA RIJEČ

► BIT = jedna znamenka u binarnom kodnom zapisu. Predstavlja najmanju jedinicu za zapis

binarnih podataka u računalu.

► RIJEČ = više bitova združenih u veći binarni podatak. Označava cjeloviti podatak i

standardne je duljine za određeno računalo (8 bita, 12 bita, 16 bita, 32 bita, itd.)

► BAJT – strojne riječi moguće je podijeliti na manje cjeline veće od jednog bita, koje se

nazivaju BAJTOVI. Bajt je obično duljine 8 bitova i predstavlja osnovnu jedinicu zapisa s

kojom računalo manipulira

♦ 16-bitna riječ = 2 bajta

♦ 32-bitna riječ = 4 bajta

► Primjer 16-bitne riječi:

PERMUTACIJE I REDUNDANCA U KODU

► Za potrebe kodiranja podataka određenim kodnim sustavom, dotični kodni sustav mora

imati dovoljno veliku "abecedu", tj. mora sadržavati dovoljno velik broj permutacija

elementarnih kodnih simbola (0 i 1)

♦ Npr. abecedu tetradnih kodova čine sve četveroznamenkaste permutacije binarnih 0 i

1

► Kodiranje dekadskih znamenki - kodni sustav mora imati odgovarajuću binarnu kodnu

permutaciju za svaku osnovnu dekadsku znamenku (0 do 9)

♦ Dovoljan je tetradni kod – npr. BCD kod

► Znamenka 0 = kod 0000

► Znamenka 1 = kod 0001

► ...

► Znamenka 9 = kod 1001

► Kodiranje govornog jezika (znakovi pisma – velika i mala slova, znamenke, interpunkcija,

specijalni znakovi, itd.) – barem 80 različitih simbola

Informatika 1 12

♦ Dovoljan broj binarnih permutacija daje tek kod duljine 7 binarnih znamenaka (27 =

128)

♦ Permutacije duljine 8 binarnih znamenaka dovoljne su za kodiranje latiničnog pisma

većine jezika

♦ Ostala pisma (istočnjačka, arapsko, hebrejsko, ...) – potreba za još duljim kodnim

zapisom (16 binarnih znamenaka po simbolu)

♦ ASCII i EBCDI kod (8-bitni kod), UNICODE (16-bitni kod)

► REDUNDANCA = razlika između broja mogućih i broja iskorištenih binarnih riječi

(permutacija) u nekom kodu

► Primjer – redundanca kod tetradnih kodova

♦ Tetradni kod nudi 16 mogućih permutacija (0000 do 1111)

♦ Za kodiranje dekadskih znamenki je potrebno 10 permutacija (npr. od 0000 do 1001)

♦ Iskoristivost tetradnog koda je prema tome 10/16 * 100 = 62,5%

PAKIRANI I NEPAKIRANI OBLIK ZAPISA

► Zapis dekadskih znamenaka u radnom spremniku računala korištenjem tetradnog koda (npr.

BCD koda) je neekonomičan – troši se cijeli bajt (8 bita) za zapis koji zauzima svega 4 bita =

NEPAKIRANI OBLIK ZAPIS.

► Moguće je pohraniti dvije dekadske znamenke u jednom bajtu = PAKIRANI OBLIK

ZAPISA

♦ Gornja 4 bita predstavljaju jednu znamenku, a donja 4 drugu znamenku

PROVJERA PARITETA

► Služi za OTKRIVANJE (ne i za ispravljanje) grešaka nastalih tijekom prijenosa podataka

između različitih jedinica za obradu u računalnom sustavu

Dekadska znamenka

0 0 0 0

Dekadska znamenka Dekadska znamenka

Informatika 1 13

► Koristi se bit parnosti – jedan od bitova u bajtu ili strojnoj riječi rezerviran je za provjeru

pariteta i neiskoristiv je za pohranu stvarnih podataka

► Dvije vrste provjere pariteta

♦ PARNA – svaka prenesena riječ mora sadržavati parni broj jedinica

♦ NEPARNA – svaka prenesena riječ mora sadržavati neparan broj jedinica

► Primjer – s parnom provjerom pariteta, 8-bitna riječ, najznačajniji bit je rezerviran za bit

pariteta

♦ 7 bitova podataka već sadrže parni broj jedinica - u paritetni bit zapisuje se nula

♦ 7 bitova podataka sadrže neparni broj jedinica - u paritetni bit zapisuje se jedinica

BROJEVNI SUSTAVI

► Različiti brojevni sustavi

♦ čovjek se koristi dekadskim brojevnim sustavom - baza 10 i ima 10 osnovnih

znamenki (0,1,2,3,4,5,6,7,8 i 9)

♦ rad računala se bazira na binarnom brojevnom sustavu - baza 2 i ima 2 osnovne

znamenke (0 i 1)

♦ teoretski, brojevni sustav može biti zadan nad bilo kojom bazom N (N je prirodni

broj) i imati N osnovnih znamenki (od 0 do N-1)

► U informatici – oktalni i heksadecimalni brojevni sustavi

♦ oktalni sustav - baza 8 (osnovne znamenke - 0,1,2,3,4,5,6 i 7)

♦ heksadecimalni sustav - baza 16 (osnovne znamenke - 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E i

F)

♦ koriste da bi se pojednostavio (skratio) prikaz binarnih brojeva

Informatika 1 14

► primjer pozicionog zapisa dekadskog broja (npr. broj 607513,4):

6 x 105 + 0 x 104 + 7 x 103 + 5 x 102 + 1 x 101 + 3 x 100 + 4 x 10-1 = 600000 + 0 + 7000 + 500 + 10 + 3 + 0,4 = 607513,4

► primjer pozicionog zapisa binarnog broja (npr. broj 100110,11):

1 x 25 + 0 x 24 + 0 x 23 + 1 x 22 + 1 x 21 + 0 x 20 + 1 x 2-1 + 1 x 2-2 = 32 + 0 + 0 + 4 + 2 + 0,5 + 0,25= 38,75(10) = 100110,11(2)

► primjer pozicionog zapisa oktalnog broja (npr. 741001,2):

7 x 85 + 4 x 84 + 1 x 83 + 0 x 82 + 0 x 81 + 1 x 80 + 2 x 8-1 =163840 + 16384 + 512 + 0 + 0 + 1 + 0,25 = 180737,25(10) = 741001,2(8)

► primjer pozicionog zapisa heksadecimalnog broja (npr. F4B,2) :

F x 162 + 4 x 161 + B x 160 + 2 x 16-1 =15 x 162 + 4 x 161 + 11 x 160 + 2 x 16-1 =3840 + 64 + 11 + 0,125 =3915,125 (10) = F4B,2 (16)

Informatika 1 15

BROJEVNI SUSTAVI – PRETVARANJA

► Pretvorba dekadskog broja u binarni

♦ Tehnikom uzastopnog dijeljenja s 2 (za cjelobrojni dio – npr. broj 10(10))

10(10):2 = 5 -> 0 ostatak --> 1010(2)

5 : 2 = 2 -> 1 ostatak

2 : 2 = 1 -> 0 ostatak

1 : 2 = 0 -> 1 ostatak

♦ Tehnikom uzastopnog množenja s 2 (za decimalni dio – npr. broj 0,625(10))

0,625(10) * 2 = 1,25 -> 1 --> 0,101(2)

0,25 * 2 = 0,5 -> 0

0,5 * 2 = 1 -> 1

► Pretvorba dekadskog broja u oktalni

♦ Tehnikom uzastopnog dijeljenja s 8 (npr. broj 217(10))

217(10):8 = 27 -> 1 ostatak --> 331(8)

27 : 8 = 3 -> 3 ostatak

3 : 8 = 0 -> 3 ostatak

► Pretvorba dekadskog broja u heksadecimalni

♦ Tehnikom uzastopnog dijeljenja s 16 (npr. broj 217(10))

217(10) : 16 = 13 -> 9 ostatak --> D9(16)

13 : 16 = 0 -> 13 (D) ostatak

► Oktalno-binarna pretvorba i obrnuto (trijade) – svaka oktalna znamenka se zamjenjuje s tri

binarne (0 = 000, 1 = 001, 2 = 010, 3 = 011, 4 = 100, 5 = 101, 6 = 110, 7 = 111) i obrnuto

(grupiranje po tri bita s desna na lijevo)

♦ Oktalno u binarno (npr. broj 217(8))

217(8) = 010 001 111(2)

2 1 7

♦ Binarno u oktalno (npr. broj 1010001111(2) )

1 010 001 111(2) = 1217(8)

1 2 1 7

Informatika 1 16

► Heksadecimalno-binarna pretvorba i obrnuto (tetrade) – svaka heksadecimalna znamenka se

zamjenjuje s četiri binarne (0 = 0000, 1 = 0001, 2 = 0010, 3 = 0011, 4 = 0100, 5 = 0101, 6

= 0110, 7 = 0111, 8 = 1000, 9 = 1001, A = 1010, B = 1011, C = 1100, D = 1101, E =

1110, F = 1111) i obrnuto (grupiranje po četiri bita s desna na lijevo)

♦ Heksadecimalno u binarno (npr. broj 2A34(16))

2A34(16) = 0010 1010 0011 0100(2)

2 A 3 4

♦ Binarno u heksadecimalno (npr. broj 10010101000110100 (2) )

1 0010 1010 0011 0100 (2) = 12A34(16)

1 2 A 3 4

BROJEVNI SUSTAVI – RAČUNSKE OPERACIJE

Zbrajanje binarnih brojeva

♦ Tablica stanja:

♦ Primjer

Prijenosi: 111110

10101

+11111

110100

Oduzimanje binarnih brojeva – korištenjem tehnike dvojnog komplementa oduzimanje se

svodi na zbrajanje

► Primjer: Oduzimanje brojeva 11011001(2) i 1010(2) (11011001 – 1010) korištenjem dvojnog

komplementa

1. prvo se umanjitelj (1010(2)) nadopuni vodećim nulama, tako da ima jednak broj

znamenaka kao i umanjenik

♦ 1010(2) -> 00001010(2)

2. Komplementiranje umanjitelja (zamjena nula s jedinicama i obrnuto) – rezultat je

JEDINIČNI komplement umanjitelja

♦ 00001010(2) -> 11110101(2)

3. Jediničnom komplementu umanjitelja pribroji se binarni 1, čime se dobiva DVOJNI

komplement umanjitelja

♦ 11110101(2) + 1(2) = 11110110(2)

Informatika 1 17

4. Zbrajanje umanjenika i dvojnog komplementa umanjitelja

♦ 11011001(2) + 11110110(2) = 111001111(2)

5. Odbacivanje bita preljeva (ako postoji) - konačna razlika zadanih brojeva

♦ U gornjem primjeru razlika ima bit preljeva (‘suvišni’ 9. bit s krajnje lijeve

strane rezultata – konačna razlika ne može imati više bitova od umanjenika ili

umanjitelja). Njegovim odbacivanjem dobiva se konačni rezultat

♦ 1|11001111(2) -> 11001111(2)

ZAPISIVANJE PODATAKA U PROCESORU

► Znakovni sadržaji – kodirani u ASCII, EBCDI ili slični kod

► Brojčani sadržaji

♦ Cjelobrojni – BCD kod ili direktna konverzija broja u binarni zapis (ovisno o veličini

strojne riječi)

♦ Decimalni

► Fiksni zarez - fiksirani broj cjelobrojnih i decimalnih mjesta u binarnom

zapisu broja – npr. 2 decimalna mjesta, 5 decimalnih mjesta, itd.

♦ Prednosti – preciznost zapisa (koristi se kod novčanih iznosa i sl.),

ponekad bolje performanse

♦ Nedostaci – manji opseg brojeva koje je moguće zapisati, ograničen

broj decimalnih i cjelobrojnih pozicija

► Klizni zarez - broj se zapisuje u obliku mantise i eksponenta, čime se uklanja

problem broja decimalnih mjesta koji postoji kod zapisa s fiksnim zarezom -

BROJ = MANTISA * 2EKSPONENT

♦ eksponent pokazuje koliko se brojeva ulijevo ili udesno mora

pomaknuti pozicioni zarez u mantisi da bi se dobila prava vrijednost

broja

► primjer bilježenja broja u pokretnom zarezu uz trostruku preciznost (tj. korištenjem triju

strojnih riječi):

Informatika 1 18

♦ Jedna riječ otpada na eksponent, a ostatak na mantisu (2 riječi kod korištenja

trostruke preciznosti)

ARITMETIKA KLIZNOG ZAREZA

► pretvaranje broja 12,625(10) u binarni zapis u obliku pokretnog zareza uz trostruku preciznost:

1. Pretvaranje cjelobrojnog dijela broja u binarni zapis

♦ 12(10) = 1100(2)

2. Pretvaranje decimalnog dijela broja u binarni zapis

♦ 0,625(10) = 0,101(2)

3. Dekadski broj pretvoren u binarni zapis

♦ 12,625(10) = 1100,101(2)

4. NORMALIZACIJA binarnog broja – pomak zareza u lijevu stranu (pozitivno) ili

desnu (negativno) do oblika 0,1xxxxxx

♦ Normalizirani 1100,101(2) je 0,1100101 * 24 - pozitivan pomak zareza u

lijevu stranu za 4 mjesta

♦ Konačan normalizirani oblik: 1100,101(2) = 0,1100101 * 2100

5. Zapis normaliziranog oblika u tri 8-bitne riječi

♦ Mantisa broja je pozitivna – predznak mantise zadan je bitom 0

♦ Eksponent broja je pozitivan – predznak eksponenta je zadan bitom 0

♦ Zapis broja 0,1100101 * 2100 prema zadanom formatu:

0000 10 00 0110 10 01 0000 00 00

Informatika 1 19

OSNOVNI ELEMENTI RAČUNALNOG SUSTAVA

► Model računala po von Neumannu prevladava u četiri generacije računala

► Sastoji se od 4 osnovne jedinice:

1. Memorijske jedinice

2. Upravljačke jedinice

3. Aritmetičko-logičke jedinice

4. Ulazno-izlazne jedinice

► Jedinice su povezane podatkovnim i upravljačkim tokovima, koji su u računalima fizički

realizirani u obliku sabirnica

ŠKOLSKO RAČUNALO

► Školsko računalo ne proizvodi niti jedan proizvođač računala

► Ono se izučava radi lakšeg usvajanja osnovnih koncepata koji su zajednički za većinu

stvarnih računala

► Detaljno izučavanje konkretne računalne arhitekture moglo bi dovesti do prevelike

koncentracije na njene sitne specifičnosti, a bitni i univerzalniji koncepti mogli bi biti

zanemareni

► Sva daljnja razmatranja odnose se na zamišljeno i pojednostavljeno školsko računalo

utemeljeno na von Neumannovom modelu

► Memorija

► Instrukcije i podaci su svedeni na numerički kod i pohranjuju se na isti način i u

istom obliku u memorijsku jedinicu

► Memorija nema obradbenih sposobnosti, a obavlja samo dvije temeljne operacije

Čitanje iz memorije

Zapisivanje u memoriju

Informatika 1 20

► Upravljačka jedinica

► Jedinica koja "razumije" numerički kod kojim su predstavljeni podaci i instrukcije

► Tumači numeričke kodove i u skladu s njima generira upravljačke signale kojima

upravlja izvođenjem instrukcija i koordinira radom rač. sustava

► Zajedno sa aritmetičko-logičkom jedinicom čini cjelinu koja se naziva centralna

procesorska jedinica (CPU ili procesor)

► Aritmetičko-logička jedinica

► Jedinica u računalu koja posjeduje obradbene sposobnosti se naziva aritmetičko-

logička jedinica

► Zajedno sa upravljačkom jedinicom čini cjelinu koja se naziva centralna procesorska

jedinica (CPU ili procesor)

► Ulazno-izlazne jedinice

► Zadužene su za komunikaciju računala sa korisnikom i okolinom računalnog sustava

► Omogućavaju unos podataka potrebnih za obradu u računalo i prikaz rezultata

računalne obrade

► Omogućavaju i prijenos podataka između računalnih sustava

PROCESOR

► Često se naziva i CPU( engl. Central Processing Unit)

♦ Regulira, koordinira i upravlja aktivnostima cijelog sustava

♦ Obavlja aritmetičku i logičku obradu podataka

► Dvije osnovne funkcije

♦ Obrada podataka

♦ Nadzor i usklađivanje djelovanja cjelokupnog rač. sustava

► Sastoji se od:

♦ Aritmetičko-logičke jedinice

♦ Upravljačke jedinice

♦ Registara (opće i posebne namjene)

Informatika 1 21

PROCESOR – građa

► Upravljačka jedinica

♦ Kontrolira i koordinira radom svih dijelova računala – dohvaća instrukciju, tumači ju

i generira upravljačke signale

♦ Najsloženiji dio središnjeg procesora

♦ Svaku instrukciju izvršava kroz

dvije faze:

► Priprema (pribavljanje)

► Izvršenje

► Aritmetičko-logička jedinica

♦ Jedinica za obradu podataka (aritmetičke i logičke operacije)

♦ Sastoji se od sklopova i registara

► Registri

♦ Registar = dio memorije koji služi za privremenu pohranu podataka

♦ Najčešće su smješteni u procesoru

♦ Vrste registara:

► akumulator,

► buffer registri,

► registri opće namjene,

► programsko brojilo,

► pokazivač adrese staka,

► indeks registar,

► posmačni (shift)

registar, te

► registar statusa

OSNOVNI LOGIČKI SKLOPOVI

► Digitalno računalo utemeljeno je na osnovnim sklopovima koji grade ostale složenije

digitalne sklopove

► I-sklop

► ILI-sklop

► NE-sklop

Informatika 1 22

► I – SKLOP (engl. AND)

► Obavlja logičku operaciju I, tj. operaciju povezivanja ili konjukciju

► Može imati dva ili više ulaza

► Sklop na izlazu Y daje stanje 1 samo onda kada su ulaz A i ulaz B u

stanju logičke 1 (u slučaju I sklopa sa dva ulaza).

► ILI – SKLOP (engl. OR)

♦ Obavlja logičku operaciju ILI tj. operaciju rastavljanja ili disjunkciju

♦ Može imati dva ili više ulaza

♦ Na izlazu sklopa biti će stanje 0 samo onda kada su svi ulazi u stanju

logičke 0

► NE – SKLOP (engl. NOT)

♦ Obavlja logičku operaciju NE tj. negacije, odnosno inverzije ili

komplementiranja

♦ Ima samo jedan ulaz i jedan izlaz

♦ Na izlazu daje stanje suprotno stanju na izlazu tj. ako je ulaz u stanju logičke 1 tada je

izlaz u stanju 0 i obratno

► Kombiniranjem osnovnih digitalnih sklopova nastaju složeniji digitalni sklopovi

♦ Negirani I i ILI sklopovi – NI i NILI sklopovi

♦ Ekskluzivni ILI sklop – EX-ILI

♦ Bistabili

SIMBOL LOGIČKOG SKLOPA

SIMBOL LOGIČKOG SKLOPA

SIMBOL LOGIČKOG SKLOPA

Informatika 1 23

SLOŽENI LOGIČKI SKLOPOVI

♦ Registri

♦ Dekoderi

♦ Brojila

♦ Poluzbrajalo i zbrajala, realizacija zbrajanja

♦ NI – SKLOP (engl. NAND gate, NOT AND)

♦ Obavlja logičku operaciju NI (naziva se još Shaefferova funkcija) – tj.

negaciju rezultata operacije I (AND)

♦ Može imati dva ili više ulaza

♦ Na izlazu ima logičko stanje 1 ako je na bilo kojem ulazu logičko

stanje 0.

♦ Kad je na svim ulazima stanje 1, tada je na izlazu stanje 0.

♦ NILI – SKLOP (engl. NOR gate, NOT OR)

♦ Obavlja logičku operaciju NILI (naziva se još i Pierceova funkcija) – tj. negaciju

rezultata operacije ILI (OR)

♦ Može imati dva ili više ulaza

♦ Na izlazu ima stanje 1 samo ako su svi ulazi sklopa u stanju 0.

♦ Kada je na bilo kojem od ulaza sklopa stanje 1 tada je izlaz

sklopa u stanju 0.

► EX-ILI – SKLOP (engl. XOR, EXclusive OR )

♦ Obavlja logičku operaciju ekskluzivne disjunkcije

♦ Sklop ima na izlazu logičku vrijednost 1 kad je jedan od ulaza u sklop u logičkom

stanju 1, a drugi ulaz u logičkom stanju 0.

♦ Ako su oba ulaza u

istom stanju (log. 0 ili

log 1), tada je izlaz u

stanju logičke 0.

Informatika 1 24

► BISTABILI

♦ Oni elektronički elementi koji imaju dva stabilna stanja.

► Kada dođe pobuda siglnala, odnosno stanje 1, na

ulaz S, bistabil se postavi u stanje 1 i tada je na

njegovu izlazu Q stanje 1, a na komplementarnom izlazu Q stanje je nula.

► Kada dođe pobuda na njegov ulaz R, bistabil se postavi u stanje nula, tj. na

izlazu Q stanje je 0 a na komplementu Q 1.

♦ Varijanta bistabila – D-bistabil

► Prilikom povezivanja većeg broja bistabila u niz

► Štedi na jednom ulaznom vodu

► REGISTRI

♦ Više bistabila u nizu na koje se može pohraniti čitav podatak

♦ Bistabili u registru su međusobno neovisni, ali su poredani tako da svaki ima

određenu težinsku (pozicionu) vrijednost

♦ Podaci se između registara razmjenjuju putem sabirnica

► DEKODERI

♦ sklopovi koji omogućuju da svako stanje na registru rezultira stanjem 1 na samo

jednom jedinom izlaznom vodu radi pokretanja neke akcije, a stanjem 0 na svim

ostalim izlaznim vodovima

LOGIČKI SIMBOL BISTABILA

LOGIČKI SIMBOL ZA D-BISTABIL

SKICA REGISTRA SA 8 BISTABILA

Informatika 1 25

♦ Upotrebom dekodera izvode se različita adresiranja u računalu, te se pokreću različite

akcije kojima je ishodište odgovarajući broj na registru

► BROJILA

♦ Služe za brojanje binarnih signala

♦ Brojilo dobijemo tako da nekoliko S-R bistabila povežemo u seriju pomoću

elementarnih logičkih sklopova

♦ Osnovu brojenja čini mijenjanje (komplementiranje) stanja bistabila u situaciji kada

bistabil niže težinske vrijednosti prelazi iz stanja 1 u stanje 0

♦ Brojila imaju značajnu ulogu u radu računala – jedan od najvažnijih registara u

mikroprocesoru (programsko brojilo) je realiziran kao brojilo

► POLUZBRAJAČ (polusumator)

♦ Osnovni sklop za strojno zbrajanje dvaju binarnih znamenaka

♦ zbraja samo dvije binarne znamenke, no to nije dovoljno za potpuno zbrajanje -> ne

može uzimati u obzir i eventualni “jedan dalje”

SKICA DEKODERA SA TRI

ULAZA

LOGIČKI SIMBOL POLUSUMATORA

TABLICA STANJA POLUSUMATORA

REALIZACIJA POLUSUMATORA POMOĆU

OSNOVNIH LOGIČKIH SKLOPOVA

Informatika 1 26

► POTPUNI ZBRAJAČ

(potpuni sumator)

♦ Sklop koji uzima u obzir i "1 dalje" sa mjesta niže težinske vrijednosti

♦ Realizira se pomoću dva povezana polusumatora

► REALIZACIJA ZBRAJANJA

♦ NAPOMENA: 2 potpuna zbrajača mogu zbrojiti samo 2 binarne znamenke i

registrirati eventualni "1 dalje"

♦ Za zbrajanje 2 N-bitna binarna broja potreban je sklop za zbrajanje koji se sastoji od

N povezanih potpunih zbrajača

REALIZACIJA POTPUNOG SUMATORA

POMOĆU DVA POLUSUMATORA

TABLICA STANJA POTPUNOG SUMATORA

LOGIČKI SIMBOL POTPUNOG SUMATORA

PRIMJER: SKLOP ZA ZBRAJANJE 4-bitnih BINARNIH BROJEVA

Informatika 1 27

OSNOVNI PRINCIP RADA RAČUNALA

► Takt rada računala

♦ Služi za sinhronizaciju svih uređaja u računalu na način da “proizvodi” tzv. taktne

signale

♦ Izražava se frekvencijom kojom se izmjenjuju taktni signali

► On daje "ritam" pod kojom radi procesor, ali i cijelo računalo

♦ Signali se generiraju u generatoru taktnih signala i odašilju se u generator upravljačkih

signala koji je dio upravljačke jedinice

♦ Na taj način se usklađuje rad i djelovanje svih elemenata računalnog sustava pri

obradi podataka

► Multipleksor

♦ Signale s više različitih vodova vremenski pomaknuto prespaja na jedan izlazni vod

♦ Ulazni signali se po redu, jedan iza drugoga, priključuju na izlazni vod

► Demultipleksor

♦ Priključuje signale koji po jednom ulaznom vodu dolaze u različitim vremenskim

odsječcima na različite izlazne vodove

♦ Obavlja obrnuti zadatak od multipleksora

► Sabirnice (engl. bus)

♦ skup spojnih vodova koji povezuju sve elemente računalnog sustava u funkcionalnu

cjelinu

♦ Podjela po smještaju:

► Unutarnje i vanjske

♦ Podjela po vrsti sadržaja koji se njima prenosi:

► Podatkovne

► Adresne

► Upravljačke

♦ Širina sabirnice

► broj vodova ili broj bitova koji se mogu prenijeti u jednom ciklusu

Informatika 1 28

NAČINI ORGANIZACIJE MIKROPROCESORA

► Organizacija procesora oko jedne sabirnice

♦ Procesor organiziran oko jedne sabirnice

koristi jednu sabirnicu za dovođenje i

odvođenje podataka u središnjem

procesoru

♦ procesor organiziran oko jedne sabirnice

može u jednom trenutku prenositi samo

jedan podatak

♦ podaci se moraju prenositi vremenski

multipleksirano i to u oba smjera

► Organizacija procesora oko dvije

sabirnice

♦ Donekle ispravlja nedostatak organizacije procesora oko jedne sabirnice

♦ Ponekad je moguće istovremeno

prenosti podatke po obje sabirnice

♦ podaci se moraju prenositi vremenski

multipleksirano i to u oba smjera

♦ nije moguće istovremeno pribaviti

operande za oba ulaza ALU

(pribavljaju se jedan po jedan,

vremenski multipleksirano)

► Organizacija procesora oko tri sabirnice

♦ Već i organizacija procesora oko dvije sabirnice donosi ubrzanja u radu, a još veća

poboljšanja su moguća uvođenjem treće sabirnice

♦ mogućnosti istovremenog dovođenja

obaju operanada na ulaze u ALU

♦ Istovremeno odvođenje rezultata

prethodne ALU operacije na odredište

ORGANIZACIJA OKO JEDNE SABIRNICE (pojednostavljena shema)

Informatika 1 29

INSTRUKCIJA

► Sadržaj kojim računalu govorimo što želimo učiniti sa sadržajem određene memorijske

lokacije

► Sastoji se od:

♦ Polja operacijskog koda

♦ Nijednog, jednog ili većeg broja adresnih polja, te

♦ Polja za specifikaciju operanda i rezultata

► Vrste instrukcija:

♦ Instrukcije za prijenos podataka

♦ Aritmetičko-logičke instrukcije

♦ Upravljačke instrukcije

♦ Instrukcije namijenjene funkcijama OS-a

INSTRUKCIJA – način izvođenja

► Za izvođenje pojedinih instrukcija upotrebljava se jedan ili više instrukcijskih ciklusa M1, M2,

M3 i M4

► Cjelokupan način djelovanja upravljačke jedinice može se predočiti izmjenama dvaju

osnovnih stanja za svaku instrukciju

► Ta dva osnovna stanja su:

♦ Stanje PRIBAVI (engl. Fetch)

► za vrijeme njegova trajanja se pribavlja (ili dohvaća) instrukcija iz memorije

► završava onda kad je pribavljena kompletna instrukcija

♦ Stanje IZVRŠI (engl. Execute)

► obavlja se (izvršava) operacija koja je utvrđena u postupku dekodiranja

► Nakon obavljenih operacija u stanju IZVRŠI upravljačka jedinica prelazi u

stanje PRIBAVI

SHEMATSKI PRIKAZ FORMATA INSTRUKCIJE

Informatika 1 30

ADRESIRANJE MEMORIJE

► Do podataka zapisanih u ROM ili RAM memoriji je moguće doći na razne načine, tj. mogući

su različiti oblici adresiranja memorijskih lokacija

► Način adresiranja memorije (tj. način dohvata operanada) uvijek zadan unutar same

instrukcije koja se trenutno izvršava, i to unutar operacijskog koda instrukcije

► Upravljačka jedinica tumači operacijski kod i na temelju njega prepoznaje zatraženi

oblik adresiranja memorije, te aktivira upravljačke signale potrebne za realizaciju

zatraženog oblika adresiranja

NEPOSREDNO ADRESIRANJE:

► Oblik adresiranja kod kojeg je operand potreban za izvođenje instrukcije dio same instrukcije

♦ Prvi bajt instrukcije predstavlja operacijski kod (kojim je u ovom slučaju zadano

neposredno (Immediate) adresiranje)

♦ Drugi i treći bajt (ako je operand 16-bitna riječ) instrukcije sadrže traženi operand

Primjer:

• PC pokazuje na adresu C257

• Sa te adrese se učitava prvi bajt

instrukcije – operacijski kod, kojim je

zadana vrsta adresiranja

• Učitavanjem sadržaja idućeg bajta

dohvaća se operand koji iznosi AB (u

ovom slučaju 8-bitni operand)

Informatika 1 31

DIREKTNO ADRESIRANJE:

► Oblik adresiranja kod kojeg je adresa operanda potrebnog za izvođenje instrukcije dio same

instrukcije

♦ Prvi bajt instrukcije predstavlja operacijski kod (kojim je u ovom slučaju zadano

direktno adresiranje)

♦ Drugi i treći bajt instrukcije sadrže (u ovom slučaju 16-bitnu) adresu traženog

operanda

Primjer:

• PC pokazuje na adresu C257

• Sa te adrese se učitava prvi bajt instrukcije –

operacijski kod, kojim je zadano direktno

adresiranje

• Učitavanjem sadržaja iduća 2 bajta dohvaća

se adresa operanda, koja iznosi E512

• Novim zahvatom u memoriju se dohvaća

sadržaj operanda sa adrese E512, a operand

iznosi 78

INDIREKTNO ADRESIRANJE:

► Oblik adresiranja kod kojeg je adresa adrese operanda potrebnog za izvođenje instrukcije dio

same instrukcije

♦ Prvi bajt instrukcije predstavlja operacijski kod, drugi i treći bajt instrukcije sadrže (u

ovom slučaju 16-bitnu) adresu adrese traženog operanda

♦ Na lokaciji koja sadrži adresu adrese operanda se nalazi stvarna adresa operanda

Primjer:

• PC pokazuje na adresu C257. Sa te adrese se učitava prvi

bajt instrukcije – operacijski kod

• Učitavanjem sadržaja iduća 2 bajta dohvaća se adresa

adrese operanda, koja iznosi E512

• Novim zahvatom u memoriju se dohvaća sadržaj adrese

sa lokacija E512 i E513, tj. stvarna adresa operanda, a ta

adresa iznosi E511

• Još jednim zahvatom u memoriju se dohvaća sadržaj

operanda sa lokacije E511, a operand iznosi FE

Informatika 1 32

RELATIVNO ADRESIRANJE S OBZIROM NA PROGRAMSKO BROJILO:

► Oblik adresiranja kod kojeg se adresa operanda odabire u određenom adresnom području u

blizini lokacije same instrukcije

♦ Prvi bajt instrukcije predstavlja operacijski kod

♦ Drugi bajt instrukcije sadrži vrijednost koja se interpretira kao pomak (zabilježen u

aritmetici dvojnog komplementa) koji se pribraja adresi zapisanoj u PC

Primjer:

• PC pokazuje na adresu C257

• Sa te adrese se učitava prvi bajt instrukcije –

operacijski kod, kojim je npr. zadano relativno

adresiranje prema PC

• Učitavanjem sadržaja idućeg bajta dohvaća se pomak

(offset) koji iznosi 27(16)

• Učitani pomak se pribraja sadržaju PC-a i dobiva se

stvarna adresa operanda, koja iznosi C27E

• Još jednim zahvatom u memoriju se dohvaća sadržaj

operanda sa lokacije C27E, a operand iznosi 23

ADRESIRANJE REGISTARA I POMOĆU REGISTARA:

► 1. Adresiranje registara (najbrži oblik adresiranja)

♦ Oblik adresiranja kod kojeg se operand preuzima direktno iz nekog od registara opće

namjene

♦ Operacijskim kodom je zadan oblik adresiranja, ali je zadano i koji registar opće

namjene sadrži operand

♦ Instrukcija koja zahtijeva adresiranje registara se sastoji od samo jednog bajta –

operacijskog kôda

► 2. Indirektno registarsko adresiranje

♦ Slično je indirektnom adresiranju uz sljedeće razlike:

♦ Adresa operanda je smještena u nekom od registara opće namjene

♦ Operacijski kôd instrukcije određuje takav oblik adresiranja i zadaje u kojem registru

opće namjene se nalazi adresa operanda

♦ Zahvatom u memoriju se dohvaća sadržaj lokacije na koju pokazuje registar opće

namjene, a koja sadrži traženi operand

Informatika 1 33

► 3. Relativno registarsko adresiranje

♦ Bazična adresa smještena je u nekom od registara opće namjene

♦ Prvi bajt instrukcije predstavlja operacijski kod (kojim je u ovom slučaju zadano

relativno registarsko adresiranje, kao i registar koji sadrži bazičnu adresu)

♦ Drugi bajt instrukcije sadrži vrijednost koja se interpretira kao pomak (zabilježen u

aritmetici dvojnog komplementa) koji se pribraja adresi zapisanoj u registru opće

namjene

Primjer registarskog relativnog adresiranja:

• Programsko brojilo (PC) pokazuje na adresu 1234(16)

• Sa te adrese se učitava prvi bajt instrukcije – operacijski kod, kojim je npr. zadano relativno

registarsko adresiranje prema registru R5

• Učitavanjem sadržaja idućeg bajta dohvaća se pomak

(offset) koji iznosi 27(16)

• U aritmetici dvojnog komplementa ovo je

pozitivan broj (bit najveće težine je 0), pa se

pribraja adresi u registru R5

• Učitani pomak se pribraja sadržaju registra R5 i dobiva

se stvarna adresa operanda, koja iznosi 225B

• Još jednim zahvatom u memoriju dohvaća se sadržaj

operanda sa lokacije 225B, a operand iznosi E3

INDEKSIRANO ADRESIRANJE:

► Za adresiranje operanada se upotrebljava poseban registar u procesoru – indeks registar

► Ova vrsta adresiranja je pogodna za dohvaćanje većeg broja operanada koji su smješteni u

nizu uzastopnih lokacija u memoriji

♦ Adresa prvog operanda u nizu se zapiše u indeks registar, te se ista adresa iskoristi za

dohvat tog operanda

♦ Nakon dohvata prvog operanda, sadržaj indeks registra se uvećava za zadani pomak

(zadan je instrukcijom u njenom drugom bajtu) i sad pokazuje na adresu slijedećeg

operanda u nizu

♦ Dohvaća se drugi operand

♦ Ciklus se ponavlja sve dok se ne pročitaju svi potrebni operandi – tzv.

autoindeksirano adresiranje

Informatika 1 34

Primjer:

• PC pokazuje na adresu 02AA – tu je zadana instrukcija koja zahtijeva indeksirano

adresiranje (op. kod), a na slijedećoj lokaciji se nalazi pomak za indeksiranje (zapisan u

aritmetici dvojnog koplementa)

• Indeks registar pokazuje na adresu 125A

• Sa te adrese se učitava prvi operand, koji iznosi 41

• Zatim se vrijednost indeks registra uveća za zadani

pomak (1) i sad indeks registar pokazuje na lokaciju

125B

• Sa te adrese se učitava drugi operand(E3)

• Ciklus se ponavlja do kraja niza operanada

ADRESIRANJE PO STRANICAMA (STRANIČENJE):

► Za ovu vrstu adresiranja je bitno podijeliti adresni prostor

na nizove lokacija jednake duljine, koje se zovu stranice

(engl. page)

♦ Npr. stranice su veličine 128 bajtova, tj. svaka

lokacija unutar pojedine stranice se može adresirati

sa 7 bitova

♦ Tada bi 16-bitno adresno polje bilo podijeljeno na

512 stranica i izgledalo bi ovako:

► Instrukcija koju treba izvršiti je smještena u nekoj od stranica

♦ Za dohvat njenih operanada se primjenjuje adresiranje slično relativnom adresiranju

– koriste se pomaci zadani u bajtu nakon operacijskog koda instrukcije

♦ Za pomak se koristi 7 bitova 8-bitne riječi i tim pomakom se može adresirati bilo

koja lokacija u dosegu jedne stranice (7 bitova = 128-bajtni adresni raspon)

♦ Krajnji lijevi, osmi bit pomaka određuje da li će se adresirati 0-ta stranica ili stranica

na kojoj je smještena instrukcija

► Ako je 8. bit jednak 0, onda se adresira 0-ta stranica

► Ako je 8. biti jednak 1, onda se adresira trenutna stranica na kojoj se nalazi

instrukcija

Informatika 1 35

VANJSKA MEMORIJA

► Brza unutarnja radna memorija pamti podatke samo dok računalo radi

♦ Prestankom rada (gašenjem, nestankom struje, ...) gube se podaci pohranjeni u

radnoj memoriji računala

♦ Za potrebe trajne pohrane važnih podataka postoje vanjske memorije koje pamte

na njih zapisane podatke i u trenucima kad je računalo ugašeno

► Vanjske memorije prema vrsti medija za pohranu dijelimo na:

♦ Magnetske i optičke

VANJSKA MEMORIJA – MAGNETSKA

► Podjela

♦ Magnetski diskovi

► Čvrsti diskovi

► Diskete

♦ Magnetske vrpce

► Vrpce na kolutima

► Vrpce u kazetama

► Materijalni nositelj zapisa na magnetskim vanjskim memorijama je sloj feromagnetskog

materijala kojim je presvučen fizički medij (okrugle ploče kod mag. diskova ili plastične trake

kod mag. vrpci)

VANJSKA MEMORIJA - ČVRSTI DISK

► Građa i tehnologija zapisa

♦ Niz ploča od metala ili stakla na zajedničkoj osovini, oko koje sve ploče rotiraju

♦ Ploče su presvučene feromagnetskim materijalom

► Magnetizacijom feromagnetskog materijala zapisuju se binarni 0 i 1

♦ Jedna orijentacija čestica feromag. materijala – binarna 0

♦ Druga orijentacija čestica feromag. materijala – binarna 1

► Zapisivanje i čitanje se izvodi pomoću glava za čitanje/pisanje

♦ Sa svake strane svake ploče se nalazi po jedna glava za čitanje/pisanje

OSNOVNI ELEMENTI TVRDOG DISKA

Informatika 1 36

► Građa i tehnologija zapisa (nastavak)

♦ Pomicanje glava – pomoću aktuatorske

ruke, koja je pokretana motorom

♦ Glave nikada fizički ne dotiču površinu

ploča

► Lebde nad pločama na

mikroskopski debelom zračnom

jastuku

♦ Najvažniji dio glave za čitanje/pisanje je elektromagnet

♦ Propuštanjem struje kroz zavojnicu elekromagneta se inducira magn. polje koje

orijentira česticu feromagnetskog materijala u određenom smjeru – zapis binarne 0

ili 1

♦ Prelaskom glave preko magnetizirane čestice se u zavojnici elektromagneta inducira

el. struja – čitanje binarne 0 ili 1

► Fizička organizacija zapisa

♦ Ploče

♦ Staze - koncentrični krugovi na pločama

♦ Cilindri - sve staze na svim pločama koje su jednako udaljene od središta rotacije

ploča

♦ Sektori - isječci staza - svaka staza je podijeljena na jednak broj sektora; sektor je

najmanja adresibilna jedinica na disku

♦ Klasteri – logička cjelina koja obuhvaća nekoliko susjednih sektora; u slučaju da se

kod fizičke organizacije zapisa koriste i klasteri, tada je jedan klaster najmanja

adresibilna jedinica na disku

Informatika 1 37

VANJSKA MEMORIJA – DISKETA

► Građom slična tvrdom disku; neke od razlika su:

♦ Disketa (floppy disk) je izmjenjiv medij

► U plastičnoj košuljici nalazi se samo jedna ploča od savitljivog materijala

presvučena feromagnetskim materijalom

♦ Gustoća zapisa je manja nego kod tvrdog diska

► Zbog samo jedne ploče i manje gustoće zapisa proizlazi da je kapacitet

diskete daleko manji

♦ U fiksiranom pogonu floppy diska smješten

je pogonski motor koji rotira ploču

► Višestruko sporije nego kod tvrdog

diska

♦ Po jedna glava za čitanje/pisanje sa svake

strane ploče, te aktuatorska ruka koja

pokreće glavu

VANJSKA MEMORIJA - MAGNETSKI DISKOVI

► Logička organizacija zapisa - proizlazi iz načina fizičke organizacije zapisa na magn.

diskovima (tj. iz mogućnosti izravnog pristupa do traženog sadržaja):

♦ Slijedna organizacija zapisa

► Podaci se zapisuju u kontinuirane (slijedne, sekvencijalne) cjeline - sektor do

sektora, klaster do klastera

♦ Rasuta organizacija zapisa

► Omogućava dislocirano zapisivanje podataka po mediju

► Mogućnost iskorištenja svakog slobodnog prostora na mediju

► Veća fleksibilnost

VANJSKA MEMORIJA – VRPCA

► Danas se uglavnom koristi kao masovni medij za sigurnosnu pohranu podataka (backup)

► Magnetska vrpca izrađena je od savitljivog plastičnog materijala i s jedne je strane presvučena

s feromagnetskim materijalom

Informatika 1 38

► Fizička organizacija zapisa

♦ Trake

♦ Blokovi

♦ Lokacije (frameovi)

♦ Glave za čitanje/pisanje

► Logička organizacija zapisa

♦ Magnetske vrpce su uređaji s isključivo slijednim pristupom do pohranjenih sadržaja

♦ Moguća jedino slijedna logička organizacija zapisa

► Podaci se moraju čitati blok po blok, onim redom kako su bili i zapisani

VANJSKA MEMORIJA – OPTIČKA

► Ubrajamo ih u izmjenjive vanjske memorija s prenosivim medijima

► Prema kriteriju čitanja/pisanja dijelimo ih na:

♦ Medije koji služe samo za čitanje

► CD-ROM

► DVD-ROM

♦ Medije koje se može čitati i pisati

► Jednokratno zapisivanje

♦ CD-R

♦ DVD-R, DVD+R

► Višekratno zapisivanje/brisanje

♦ CD-RW

MAGN. VRPCA NA KOLUTOVIMA MAGN. VRPCA U KAZETI

Informatika 1 39

♦ DVD-RW, DVD+RW

♦ DVD-RAM

VANJSKA MEMORIJA - CD-ROM

► Građa i tehnologija zapisa

♦ Medij ima samo jednu ploču s koje se čitaju podaci

♦ Za smještaj podataka koristi se samo jedna strana te ploče

♦ Materijalni nositelj je metalni reflektivni sloj u koji je tvornički utisnuta “matrica” sa

udubljenjima (ili izbočenjima) i ravnim dijelovima

► Udubljenje (ili izbočenje) – binarna 0

► Ravnina – binarna 1

♦ Čitanje se izvodi pomoću laserske zrake koju emitira optička glava, koja se sastoji od:

► Laserske diode – izvora laserske zrake (crvene)

► Prizme

► Leće za fokusiranje

► Detektora svjetlosti

► Građa (shematski prikaz)

► Fizička organizacija zapisa

♦ Podaci su zapisani u

kontinuiranu spiralu koja

počinje u središtu diska

♦ Spirala je podijeljena na blokove fiksne veličine

► Gustoća zapisa povećava se prema rubu medija

OPTIČKA

Informatika 1 40

VANJSKA MEMORIJA - CD-RW

► Građa i tehnologija zapisa

♦ Razlika u vrsti materijalnog nositelja zapisa – sloj za zapisivanje nije metalni -

organske boje i slični materijali

► Karakteristike materijalnog nositelja su

a) Pod utjecajem srednje snažne laserske zrake vraća se u svoje

prvobitno stanje - brisanje zapisa

b) Pod utjecajem snažne laserske zrake mijenja stanje – zapisivanje

c) Pod utjecajem slabe laserske zrake ne mijenja stanje – čitanje

♦ Mjesta izmijenjena pod utjecajem lasera za zapisivanje slabije reflektiraju lasersku

zraku prilikom čitanja

► Po intenzitetu reflektirane zrake određuje se da li je zapisana binarna 0 ili

binarna 1

► Fizička organizacija zapisa

♦ podaci su zapisani u koncentrične kružnice (ne u spiralu!)

♦ staze su podijeljene na sektore

VANJSKA MEMORIJA - DVD

► Građa i tehnologija zapisa

♦ Gotovo je identična CD-ROM mediju, uz određene razlike:

► Kraća valna duljina laserske zrake - moguće je čitanje "sitnijih" udubina i

ravnina = veća gustoća zapisa i veći kapacitet

► Mediji mogu biti i dvoslojni i dvostrani – dodatno povećanje kapaciteta

► Logička organizacija zapisa (svi opisani optički mediji)

♦ Optičke vanjske memorije ubrajamo u skupinu uređaja s izravnim pristupom do

pohranjenih podataka (poput magnetskih diskova)

► Moguće su i slijedna i rasuta logička organizacija zapisa

USPOREDBA VALNIH DULJINA LASERSKIH ZRAKA KOD CD I DVD UREĐAJA

Informatika 1 41

VIRTUALNA MEMORIJA

► Virtualna memorija - sustav u kojem je radni memorijski prostor računala načinjen dijelom

od brze radne memorije (RAM), a dijelom od sporih masovnih memorija

♦ Svaki program prilikom izvođenja mora biti smješten u radnoj memoriji (RAM)

računala

♦ Problem može nastati kad treba istovremeno izvoditi veći broj programa

► Fizički kapacitet radne memorije može biti nedostatan za pohranu svih

programa koji se trenutno izvršavaju i i njihovih radnih podataka

♦ Rješenje - u RAM-u se nalaze dijelovi (programa i podataka) koji su trenutačno

aktivni - ostatak je pohranjen na disku

► Posebni mehanizmi, poduprti sklopovljem suvremenih procesora,

premještaju s diska u radnu memoriju one dijelove programa koji će se

upravo izvoditi, a iz radne memorije na disk vraćaju dijelove koji trenutačno

nisu potrebni

► Princip rada

♦ Cjelokupni se adresni prostor dijeli na okvire (frame), a svi programi i podaci se dijele

na blokove podataka jednake veličine (stranice)

♦ Program (proces) želi pristupiti određenoj memorijskoj lokaciji - sklopovska podrška

određuje da li se ona fizički nalazi u glavnoj memoriji - ako ne, pokreće se prijenos s

vanjske memorije u radnu

► Ne prenosi se samo sadržaj tražene lokacije, već cijela stranica u kojoj je

smještena tražena lokacija

► U radnoj memoriji se tako nalaze samo oni podaci koji su trenutno potrebni

ili aktivni (osnova za multiprogramsku obradu – multitasking)

► Ovakav postupak korištenja memorije naziva se straničenjem i ključan je za realizaciju

virtualne memorije

► Radi toga što je samo dio procesa u radnoj memoriji, a ostali, koji nisu trenutno potrebni, u

sekundarnoj memoriji, može se znatno proširiti raspoloživi memorijski prostor računala,

odnosno taj se prostor naziva virtualnom memorijom

► Operacijski sustav (OS) računala upravlja razmjenom informacija između unutrašnje i

vanjske memorije, dok programer umjesto stvarnih fizičkih adresa koristi virtualne

Informatika 1 42

♦ Program “vidi” adresni prostor računala kao linearni niz adresa, koji nije ograničen

kapacitetom radne memorije, tj. stvoren je “privid” beskonačno velike memorije ili

virtualni adresni prostor – odatle i naziv virtualna memorija

PROGRAMSKI PREKIDI

► Jedan od ključnih preduvjeta za realizaciju virtualne memorije i multitaskinga je sustav

programskih prekida

♦ Jedna od funkcija operacijskih sustava je da omoguće prekid izvođenja glavnog

programa (na zahtjev neke vanjske jedinice ili nekog drugog programa)

► Prekida se izvođenje glavnog programa, prelazi se na izvođenje drugog

programa ili posebnog programa za dotičnu vanjsku jedinicu (tzv. servisnu

rutinu), a po njihovom završetku nastavlja se izvođenje prekinutog programa

♦ Jednostruki prekidi - program koji prekida izvođenje glavnog programa ne može

biti prekinut

♦ Višestruki prekidi - program koji prekida izvođenje glavnog programa i sam može

biti prekinut (npr. dolazi novi zahtjev za prekidom koji je većeg prioriteta od

trenutnog)

► Realizacija prekida – ključni faktor je postojanje memorije organizirane u stog (stack)

♦ Ulazno-izlazni uređaj generira zahtjev za prekid i šalje ga procesoru

♦ Trenutno aktivna instrukcija glavnog programa se izvodi do kraja

♦ Procesor odgovara signalom potvrde i onemogućava nove prekide iste razine

♦ Procesor pohranjuje tzv. minimalni kontekst trenutnog programa (sadržaj PC-a,

akumulatora, registra statusa, registara opće namjene i sl.)

► Minimalni kontekst se pohranjuje na stog

► Ovo je potrebno da bi se osigurao pravilan povratak iz prekidnog u prekinuti

program i njegov normalan nastavak

► Realizacija prekida (nastavak)

♦ Učitava se prekidni program (servisna rutina) i izvršava se do kraja

♦ Nakon izvođenja prekidne rutine, nastavlja se s izvođenjem prekinutog programa

► To se obavlja zadnjom instrukcijom prekidnog programa, tipično rti (Return

From Interrupt) instrukcijom

► Izvođenjem te instrukcije (rti), obnavljaju se sadržaji programskog brojila

(PC), registra stanja i registara opće namjene

Informatika 1 43

► Obnavljaju se iz minimalnog konteksta pohranjenog na stogu –

izvođenje glavnog programa nastavlja se od njegove sljedeće

instrukcije

► Ovo je bio primjer jednostrukog prekida

♦ Isti koraci se primjenjuju i kod

višestrukih prekida – tada je trenutno

aktivni prekidni program u ulozi

“glavnog”

► Shematski prikaz izvođenja jednostrukog

prekida

IZLAZNE JEDINICE – MONITOR

► Najčešće korištena izlazna jedinica, koja prikazuje sliku na ekranu

► Prema tehnologiji koja se koristi za prikaz slike na ekranu, monitori se dijele u dvije velike

skupine:

♦ Monitori sa katodnom cijevi (CRT monitori)

♦ Flat-panel monitori (ekrani sa tekućim kristalima, plazma ekrani, OLED ekrani, ...)

IZLAZNE JEDINICE - MONITOR – CRT

► Osnovu čini katodna cijev, koja služi za prikaz slike

► tri elektronska topa, od kojih svaki emitira po jednu zraku elektrona – jednu

za crvenu, jednu za plavu i jednu za zelenu boju

► zrake se usmjeravaju na određeni dio ekrana pomoću dvaju okomito

položenih izvora izvora magnetskih polja – tzv. Deflektora

► s unutarnje strane površine ekrana nalazi se fosforni premaz, nanešen u

obliku sitnih točaka

► po tri fosforne točke različitih kemijskih karakteristika (crvena, zelena, plava)

čine jedan piksel na ekranu

► fosforne točke emitiraju svjetlost kad ih pogodi zraka elektrona

Informatika 1 44

► kombiniranjem (aditivnim miješanjem) različitih intenziteta emitirane crvene,

plave i zelene svjetlosti pojedinog piksela postiže se željena boja pojedinog

piksela

► Shematski prikaz katodne cijevi CRT monitora

► Način iscrtavanja slike kod CRT monitora

► zrake elektrona putuju po površini ekrana

red po red, počevši od gornjeg lijevog

ugla

► kako zrake prelaze preko pojedinih

piksela, tako se pojačava/smanjuje

intenzitet elektronskih zraka i svaki piksel

zasvijetli odgovarajućom bojom

► zrake se pomiču horizontalno do kraja

reda, a zatim se elektronski top brzo usmjerava na početak novog retka

► isti se princip primjenjuje sve do posljednjeg retka na ekranu, čime je završeno

iscrtavanje cijele slike

► elektronski top opet usmjerava na vrh ekrana i postupak počinje iz početka

► frekvencija osvježavanja ekrana = broj iscrtanih slika u sekundi (tzv. vertikalna frekvencija)

IZLAZNE JEDINICE - MONITOR – REZOLUCIJA

► Rezolucija monitora - ukupan broj individualnih točaka koje monitor može prikazati;

izražava se kao umnožak broja točaka po horizontali i vertikali ekrana

Informatika 1 45

► Tipični CRT monitori mogu prikazivati slike na većem broju razlučivosti; maksimalna

razlučivost ovisi o:

► veličini katodne cijevi – veličina vidljive dijagonale

ekrana

► fizičkoj udaljenosti između fosfornih točaka – tzv. dot

pitch – predstavlja udaljenost između dviju susjednih

fosfornih točaka istog tipa

IZLAZNE JEDINICE - MONITOR – PIKSEL

► Piksel (skraćeno od engl. picture element) je jedna točka unutar pravokutne mreže (matrice)

koja predstavlja sliku koju treba reproducirati na ekranu ili ispisati na papir

► Piksel najmanja jedinica koja može biti prikazana na ekranu, ispisana na papiru ili s kojom

može manipulirati softver i hardver potreban za prikaz i ispis grafike i teksta

► Fizički piksel (CRT monitor – tri fosforne točke razl. boja)

♦ broj im ovisi o veličini ekrana i o razmaku između istovjetnih elementarnih fosfornih

točaka

♦ o broju fizičkih piksela ovisi maksimalna razlučivost monitora

♦ taj broj ujedno predstavlja i najveći mogući broj piksela koji mogu biti vjerno

prikazani na ekranu

► Logički piksel = elementarna točka neke slike (kao npr. na slici slova A dolje)

♦ slika je definirana konačnim i nepromjenjivim brojem

točaka (log. piksela)

♦ kako monitor može raditi na različitim razlučivostima,

tako se i prikaz slike mora prilagođavati razlučivosti

monitora ukoliko želimo zadržati identične dimenzije

slike na ekranu

♦ iz toga je očito da odnos logičkih i fizičkih piksela nije uvijek 1:1, nego je najčešće

1:N – za jedan logički piksel potrebno je više fizičkih piksela

Informatika 1 46

IZLAZNE JEDINICE - MONITOR – LCD

► LCD ekran - matrica LCD elemenata baziranih na tekućim kristalima; element matrice -

jedna točka na ekranu

► Slika se stvara na temelju konstantnog bijelog pozadinskog svjetla, koje prolazi kroz matricu

sa LCD elementima

♦ Pojedini LCD element može propustiti ili blokirati prolazak pozadinskog osvjetljenja,

čime je pojedinu točku na ekranu moguće "upaliti" ili "ugasiti”

► Građa LCD elementa

♦ polarizirajući filtri s prednje i stražnje strane -

jedan propušta svjetlo u horizontalnom smjeru,

a drugi u vertikalnom

♦ između polarizirajućih filtara nalaze se dva

posebno obrađena sloja koji služe za

poravnavanje molekula tekućih kristala

♦ U “sendviču” tih slojeva nalaze se molekule tekućih kristala

♦ Slojevi za poravnanje okrenuti su jedan prema drugom pod kutom od 90 stupnjeva -

zahvaljujući tome se tekući kristali, smješteni između ta dva sloja, poravnavaju u

obliku spirale (heliksa)

► “Upaljena” točka:

♦ Prvi polarizirajući filtar propušta samo vertikalnu komponentu svjetlosti

♦ Prolaskom kroz molekule tekućih kristala u prirodnoj (spiralnoj) formaciji, svjetlost se

zakreće u smjeru orijentacije molekula tekućih kristala

♦ Zahvaljujući postupnom spiralnom zakretanju molekula tekućih kristala između dva

sloja, i zraka svjetlosti se isto tako postupno zakreće za 90 stupnjeva

♦ Zbog toga zraka svjetla pada pod ispravnim kutom na drugi polarizator, pa zraka prolazi

kroz LCD element i ta je točka “upaljena”

► “Ugašena" točka:

♦ Molekule tekućih kristala pod utjecajem električnog napona mijenjaju orijentaciju

♦ Iz spiralnog oblika će pod utjecajem napona prijeći u linearni oblik

♦ U tom slučaju zraka svjetlosti koja je prošla kroz prvi polarizator neće promijeniti svoju

orijentaciju, pa će pod neizmijenjenim kutom pasti na drugi polarizator

♦ Kako je on okrenut okomito u odnosu na prvi polarizator, neće propustiti zraku

svjetlosti i takva će točka na ekranu biti “ugašena”

Informatika 1 47

► Stupanj “izravnanja” orijentacije molekula ovisi o veličini

napona

♦ Kontrolom jačine napona se kontrolira količina

propuštene svjetlosti kroz izlazni polarizator, pa neka

točka može biti manje ili više “upaljena”

► Način iscrtavanja slike - uključivanjem ili isključivanjem

svakog pojedinog LCD elementa; ovisno o tome kako je

riješen taj problem, razlikuju se dvije osnovne vrste LCD ekrana:

♦ Pasivni LCD ekrani

♦ Aktivni LCD ekrani

► Pasivni LCD ekrani

♦ LCD elementi poslagani u matricu spojeni su na el. Vodiče - za svaki redak i svaki

stupac matrice postoji po jedan vodič

♦ Propuštanjem struje kroz točno određeni red i stupac “gasi” se jedan LCD element

♦ Propuštanje struje u vodiče se kontrolira pomoću tranzistora

► Potreban je po jedan tranzistor za svaki red i svaki stupac

► Pasivni LCD ekrani (nastavak)

♦ Slika se iscrtava redak po redak

► Pod naponom se drži vodič za prvi redak, te se istovremeno propusti napon

kroz potrebne vodiče po stupcima

► Prelaskom na idući redak, prethodni gubi napon, pa LCD elementi vrlo

kratko ostaju u definiranom stanju – tj. “ugašeni” pikseli vrlo brzo postaju

prozirni. Zbog brzine postupka iscrtavanja, ljudsko oko ne registrira taj

problem, ali:

► Kontrast i svjetlina dobivene slike su slabi

► Slaba je vidljivost slike pod imalo većim kutem gledanja

► Aktivni LCD ekrani

♦ Problem pasivnih ekrana je riješen tako da svaki LCD element ima svoj kontrolni

tranzistor, koji može propuštati struju toliko dugo koliko je potrebno

► Time je omogućena slika s punim kontrastom boja i daleko većim kutom

gledanja na ekran

Informatika 1 48

IZLAZNE JEDINICE – PISAČ

► Pisači su izlazne jedinice koje zapisuju podatke na papirnate medije ili folije

► Prema načinu na koji se stvara ispis, pisače je moguće podijeliti na dvije glavne skupine:

♦ Pisače s udarcem, i

♦ Pisače bez udarca

Pisači s udarcem

► Starija su generacija pisača i danas se rjeđe koriste

♦ Pisači s bubnjem, s lancem, s lepezom, s kuglom – gotovo su nestali

♦ Još se često koriste matrični pisači (Dot-Matrix printers)

► POS (Point Of Sale) sustavi, tj. 'pametne' blagajne za ispis računa

► Uredsko poslovanje - zakonodavac propisuje obveznu izradu većeg broja

kopija nekog dokumenta, a jedino pisač s udarcem omogućava istovremeni

ispis većeg broja kopija (mehanički udarac + korištenje indigo-papira – kao

na mehaničkim pisaćim strojevima)

Matrični pisači

► Ispis pomoću glave za pisanje - u glavi se nalazi određeni broj iglica (tipično 9 ili 24),

raspoređenih u pravokutnu matricu

► Glava se nalazi na pomičnom mehanizmu, koji pomiče glavu s lijeva na desno i natrag - ispis

jednog retka teksta

► Iglice iz glave za pisanje udaraju po vrpci (ribbon) natopljenoj tintom, koja je smještena

između glave i papira (slično kao kod pisaćeg stroja)

♦ Ispis pojedinog znaka ili dijela slike se oblikuje tako da se istovremeno aktiviraju one

iglice u glavi koje su potrebne za oblikovanje pojedinog slova ili dijela crteža

♦ Nakon ispisa jednog retka, glava se vraća na početak reda, a valjak vertikalno pomiče

papir za jedan redak

► Tekstualni način rada

♦ Ispis slova, brojeva i specijalnih simbola i znakova (npr. po ASCII tablici znakova)

♦ U ROM memoriji pisača su u obliku bitmape definirani izgledi svakog znaka – na

temelju takve definicije znaka aktiviraju se potrebne iglice u glavi pisača, kako bi se

ispisao potrebni znak

Informatika 1 49

► Grafički način rada

► Točku po točku se iscrtava bitmapirana slika

koju mu šalje računalo

► Rezolucija matričnog pisača

♦ Izražava se u broju znakova (slova) po inču – cpi (Characters Per Inch)

Pisači bez udarca

► Zapis na papiru ne realiziraju mehaničkim udarcima, već na razne druge načine

► Kvaliteta ispisa teksta i slike je superiorna u odnosu na pisače sa udarcem

► U pisače bez udarca ubrajaju se sljedeće vrste pisača:

♦ Laserski pisači

♦ Tintni (ink-jet) pisači

♦ Termalni pisači (kod fax uređaja)

♦ Solid-ink pisači

♦ Sublimacijski pisači, itd.

► Rezolucija pisača bez udarca - izražava se kao broj točaka po inču (dpi – Dots Per Inch) koje

pisač može ispisati na medij

♦ Tipične rezolucije laserskih pisača kreću se od 600 do 2400 dpi

♦ Rezolucije tintnih pisača kreću se od 600 do 4800 dpi

IZLAZNE JEDINICE – LASERSKI PISAČ

► Način rada im je uvelike sličan fotokopirnom stroju

► Zadatak - prenijeti rastersku sliku iz računala na papir (i tekst i slike se “iscrtavaju”, tj.

tretiraju se istovjetno – kao slike)

► Osnovni dijelovi

♦ Izvor laserske zrake

♦ Sustav leća i ogledala za

usmjeravanje laserske zrake

♦ Fotosenzitivni bubanj

♦ Toner

♦ Elektrode za nanošenje

statičkog naboja na bubanj i

papir

♦ Niz pomoćnih valjaka za

fiksiranje tonera i transport

papira

Informatika 1 50

► Način rada – ponavljajući ciklusi

♦ Rasterska slika se laserskom zrakom postupno, uz pomoć leća i ogledala, prenosi na

fotoosjetljivi bubanj

♦ Bubanj konstantno rotira, a mjesta na kojima mora biti vidljiva točka pogođena su

laserskom zrakom i mijenjaju naboj – formira se mreža poz. i neg. naboja,

oblikovana poput polazne rasterske slike

♦ Rotacijom bubnja, mjesta s promijenjenim nabojima dolaze do kazete s tonerom

► Toner - iznimno fini crni prah, koji ostavlja fizički trag zapisa na papiru

♦ Naboj čestica tonera je suprotan “pogođenim” mjestima na bubnju – čestice tonera

se priljepljuju na bubanj – na bubnju je formirana slika

♦ Daljnjom rotacijom bubnja čestice tonera dolaze u kontakt s papirom

► Papir je nabijen suprotnim nabojem od tonera – čestice tonera se odvajaju od

bubnja i lijepe za papir, te je slika prenesena na papir

♦ Papir s tonerom putuje prema komori za fiksiranje tonera

► visoka temperatura i tlak tale toner i njegove čestice se fizički priljepljuju za

papir

► Shematski prikaz

IZLAZNE JEDINICE – TINTNI PISAČ

► Zapis na papiru stvara pomoću mikroskopski sitnih kapljica tinte, koje se izbacuju iz glave za

ispis

♦ Kao i laserski pisači, rade isključivo u grafičkom načinu rada, tj. Isctravaju i tekst i

slike kao bitmape

Informatika 1 51

► Princip rada

♦ Glava za ispis prelazi horizontalno preko medija za ispis

♦ U glavi se nalazi veći broj mikroskopski tankih cjevčica

♦ Na potrebnim mjestima će kroz određene cjevčice mehanizam u glavi za pisanje

izbaciti sićušne kapljice tinte (promjera 50 do 60 mikrometara) odgovarajućih

osnovnih boja

♦ Kapljice boje upijaju se u papir i miješanjem stvaraju točkicu određene boje

♦ Jednim prolazom glave po širini papira ispisuje se više redaka, jer su cjevčice u glavi

posložene u više redaka i stupaca

► Ovisno o tehnologiji izrade glave za ispis, razlikuju se dvije osnovne vrste tintnih pisača

♦ Pisači s termičkom glavom, i

♦ Pisači s piezo-električnom glavom.

Tintni pisač s termičkom glavom

1. Za izbacivanje kapljica tinte koristi se toplina

2. Grijač u vrlo kratkom intervalu snažno zagrije

tintu, te prestaje sa zagrijavanjem

3. Neposredno pored grijača nastaje mjehurić tinte

koji se vrlo brzo širi

4. U određenom trenutku mjehurić eksplodira i kroz

cjevčicu se izbacuje kapljica tinte

5. Hlađenjem elementa za zagrijavanje, mjehurić tinte se urušava, čime se u glavi stvara

zrakoprazni prostor, koji iz spremnika uvlači novu količinu tinte.

6. Tinta mora biti otporna na toplinu, tj. Ne smije promijeniti kemijska svojstva pod utjecajem

topline

Informatika 1 52

Tintni pisač s piezo-električnom glavom

► kod piezo-električnih glava se za izbacivanje kapljica ne

koristi toplina, već vibracije tzv. piezo-kristala

♦ piezo-kristali vibriraju kad kroz njih prolazi

struja

► glava za ispis sastoji se od brojnih piezo-elemenata, od

kojih je svaki zadužen za izbacivanje kapljice tinte kroz

jednu cjevčicu

► vibracije piezo-kristala se preko fleksibilne membrane

prenose na tintu, čime se iz cjevčice izbacuje kapljica

tinte

ULAZNE JEDINICE – SKENER

► Koriste se za digitalizaciju i unos u računalo podataka pohranjenih na papirnatim ili sličnim

analognim medijima

► Princip rada svih vrsti skenera vrlo je sličan radu fotokopirnog stroja

► Postoji više kategorija skenera, a najčešće ih dijelimo na:

♦ Stolne (flatbed) skenere

♦ Ručne (handheld) skenere

♦ Protočne skenere

♦ Skenere za posebne namjene

► Stolni skeneri

♦ Najčešće korištena vrsta skenera

► Skenira se jedna po jedna stranica medija

► Stranica koja se skenira je nepomična, a pomiče se glava za skeniranje

► Ručni skeneri

♦ Minijaturni skeneri - lako su prenosivi, ali daju lošije rezultate

► skenirani medij je nepomičan, a čovjek mora ručno povlačiti skener preko

medija

► Protočni skeneri

♦ Skeneri velikih dimenzija - profesionalna primjena i skeniranje izrazito velikih medija

(format A0 i više)

Informatika 1 53

► glava za skeniranje je stacionarna, a pomiče se medij kojeg treba skenirati

► Posebne vrste skenera – specijalizirani zadaci

♦ tipičan primjer - čitač bar-koda

ULAZNE JEDINICE - SKENER - PRINCIP RADA

► Primjer stolnog skenera

♦ Medij se polaže na ravnu staklenu površinu na vrhu skenera

♦ Pomični izvor usmjerene konstantne bijele svjetlosti u kućištu, koji se u koracima

pomiče u vertikalnom smjeru, postupno obasjava medij liniju po liniju

♦ Svjetlost reflektirana od medija se kroz sustav prizmi, zrcala i leća usmjerava na niz

fotoosjetljivih senzora (tzv. glavu za skeniranje)

► Skener u boji – svjetlost prvo prolazi kroz crveni, plavi ili zeleni filtar

♦ Kao fotoosjetljivi senzori najčešće koriste tzv. CCD (Charge-Coupled Device)

senzori

► Uloga CCD senzora je pretvaranje svjetlosti u električni signal - jači intenzitet

svjetlosti stvara električni signal većeg napona

♦ Analogni naponski signal se (analogno-digitalnom konverzijom) pretvara u diskretnu

digitalnu vrijednost, koja predstavlja podatak o boji određene točke na analognom

mediju

► Primjer stolnog skenera – shematski prikaz

Informatika 1 54

FONT

► Fontom nazivamo skup znakova istog pisma (npr. Courier), istog stila (npr. kosi, eng. italic),

iste težine poteza (npr. masni, eng. bold), te veličine (npr. 12 točaka)

► Font i pismo nisu istovjetni pojmovi

♦ Font se odnosi na sve znakove raspoložive u određenoj veličini, stilu i težini

♦ Pismo označava oblik (dizajn) znakova – serifna, neserifna, dekorativna, specijalna

pisma itd.

VRSTE FONTOVA

► Prema širini znakova

♦ Neproporcionalni fontovi

► Jednaka širina svih znakova

► Npr. font Courier ("Tekst pisan fontom Courier")

♦ Proporcionalni fontovi

► Različita (prirodna) širina znakova

► Npr. fontovi Arial, Roman, Verdana, ... ("Tekst pisan fontom Arial")

► Prema tehnologiji izrade

♦ Vektorski (obrisni) fontovi

► Oblik znaka definiran je matematičkim krivuljama; Promjena dimenzija znaka

je moguća bez gubitka kvalitete

♦ Rasterski (bitmap) fontovi

► Svaki je znak opisan jedinstvenim uzorkom bitova (uzorkom točaka,

bitmapom); Promjenom dimenzija znaka gubi se kvaliteta

Informatika 1 55

VEKTORSKO-RASTERSKA PRETVORBA (RIP)

► Problem ispisa vektorski definiranih sadržaja na uređajima koji razumiju jedino rasterski

oblik zapisa (većina ekrana i pisača)

♦ Postupak pretvaranja vektorskog zapisa u bitmapu naziva se RIP (Raster Image

Processing)

♦ sam postupak se izvodi pomoću RIP (Raster Image Processor) softvera

► RIP može biti prisutan u raznim "oblicima“

♦ ugrađen u pisače, kao dio softvera u ROM memoriji pisača

♦ kao zasebna aplikacija, koja se instalira na korisnikovo računalo ili mrežni poslužitelj

♦ kao zasebni uređaj, tj. posebno dizajnirano računalo, čija je jedina uloga rasterizacija

vektorskih zapisa – zbog brzine i skupoće, primjenjivo je samo u najzahtjevnijim

situacijama

ORGANIZACIJA PROCESORSKOG VREMENA

► Odnosi se na obradu podataka na višoj razini – ne na pojedinačne instrukcije, već na procese

i programe kao cjeline, te skupine programa

► Različiti oblici organizacije (tj. korištenja) procesorskog vremena

♦ Sekvencijalna obrada

♦ Sekvencijalna obrada s prioritetom

♦ Timesharing (obrada s podjelom vremena)

♦ Multiprograming ili multitasking (multiprogramska obrada)

♦ Multiprocessing (multiprocesiranje)

♦ Real-time processing (obrada u stvarnom vremenu)

► Sekvencijalna obrada

♦ Slijedno izvođenje programa ili procesa, jednog za drugim, u skladu s pristizanjem

zahtjeva za izvođenjem

♦ Procesor posvećuje svoje cjelokupno vrijeme jednom procesu dok ga ne izvrši do

kraja

♦ Problem efikasnosti

Informatika 1 56

► Sekvencijalna obrada s prioritetom

♦ Slijedna obrada, ali važniji procesi dobivaju veći prioritet i prije dolaze na red za

obradu

♦ Dodjela prioriteta je automatska (na razini OS-a) ili ručna (administrator sustava)

► Timesharing

♦ Svakom programu (procesu) dodjeljuje se diskretni, kratki vremenski odsječak za

izvođenje i obradu

♦ Velika brzina izmjene vremenskih

odsječaka – stvoren je privid

istovremene obrade većeg broja

programa

► Multiprogramska obrada (Multiprogramming, Multitasking)

♦ Kod višezadaćnih i višekorisničkih OS-ova; slično time-sharing obradi, uz sljedeće

razlike:

► Različito trajanje vremenskih odsječaka po procesu

► Redoslijed izvođenja nije zadan poretkom pristizanja zahtjeva za izvođenjem

(prioriteti, itd.)

► Procesi većeg prioriteta mogu prekinuti izvođenje procesa s nižim

prioritetom (programski prekidi)

► Multiprocesiranje (Multiprocessing)

♦ Karakteristična za računala koja posjeduju više procesora

♦ Stvarna istovremenost u obradi procesa

► Obrada u stvarnom vremenu (Real-Time Processing)

♦ Potpuno drugačija koncepcija – najčešće se koriste u industrijskom okruženju gdje

obrada mora biti izvedena u zadanom vremenskom okviru

♦ Različita osjetljivost sustava na probijanje vremenskih rokova

► "Tvrda" real-time obrada – vremenski kritični sustavi, apsolutno poštivanje

vremenskih ograničenja (npr. autopilot u avionu)

► "Meka" real-time obradu – vremenska ograničenja postoje, ali probijanje

rokova nije kritično za funkcioniranje sustava

♦ Koriste se posebna računala i posebni operacijski sustavi, prilagođeni poštivanju

strogih vremenskih ograničenja

Informatika 1 57

TEHNOLOGIJE IZRADE ELEMENATA RAČUNALA

► TRANZISTORI = osnovni gradivni elementi poluvodičkih sklopova, služe za realizaciju

svih elektroničkih sklopova

♦ izrađuju se od poluvodičkih materijala (najčešće korišteni materijal je silicij)

♦ vodljivost poluvodiča ovisi o postojanju tzv. nosioca naboja:

► Elektrona

► Protona

► Dvije osnovne tehnologije za izradu tranzistora:

♦ Unipolarna (MOS)

♦ Bipolarna

► MOS FET (Metal Oxyde Semiconductor Field Effect Transistor) tehnologija

♦ tranzistori rade na principu djelovanja električnog polja koje se javlja protjecanjem

struje između dviju elektroda

♦ Razlikujemo tri osnovne izvedbe MOS tranzistora:

► NMOS

♦ Nositelj naboja su elektroni (negativni naboji – N tip MOS

tranzistora – NMOS)

♦ Osnovu čini podloga (supstrat) izrađena od p-tipa poluvodiča

♦ Na podlozi su izrađene dvije elektrode od n-tipa poluvodiča

♦ Na površini podloge je smješten izolator (najčešće silicijev dioksid), a

sa izolatorom je povezana upravljačka elektroda (gate)

► PMOS

♦ Nositelj naboja su protoni (pozitivni

naboji – P tip MOS tranzistora –

PMOS)

♦ Za razliku od NMOS tranzistora,

ovdje je supstrat izrađen od n-tipa

poluvodiča, a izvor i ponor od p-tipa

poluvodiča

Informatika 1 58

► CMOS

► Za realizaciju CMOS tranzistora se koristi jedan NMOS i

jedan PMOS tranzistor

► NMOS i PMOS tranzistor su povezani zajedničkim

ponorom

ORGANIZACIJA UNUTRAŠNJE MEMORIJE

► Razlikujemo tri tipične organizacije memorije:

♦ Dvodimenzionalnu

♦ Trodimenzionalnu

♦ Memoriju organiziranu u stack

Dvodimenzionalna organizacija (2D)

♦ Memorijski elementi su poredani u pravokutnu matricu, jedan do drugog i jedan

ispod drugog, tako da, gledajući horizontalno tvore jednu riječ (jednu memorijsku

lokaciju), a gledajući vertikalno predstavljaju skup bitova iste težine

► Broj redaka određuje broj (kapacitet) riječi koje je moguće pohraniti u tako

organiziranu memoriju

► Broj stupaca određuje širinu riječi koju je moguće pohraniti

♦ Aktivirani redak sudjeluje u akciji čitanja ili pisanja

♦ Nedostatak: velik broj vodova potrebnih za realizaciju memorije

Informatika 1 59

Trodimenzionalna organizacija (3D)

♦ Selekcija pojedine memorijske ćelije ne izvrši se do kraja u posebnom vanjskom

adresnom dekoderu, već se dio selekcije izvodi i u samoj memorijskoj ćeliji

♦ Adresni registar i dekoder podijele se na dvije polovice - jedna za horizontalno

adresiranje, a druga za vertikalno

♦ Duljina riječi predstavlja treću dimenziju memorije

► Adresira se samo ona memorijska ćelija koja je na presjecištu odabrane

horizontalne i vertikalne linije

♦ Nedostatak: u jednoj ravnini trodimenzionalne memorije adresira se samo jedna

memorijska ćelija

2D MEMORIJA – ORGANIZACIJA JEDNE MEMORIJSKE ĆELIJE

Informatika 1 60

Memorija organizirana u stack

♦ Pristup podacima omogućen je samo odgovarajućim redoslijedom

♦ Stack memorije rade po LIFO (Last In First Out) principu

► Realizacija memorije organizirane u stack:

► Unutar procesora, pomoću niza šift-registara

► Unutar radne memorije, uz pomoć SP registra

♦ Realizacija pomoću šift-registara:

► Za stack memoriju širine N bita trebamo N šift registara

► "Dubina" takve stack memorije ovisi o duljini šiftera

► Operacije sa stackom se svode na elementarne operacije šiftera – posmak

ulijevo i udesno

3D MEMORIJA – ORGANIZACIJA JEDNE MEMORIJSKE ĆELIJE

PRIMJER ORGANIZACIJE TRODIMENZIONALNE MEMORIJE

Informatika 1 61

♦ Realizacija pomoću SP (Stack Pointer) registra:

► realizira se u RAM memoriji korištenjem određenog broja memorijskih

lokacija

► operacije nad stakom realiziraju se prividnim pomicanjem vrha staka

► pomak se ostvaruje promjenom adrese koja pokazuje na vrh staka, a ta adresa

je zapisana u SP registru u procesoru

► Pri svakoj push ili pop operaciji se poveća ili umanji sadržaj SP registra, koji na

taj način uvijek pokazuje na vrh staka

VRSTE UNUTRAŠNJIH MEMORIJA

► ROM (Read Only Memory) - omogućava jedino čitanje pohranjenih sadržaja

► RAM (Random Access Memory) - omogućava i čitanje i pisanje

ROM memorija

► Služi za pohranu programa i podataka koji se za vrijeme rada računalnog sustava smiju samo

čitati

► Sadržaj ROM memorije određuje konstruktor računala i fiksno je definiran prilikom

proizvodnje računala

► Primjer – BIOS (Basic Input-Output System) ROM memorija

► Vrste ROM memorija:

♦ Programabilne ROM memorije (PROM – Programmable ROM) – moguće ih je

programirati od strane krajnjeg korisnika korištenjem posebnih uređaja

(programatora)

♦ Izbrisive ROM memorije (EPROM – Erasable PROM) – za razliku od PROM

memorija, moguće ih je više puta programirati zahvaljujući mogućnosti brisanja već

upisanih sadržaja

RAM memorija

► naziva se i radna memorija – služi kao spremnik u koji se tijekom obrade računalnih

programa pohranjuju instrukcije, operandi, rezultati obrade, ...

► s obzirom na realizaciju elementarnih memorijskih ćelija razlikujemo dvije izvedbe RAM

memorije:

Informatika 1 62

♦ Statičku RAM memoriju

► Elementarna memorijska ćelija je sastavljena od jednog bistabila koji pamti

zadano stanje sve dok ne dođe vanjski signal koji zahtijeva promjenu stanja

bistabila (0 ili 1)

► Upisane podatke nije potrebno periodički osvježavati

♦ Dinamičku RAM memoriju

► Elementarna ćelija koja pamti jedan bit se temelji na postojanju električnog

naboja na kondenzatoru

► Dotični naboj se postepeno izbija, pa se, da ne bi došlo do gubitka

podataka, naboj mora periodički obnavljati

Informatika 1 63

UVOD U PROGRAMIRANJE

UVOD

♦ Temeljni princip rada računala je izvođenje niza instrukcija koje su unaprijed pripremljene i

pohranjene u radnoj memoriji računala.

♦ Niz takvih instrukcija koje čine zaokruženu cjelinu, tj. obavljaju neki zadatak ili funkciju

bitnu za krajnjeg korisnika, naziva se programom.

♦ Postupak izrade programa u nekom od programskih jezika naziva se programiranjem.

♦ Programi su računalna implementacija nekog procesa iz realnog (poslovnog) sustava.

a. Da bismo od poslovnog procesa došli do njegove računalne implementacije tj.

programa, potrebno je proći kroz sljedeće korake:

i. Analiza realnog sustava

1. raščlaniti funkcije realnog sustava na procese i podprocese, te odlučiti

koji će od njih biti informatizirani

2. identificirati tokove podataka među (pod)procesima

ii. Oblikovanje programskog sustava

1. podijeliti (pod)procese na elementarne zadatke (tj. procedure)

2. definirati ulazne i izlazne podatke za svaku od procedura

iii. Realizacija programskog sustava

1. opis svake od procedura pomoću algoritama (konačni niz koraka koji

u konačnom vremenu jednoznačno dovode do rješenja problema)

koji se za potrebe programiranja najčešće iskazuju u "polu-

formalnoj/polu-slobodnojezičnoj formi" (npr. pomoću pseudokoda)

ili u grafičkom obliku (npr. blok-dijagrami) ili u matematičkom

obliku.

2. implementacija algoritama u konkretnom programskom jeziku i

njihovo povezivanje u cjelinu = programiranje

3. testiranje programskog sustava – provjerava se ispravnost rada

programskog sustava, pri čemu se koriste prethodno definirani ulazni

podaci

4. izrada dokumentacije programskog sustava

5. uvođenje u rad

♦ Programski jezik bismo najkraće mogli definirati kao formalni umjetni jezik koji krajnjim

korisnicima (ljudima) omogućuje izdavanje uputa računalu.

Informatika 1 64

PROGRAMSKI JEZIK

♦ Programski jezik sastoji se od sljedećih elemenata (dijelova):

a. Ključne riječi

b. Pravila pisanja naredbi (sintaksa)

c. Editor programskog koda

d. Program prevoditelj

Ključne riječi

e. Još ih nazivamo i naredbama

f. Svaka naredba izvršava određeni elementarni zadatak na nivou programskog jezika

g. Kombiniranjem ključnih riječi u veće cjeline nastaje izvorni kod programa, tj.

program napisan u određenom programskom jeziku

Pravila pisanja naredbi (sintaksa)

h. Program nastaje povezivanjem većeg broja naredbi nekog programskog jezika u veće

cjeline, ali se pri tome treba držati određenih pravila:

1. naredbe se ne mogu i ne smiju nizati bilo kakvim redoslijedom, već

logički ispravnim redoslijedom (semantička ispravnost)

2. svaka naredba mora biti zadana na pravilan način – u skladu s

pravilima (sintaksom) pisanja naredbi za dotični programski jezik

a. kod pisanja naredbi treba pripaziti na upotrebu velikih i malih

slova

b. neke naredbe zahtijevaju argumente (parametre) za ispravan

rad, a neke ne – treba pripaziti da se navedu svi potrebni

argumenti, i to u ispravnom redoslijedu

Editor programskog koda

1. razvojno programsko okruženje unutar kojeg pišemo ključne riječi programskog jezika

prema zadanim pravilima pisanja naredbi (= izvorni kod programa)

2. izvorni kod programa možemo pisati i u najobičnijem editoru teksta, a možemo ga pisati

i unutar sofisticiranih razvojnih okruženja (IDE – Integrated Development Environment), koja,

pored mogućnosti uređivanja teksta, u jedno okruženje integriraju i:

isticanje ključnih riječi programskog jezika

podršku za prevođenje i/ili izvršavanje programa

podršku za ispravljanje pogrešaka u programu (debugging), itd.

Informatika 1 65

Program prevoditelj

1. Izvorni kod napisan u nekom programskom jeziku razumljiv je čovjeku, ali ne i računalu

koje će ga morati izvršavati

izvorni kod programa mora se prevesti u računalu razumljiv strojni oblik, tj. u

strojne instrukcije (nizove 0 i 1)

s obzirom na vrstu i namjenu programskog jezika, prevođenje se može izvršiti

kao kompiliranje (kompajliranje) ili kao interpretiranje – u tu se svrhu koriste

programi prevoditelji – kompajleri ili interpreteri

Kompajleri prevode izvorni kod programa kroz sljedeće korake:

♦ učitavanje kompletnog izvornog koda programa

♦ leksička (semantička) i sintaktička analiza izvornog koda –

pronalaženje pogrešaka u programu

♦ konstrukcija radnog programa – zamjena naredbi u izvornom kodu sa

strojnim instrukcijama – faza prevođenja u užem smislu

♦ optimizacija prevedenog programa

♦ dobivanje izvršne datoteke

Rezultat postupka kompajliranja je izvršna datoteka (execute datoteka) s

prevedenim strojnim instrukcijama.

♦ Postupak prevođenja se radi samo jednom, a izvršna datoteka se

može pokretati bilo kada, bez potrebe za ponovnim prevođenjem

izvornog koda u strojne instrukcije.

Kompajlerski jezici – C, C++, C#, Pascal, ...

Interpreteri prevode izvorni kod programa kroz sljedeće korake:

1. učitavanje jedne linije izvornog koda programa

2. leksička i sintaktička analiza učitane linije izvornog koda

3. prevođenje naredbi iz učitane linije izvornog koda u strojne

instrukcije

4. izvođenje strojnih instrukcija iz prevedene linije izvornog koda

5. čitanje iduće linije izvornog koda i ponavljanje kompletnog

postupka opisanog u koracima 2-5 sve dok se ne izvede i zadnja

linija izvornog koda

Informatika 1 66

♦ Rezultat postupka interpretiranja je izvršeni program, tj. obrada

podataka

ne stvara se izvršna datoteka, nego se prilikom svakog pokretanja

programa mora napraviti i prevođenje izvornog koda u strojne

instrukcije postupkom interpretiranja.

♦ Interpreterski jezici – Basic, PHP, ASP, Python ...

GENERACIJE PROGRAMSKIH JEZIKA

1. Prva generacija – strojni jezici – komunikacija u obliku nizova 0 i 1.

2. Druga generacija – asemblerski jezici – počeci simboličkih programskih jezika

3. Treća generacija – viši programski jezici – odmak od strojne osnovice, programiranje na

višoj razini

4. Četvrta generacija – deklarativno programiranje – ne navodi se detaljno kako program

treba raditi, već što treba raditi – generatori

5. Peta generacija – računalo rješava probleme bez pomoći programera – umjetna

inteligencija

Prva generacija

– za komunikaciju s računalom programeri su morali pisati programe u strojnom jeziku – u

obliku nizova 0 i 1.

Svaka naredba morala je biti iskazana u čistom binarnom sustavu

Programski jezik prve generacije zove se strojni jezik

Prednosti

nema potrebe za prevođenjem u strojni jezik

brzina izvršavanja, …

Nedostaci

Vrlo spor i naporan proces programiranja

Čitljivost takvog koda?!?

Druga generacija

– radi pojednostavljenja komunikacije između programera i računala, počeli su se razvijati

tzv. simbolički jezici, koji su bili prilagođeniji čovjeku.

Tipičan primjer programskog jezika druge generacije je asembler

Informatika 1 67

Instrukcije (tj. naredbe) u asembleru se zapisuju pomoću simbola (tj. mnemonika) –

npr. instrukcija za zbrajanje zadaje se mnemonikom ADD umjesto niza 0 i 1 kojim bi

tu istu instrukciju zadali u strojnom jeziku

Odnos između asemblerskih instrukcija i strojnih instrukcija u pravilu je 1:1

Proces prevođenja iz asemblera u strojni jezik je direktan – svaka asemblerska

instrukcija neposredno se preslikava u odgovarajuću strojnu instrukciju

Asembler je po razini programiranja vrlo blizak strojnom jeziku

Prednost – velika brzina i

jednostavnost prevođenja, te

velika brzina izvođenja

programa

Nedostatak – i dalje je

programiranje vrlo

kompleksno

Treća generacija

– programski jezici treće generacije (tj. viši programski jezici) bitno su olakšali rad čovjeka i

njegovu komunikaciju s računalom budući da su instrukcije vrlo slične govornom engleskom

jeziku ili standardnoj matematičkoj notaciji.

Predstavnici jezika treće generacije su: Basic, Pascal, C, C++, Fortran, PHP, ASP,

Python, C#, …

Postupak prevođenja naredbi u strojni jezik je daleko složeniji postupak

Jednom naredbom višeg programskog jezika izvršava se posao za koji je potrebno

više (mnogo) strojnih instrukcija – odnos 1:N

Četvrta generacija

– teži se još većem pojednostavljenju procesa programiranja

naglasak je na opisivanju onoga što neka procedura iz realnog sustava radi, a ne na

implementaciji konkretnih algoritama potrebnih za realizaciju same procedure

predstavnici tih jezika su razne vrste upitnih jezika, generatora izvještaja, generatora

aplikacija i sl.

Informatika 1 68

problem – jezici nisu opće namjene, već su specijalizirani samo za određene

problemske domene

Peta generacija

– kako omogućiti računalu da riješi bilo kakav problem bez pomoći programera?

zadatak korisnika ("programera") je odrediti ograničenja i uvjete kojima mora

udovoljavati rješenje nekog problema

jezik pete generacije mora sam, potpuno automatski, kreirati i implementirati

algoritam potreban za rješavanje problema u okviru zadanih uvjeta i ograničenja

potpuna automatizacija do današnjeg dana nije ostvarena!

OSNOVNE PROGRAMSKE STRUKTURE

Kod razvoja kompleksnijih programa poželjno je organizirati budući program na papiru,

koristeći pri tome

a. mješavinu govornog jezika i izabranog programskog jezika (tj. pseudokod) za opis

elementarnih postupaka, ili

b. grafički prikaz pomoću simbola koji predstavljaju elementarne postupke (tj. blok-

dijagram), ili

c. oboje

Većinu problema je u konačnici moguće dekomponirati na nekoliko osnovnih programskih

struktura:

a. Slijed (sekvenca)

b. Grananje (selekcija, izbor)

c. Ponavljanje (iteracija, petlja)

Povezivanjem i kombiniranjem osnovnih programskih struktura u skladu s problemom

kojeg treba riješiti dobivamo željeni program na razini pseudokoda.

Konkretizacijom pseudokoda u ciljni programski jezik (zamjenom osnovnih struktura s

naredbama ciljnog programskog jezika) dobivamo željeni program u obliku izvornog koda.

Informatika 1 69

Blok dijagram – simboli

Slijed (sekvenca)

1. Slijed (sekvenca) – niz osnovnih naredbi unutar programa, koje se izvršavaju jedna za

drugom, onim redoslijedom kako su i zadane

Gledano u globalu, cijeli program je sekvenca – njegove se naredbe izvode slijedno,

od prve do posljednje, točno onim poretkom kojim su zadane u izvornom kodu

programa

2. Grananje – ovisno o ispunjenju nekog uvjeta, izvršava se jedan od više blokova (sekvenci,

nizova) naredbi

Grananje ima iznimno veliku ulogu kod određivanja koji će se niz naredbi sljedeći

izvršiti – tj. omogućava promjenu tijeka izvođenja programa

Bez uporabe grananja, svaki bi se program izvršavao strogo slijedno, naredbu po

naredbu, od prve do posljednje

Grananje omogućava da se neki nizovi naredbi u programu (tj. određene

"grane" u programu) izvršavaju samo ako je ispunjen zadani uvjet

Ako uvjet grananja nije ispunjen, pripadajuća "grana" naredbi neće biti

izvršena

Informatika 1 70

3. Ponavljanje (iteracija, petlja) – izvršava određeni blok (sekvencu) naredbi toliko dugo dok

je ispunjen neki uvjet

Ponavljanja (petlje) također imaju iznimno veliku ulogu kod promjene tijeka

izvođenja programa, tj. kod narušavanja osnovne sekvence u izvođenju programa

Petlja omogućava da se neki nizovi naredbi u programu ponavljaju više puta

uzastopce, toliko dugo dok je ispunjen zadani uvjet

Kad uvjet petlje više nije ispunjen, petlja završava i tijek programa se

nastavlja s prvom sljedećom naredbom nakon same petlje

Petlje s nepoznatim brojem ponavljanja – varijanta 1

Petlja s izlazom na vrhu

1. Prvo se ispituje točnost uvjeta za ponavljanje

2. Ako je uvjet ispunjen, izvodi se blok naredbi unutar petlje, a zatim se

bezuvjetno vraćamo na vrh petlje i na korak 1.

3. Ako uvjet nije ispunjen, blok naredbi unutar petlje se ne izvršava,

sama petlja završava s radom, a program se nastavlja prvom

sljedećom naredbom nakon petlje

Informatika 1 71

Petlje s nepoznatim brojem ponavljanja – varijanta 2:

Petlja s izlazom na dnu

Izvodi se cijeli blok naredbi unutar petlje, a tek se na kraju ispituje

točnost uvjeta za ponavljanje

Ako je uvjet ispunjen, vraćamo se na vrh petlje i na korak 1.

Ako uvjet nije ispunjen, petlja završava s radom, a program se

nastavlja prvom sljedećom naredbom nakon petlje

Petlje s poznatim brojem ponavljanja

blok naredbi unutar petlje izvršava se zadani broj puta

petlja sadrži brojač, čija se vrijednost na kraju svakog ciklusa petlje

povećava za zadanu vrijednost (najčešće za 1)

brojač se kreće u rasponu od m (donja granica) do n (gornja granica),

što znači da petlja ima ukupno n-m ciklusa

u prvom ciklusu petlje brojač poprima vrijednost m, u drugom ciklusu

vrijednost m+1, a u posljednjem ciklusu vrijednost n

nakon što brojač dosegne vrijednost n, petlja završava s radom i

program se nastavlja izvođenjem prve naredbe nakon petlje

Informatika 1 72

METODE PROGRAMIRANJA

Složenije aplikacije gotovo se nikada ne izrađuju u obliku jedne, monolitne cjeline

Složena problemska domena dijeli se na međusobno neovisne cjeline, tj. module koje

je moguće programirati neovisno

Gotovi moduli se kasnije povezuju u veće cjeline i postupno nastaje konačna složena

aplikacija

= modularno programiranje

Modularnoj izradi složenijih programa može se pristupiti prema dva metodološka pristupa

Top-Down (Odozgo prema dolje) metoda

Bottom-Up (Odozdo prema gore) metoda

Pristup "Od općenitijeg prema specifičnom"

Složeni problem se postepeno dekomponirana jednostavnije podprobleme (module),

oni na još jednostavnije podprobleme, itd. sve dok se ne dođe do razine na kojoj se

problemi (tj. moduli) mogu nezavisno programirati

Početni problem se prvo dekomponira na prvu razinu podproblema, s time

da su pri tome podproblemi još uvijek samo identificirani, a ne i detaljno

opisani = prva razina podproblema

Potom se svaki podproblem iz prve razine detaljizira i po potrebi dalje

dekomponira – opet se još niža razina podproblema samo identificira, bez

detaljiziranja

Postupak se ponavlja dok se ne dosegne željena razina detaljiz iranja

Pristup "Od specifičnog prema općenitijem"

Počinje se s detaljnim specifikacijama elementarnih problema (modula), koji se

potom implementiraju i povezuju u module više razine

Moduli više razine se dalje povezuju u module još više razine, sve dok se ne dobije

cjelina koja predstavlja rješenje cjelovitog problema

Izrada složenih aplikacija često zahtjeva timski i projektni rad većeg broja programera

Svaki se projekt raščlanjuje na manje segmente i programiranje tih segmenata povjerava se

pojedinačnim programerima

Glavni programer odgovoran je za rad čitavog tima, te ima svog pomoćnika koji ga

bilo kada može zamijeniti

Glavni programer i njegov pomoćnik imaju sljedeće zadatke:

Programiraju module najviših razina i najvažnije module nižih razina

Informatika 1 73

Kontroliraju module koje izrađuju ostali programeri u timu

Ostali programeri razvijaju module i funkcije nižih razina, prema specifikacijama koje

su dobili od glavnog programera

Uglavnom se preferira top-down metoda