Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

2. OSNOVNI PRINCIPI RAČUNALNE TEHNOLOGIJE

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "2. OSNOVNI PRINCIPI RAČUNALNE TEHNOLOGIJE"— Μεταγράφημα παρουσίασης:

1 2. OSNOVNI PRINCIPI RAČUNALNE TEHNOLOGIJE
Građa računala 2. OSNOVNI PRINCIPI RAČUNALNE TEHNOLOGIJE

2 Temelji Princip rada računala – temelj: Turingov teorijski model algoritmičkog stroja Slijedno interpretiranje simbolički opisane zadaće – algoritme Problem: Kako prikazivati simbole?

3 2.1 Turingov stroj Turingov stroj (1937. god.) – upravljačka jedinka koja može čitati i pisati simboličke podatke na vrpcu. Vrpca beskonačne duljine je podijeljena na spremnike. Svaki spremnik može sadržavati bilo koji konačan skup simbola.

4 Von Neumannov model

5 Računalo kao Turingov stroj
Računalo kao Turingov stroj koristi analogiju: upravljačka jedinica procesor (CPU) vrpca memorija (RAM) Simbolički podaci se predstavljaju prekidačkom tehnologijom – nizom 0 i 1.

6 2.2. Binarni brojevni sustav
Binarni brojevni sustav je zasnovan na potencijama broja 2, a znamenke koje koristi su 0 i 1. BINARNI BROJ (0,1) =“bit” za proizvoljnu bazu b – POZICIJSKI SUSTAV

7 Pretvorba brojevnih sustava
Pretvorba iz binarnog u dekadski brojevni sustav Pretvorba iz dekadskog u binarni brojevni sustav

8 Zadaci Primjer 2.1: Pretvori slijedeće binarne brojeve u dekadske:
100101 Primjer 2.2: Pretvori slijedeće decimalne brojeve u binarne: 201 19 1024

9 Prikaz negativnih cijelih brojeva

10 Prikaz negativnih cijelih brojeva
1. Ekcesivna notacija Ne podrazumijevaju svi bitovi u zapisu binarnog broja potenciju broja 2. Prvi bit (s desna) se koristi za predznak, a ostali za apsolutnu vrijednost tog broja. Pozitivni brojevi prikazuju se s početnim bitom 1, a negativni s 0. Brojevi su “simetrični” do na predznak s obzirom na 0.

11 Prikaz negativnih cijelih brojeva
1. Komplementarna notacija 2 su načina zapisa u ovoj notaciji: Komplement prema jedan - sve znamenke nekog binarnog broja se komplementiraju tj. 0 prelazi u 1 i 1 u 0. Novodobiveni broj je binarni zapis negativnog predstavnika polaznog broja. Dvostruki komplement – uz komplementaciju znamenki dodaje se još 1.

12 Zadaci Primjer 2.3: Odredite decimalnu vrijednost brojeva i u konvenciji predznaka. Primjer 2.4: Odredite 8-bitnu binarnu vrijednost broja -34 u komplementarnoj notaciji.

13 Decimalni zapis binarnog broja
Racionalni broj R se zapisuje kao niz binarnih znamenki odijeljenih binarnom točkom. BIN->DEC

14 Decimalni zapis binarnog broja
DEC->BIN Na sličan način kao što se pretvara cijeli broj u binarni s iterativnim dijeljenjem broja 2, tako se pretvorba iz racionalnog broja u binarni ostvaruje iterativnim množenjem s brojem 2.

15 Decimalni zapis binarnog broja
Zadaci: Riješite slijedeće primjere: iz bin u dec: , 0.0011 iz dec u bin: 0.47 15.635

16 Prikaz racionalnih brojeva
Racionalni brojevi se prikazuju u binarnom sustavu pomoću tzv. notacije pomičnog zareza ili pomične točke.

17 Prikaz racionalnih brojeva
Racionalni brojevi se prikazuju u binarnom sustavu pomoću tzv. notacije pomičnog zareza ili pomične točke.

18 Prikaz racionalnih brojeva
Primjer: Decimalni prikaz racionalnog broja u dekadskom sustavu. mantisa eksponent predznak Kod dekodiranja prvo se izdvoji mantisa i postavlja se zarez na početku s lijeve strane. ,0111 110=+(1*2 +0*1) Slijedeća 3 bita prikazuju eksponent u ekcesivnoj notaciji koji je jednak 2 što znači da pomičemo zarez 2 mjesta udenso pa imamo: 01,11 Binarna kombinacija ispred zareza definira cijeli broj 1, dok bitovi iza zareza prikazuju decimale po pravilu negativnih potencija od 2.

19 Zadaci Primjer 2.5: Odredite racionalnu vrijednost broja u 8-bitnom zapisu

20 Binarna aritmetika 1. Binarno zbrajanje primjer:
Isto kao i decimalno zbrajanje, prijenos za (1+1)

21 Binarna aritmetika Primjer zbrajanja 4-bitnog sloga sa zastavicom prijelaza (overflow flag) Prilikom zbrajanja binarnih slogova potrebno je obratiti pozornost na ispravnost rezultata tj. prelazi li rezultat raspon dozvoljenih brojeva. overflow i underflow.

22 Binarna aritmetika 1. Binarno oduzimanje primjer:
Oduzima se kao i kod decimalnog oduzimanja ili zbrajanjem dvojnog komplementarnog umanitelja.

23 Binarna aritmetika 1. Binarno množenje primjer:
Kod binarnog množenja djelomičan umnožak pomiče se za jedno mjesto ulijevo pri svakom uzimanju idućeg množitelja.

24 Binarna aritmetika 1. Binarno dijeljenje primjer:
Primjenom pravila binarnog oduzimanja i množenja može se obaviti binarno dijeljenje na isti način kao dijeljenje decimalnih brojeva.

25 Zadaci Zadatak 2.1: 11000111 (-57) +11011101 (-35) 00111001 - 11011101
(-35) (-92) x 101 : 11 =

26 Prikaz simboličkih podataka
Osim brojčanih vrijednosti računalo nam prikazuje i simbole. U tu svrhu razvijen je ASCII standard za prikaz podataka u računalu. ASCII (“American Standard Code for Information Interchange”) kodirana norma. Koristi 7-bitni slog za kodiranje velikih i malih slova, brojaka te pravopisnih, matematičkih i posebnih znakova. Prošireni ASCII obuhvaća 8-bitni slog i podrazumijeva 256 različitih simbola.

27 Prikaz simboličkih podataka

28 Prikaz simboličkih podataka

29 Prikaz simboličkih podataka

30 Prikaz simboličkih podataka

31 Binarne logičke operacije
Osim reprezentacije podataka za implementaciju algoritama potrebno je omogućiti, osim matematičkih operacija, operacije na simboličkim podacima, tj. logičke operacije koja se temelji na Booleovoj algebri. Osnovne operacije: NOT, AND, OR, XOR, NAND, NILI

32 Binarne logičke operacije
NE (NOT) operator Negacija varijable - invertor. Tablica istinitosti Element u logičkoj shemi

33 Binarne logičke operacije
I (AND) operator Operator ukazuje na istinitost ukoliko su obje varijable istinite – logička vrata. Tablica istinitosti Element u logičkoj shemi

34 Binarne logičke operacije
ILI (OR) operator Operator ukazuje na istinitost ukoliko je barem jedna varijabla istinita istinite. Tablica istinitosti Element u logičkoj shemi

35 Binarne logičke operacije
NI (NAND) operator Operator kao kombinacija I i NE operatora. Tablica istinitosti Element u logičkoj shemi

36 Binarne logičke operacije
NILI (NOR) operator Operator kao kombinacija ILI i NE operatora. Tablica istinitosti Element u logičkoj shemi

37 Binarne logičke operacije
EX-ILI (XOR) operator Rezultat operacije je istinit ukoliko je barem jedan od operanda istinit, ali s tom razlikom da ne vrijedi slučaj kada su oba operanda istinita. Tablica istinitosti Element u logičkoj shemi

38 Binarne logičke operacije
Zadatak Pomoću elementarnih Booleovih operacija načinite logičku shemu za XOR operator.

39 Binarne logičke operacije
Zadatak 2.2 Pomoću elementarnih Booleovih operacija načinite logičku shemu za A=>B operator. Zadatak 2.3 Pomoću elementarnih Booleovih operacija načinite logičku shemu za A<=>B operator. Zadatak 2.4 A B A (R) B 1 Pomoću elementarnih Booleovih operacija načinite logičku shemu za A ® B operator, gdje je (R) logička shema za uvjete :

40 Binarne logičke operacije
Zadatak 2.5 Napravite logičku shemu X=A+B*(NOT(C)) Zadatak 2.6 Napravite logičku shemu Y=NOT(NOT(A)*B+C*NON(D))

41 Binarne logičke operacije
Zadatak 2.7 Napravite logičku shemu Z=NOT(NOT(NOT(A)+B)*BC) Zadatak 2.8 Napravite logičku shemu C=(A+B)*NOT(AB)

42 Primjena logičkih operacija
Zbrajanje Kako predstaviti binarno zbrajanje kao rezultata logičkih operacija? Ideja: stupac C predstavlja 1 bit za primjenu XOR operatora na operande, a 2 bit je operator I Polu sumator rezultat prijenos Prijenos ima utjecaj na višebitne slogove. Tada uzimamo u obzir “donos”. Puni sumator

43 Primjena logičkih operacija
Zbrajanje Logička shema punog sumatora:

44 Primjena logičkih operacija
Zbrajanje Takav 1-bitni puni sumator može se povezivati za višebitne binarne slogove. Model 1-bitnog sumatora Model 8-bitnog sumatora

45 Primjena logičkih operacija
Primjer zbrajanja punim sumatorom za slogove

46 Bistabili i registri Osnove
Za pamćenje i manipuliranje binarnih brojeva u računalu potrebni su sklopovi koji mogu bilježiti 2 stanja.

47 Bistabili i registri Osnove
Bistabil, flip-flop, je sekvencijalni sklop digitalne elektronike koji može zapamtiti podatak veličine jedan bit. Elektronički gledano radi se o sklopu koji ima dva stabilna stanja (logičku 0 i 1). Bistabil obično ima dva ili tri ulaza na koje se dovode ulazni impulsi koje u ovom sklopu nazivamo okidni impulsi. Bistabil može imati jedan, dva ili tri ulaza i ima jedan ili dva izlaza. Ulazi se označavaju ovisno o vrsti bistabila, dok se izlazi označavaju s Q (logičko stanje bistabila) i (logički komplement izlaza Q). Promjena iz jednog stabilnog stanja u drugo naziva se okidanje bistabila. Bistabile možemo podijeliti u dvije osnovne skupine i to na asinkrone i sinkrone bistabile. Asinkroni bistabili imaju svojstvo da reagiraju na promjenu impulsa čim se pojavi na ulazu u sklop, što daje pogrešan rezultat kada se ulazni impulsi ne dovode istovremeno na ulaz. Sinkroni bistabil je verzija asinkronog koji ima dodatni ulaz (CLK, eng. clock) na koji se dovode sinkronizacijski impulsi konstantne frekvencije tako da bistabil mijenja stanje na promjenu okidnog impulsa. Bistabil su godine napravili William Eccles i F. W. Jordan i bio je izveden iz dvije elektronske cijevi koje su nakon izuma tranzistora godine zamijenjene istim.

48 Bistabili i registri Osnove
Za pamćenje i manipuliranje binarnih brojeva u računalu potrebni su sklopovi koji mogu bilježiti 2 stanja. Kontrolu mehaničke sklopke zamijenili su tranzistori dovođenjem napona na sklop.

49 Bistabili i registri Osnove
Binarna vrijednost koja se želi pohraniti na bistabil dovodi se na priključak D, na izlaznom priključku Q se očitava stanje bistabila i ulazni priključak POHRANITI se dovodi poseban upravljački signal Bistabil za pohranjivanje 1 bita Bistabil za pohranjivanje n bitova

50 Bistabili i registri S-R bistabil
S-R bistabil ima 2 signala S (set) i R (reset) i izlaze Q i NOT(Q). Set znači postavi bistabil u stanje 1, a reset postavi bistabil u stanje 0. S R Qn Qn+1 1 X neodređeno

51 Bistabili i registri S-R bistabil Odgovarajuća logička shema:

52 Bistabili i registri J-K bistabil
JK bistabil se od SR bistabila razlikuje samo po tome što nema zabranjenih stanja, odnosno stanja u kojima su ulazi J i K logički isti daju na izlazu stanja koja ovise i o prethodnim stanjima bistabila. Kod JK bistabila se uvodi i treći CLK ulaz koji služi za sinkronizaciju. J K Qn+1 Qn 1 Jednadžba stanja

53 Bistabili i registri J-K bistabil
Ulazni signali J i K, s dodatnim signalom CLK.

54 Bistabili i registri D bistabil D Qn+1 1 Qn + 1 = D
D bistabil je modifikacija SR bistabila koja se dobije tako da se ulazna varijabla spoji direktno na ulaz S, dok se na ulaz R dovede invertirani ulaz. D bistabil jednostavno samo upisuje (odnosno daje na izlazu) podatak koji mu je dan na ulazu, pa ga zbog toga možemo promatrati kao elementarnu česticu za memoriranje jednog bita, ili kao element za kašnjenje ukoliko uključimo i CLK ulaz. Upravo zbog ovih svojstava (eng. data, podatak i eng. delay, kašnjenje) bistabil je i dobio ime D bistabil. D Qn+1 1 Qn + 1 = D

55 Bistabili i registri T bistabil T Qn+1 Qn 1
T bistabil je verzija JK bistabila kod kojega su ulazi J i K međusobno spojeni tako da samo jedan logički ulaz T. T bistabil ima i još jedan CLK ulaz. Spojimo li ulaz T na logičku jedinicu dobivamo sklop koji mijenja logičko stanje na CLK impuls čime se na izlazu T bistabila dobiva niz impulsa dvostruko manje frekvencije od frekvencije CLK. Upravo zbog svojstva promjene stanja, eng. toggle, prebacivati, je i T bistabil dobio ime. Jednadžba stanja T bistabila: Tablica stanja T bistabila: T Qn+1 Qn 1

56 Bistabili i registri Registri
Predstavljaju nanizane bistabile u cjelinu koji služe za pamćenje višebitnih podataka.

57 Registri Prenošenje podataka između registara
Prijenos podataka s jednog bistabila na drugi vrši se korištenjem logičkih vrata (brane). signal za prijenos podataka utječe na otvaranje brane prijenos podataka preko jednog spoja i jedne brane

58 Registri Prenošenje podataka između registara
Prijenos podataka s registara na drugi registar primjenom sabirnice i dovodnog signala. vremenski odnosi prijenosa podataka

59 Registri Dekoder Za neko stanje na registru dekoder će bilježiti jedno stanje na svom vodu, odnosno bilježit će moguća stanja registra. 3-bitni registar s dekoderom realizacija dekodera s logičkim sklopovima

60 Realizacije bistabila
Pomačni registar Sklop koji se sastoji od više D bistabila, koji imaju zajednički taktni ulaz, a spojeni su tako da je izlaz jednog doveden na ulaz drugog. Osim pamćenja kodne riječi, osnovna funkcija je pomak bitova u lijevo ili udesno čime ostvarujemo množenje ili dijeljenje, te paralelno, serijska pretvorba.

61 Realizacije bistabila
Brojila Sklop koji se sastoji od više T ili JK bistabila koji su povezani tako da njihovo slijedeće stanje ovisi samo o prethodnom (prijelaz u slijedeće stanje nastaje u trenutku nastupanja taktnog signala). Brojilo boji ukupan broj signala koji dođu na nj. Vrsta generatora sekvence koji prolaskom kroz sva stanja na izlazu generira konačnu sekvencu kodnih kompleksija . Ima ulogu binarnog brojenja. Jedna od primjena je brojanje rednog broja instrukcija.

62 Realizacije bistabila
Memorija Na registrima se bilježe podaci koje služe u obradi. Postoje i neki podaci koji se čuvaju za neko drugo vrijeme obrade. Takvi registri koji omogućuju trajno spremanje podataka zovemo memorija. svaki registar ima LOKACIJU svaka lokacija mora imati ADRESU sadržaj lokacije predstavlja podatak koji se pamti u memoriji. ADRESNI REGISTAR – registar u kojem se bilježi adresa lokacije REGISTAR MEMORIJSKIH PODATAKA – registar u kojem se prenose podaci iz memorije i obrnuto memorija i pomoćni sklopovi

63 Arhitektura skupa instrukcija
ISA – “instruction set architecture”

64 ISA hardware podrška ISA predstavlja assembly jezik programator koji ima na raspologanju programerski pristup prema sklopovlju i skup instrukcija koji upravljaju podacima. Assembly jezik – funkcionalni ekvivalent strojnog jezika (nizovi 0 i 1 predstavljaju instrukcije i podatke – jezik razumljiv računalu) Primjer: Program napisan u višem jeziku se kompajlira u strojni kod koji se sprema na I/O Prije izvršenja strojnog koda sadržaj se prenosi u memoriju. Prilikom izvršenja programa instrukcije se donose u ALU iz memorije zajedno s podacima i obrađene informacije se dalje prosljeđuju na izlaze.

65 CPU Procesor (engl. CPU) se sastoji od podatkovnog dijela i kontrolnog dijela. U današnjim računalima koristi se 32 bitni adresni prostor za adresiranja byteova. Program counter (PC) i Instruction register (IR) su spojnica između kontrolnog dijela i podatkovnog dijela. PC sadrži adresu instrukcije koja se dohvaća iz memorije i potom stavlja u IR gdje se interpretira. Podjela procesora na 2 kategorije.

66 CPU Koraci u izvršenju programa kontrolnog dijela – fetch-execute cycle Dohvati slijedeću instrukciju koja se treba izvršiti iz memorije. Dekodiraj opcode (kod operatora) Učitaj operande iz memorije, ako ih ima. Izvrši instrukciju i spremi rezultat.

67 CPU Koraci u izvršenju programa podatkovnog dijela – datapath.
Podatkovni dio se sastoji od kolekcije registara zvanih datoteka registara (register file) koji služe za spremanje podataka (operanada). ALU implementira različite binarne i unarne operacije (+,*,NOT,AND,OR) Kontrolna jedinica bira operacije i operande koji će se izvršiti i gdje će ih proslijediti. Shema procesora s modelima registara

68 Skup instrukcija Skup instrukcija (Instruction set) – skup instrukcija koje procesor može izvršiti. Skup instrukcija ovisi o modelu procesora. Compiler – program koji prevodi jezik više razine (C, Java, Pascal) u strojni jezik. Prevođenje jezika: High-level jezik Assembly jezik Strojni jezik compile vrijeme assembly vrijeme vrijeme izvršenja

69 Skup instrukcija na RISC modelu
Skup instrukcija razvijen na RISC modelu (podmodel SPARCa) s ARC memorijskim modelom ARC instrukcijski skup: CPU sadrži bitna registra opće namjene, također PC i IR Processor Status Register (PSR) sadrži informacije o stanju procesora, uključujući informacije o rezultatima aritmetičkih operacija (flags) sve instrukcije su 32-bitne veličine load-store stroj – omogućeno je samo dohvaćanje i spremanje u memoriji ukupni broj instrukcija oko 200 u SPARC modelu

70 Skup instrukcija na RISC modelu
Skup instrukcija za prijenos podataka, AL operacije, kontrola

71 Skup instrukcija na RISC modelu
ARC Assembly sintaksa Svaki assembly jezik ima svoju sintaksu. Primjer sintakse assembly jezika SPARC modela: Primjer: Dodavanje 12 sadržaju registra %r1 i spremanje na registar %r3

72 Skup instrukcija na RISC modelu
ARC format instrukcija Instrukcijski format definiran assembly kodom u strojni jezik predstavljen je 32-bitnom instrukcijom. 5 formata je određeno skupom instrukcija SETHI, Grananje, pozivi, Aritmetika, Memorija raspoloživost procesora

73 Skup instrukcija na RISC modelu

74 Z80 mikroprocesor Pregled simulacija

75 Z80 mikroprocesor Zilog Z80 je 8-bitni procesor dizajniran od tvtke Zilog 1976 pa nadalje. Veliku primjenu našao je u stolnim i ugrađenim računalima. Populariziran u prodoru Sinclair ZX Spectrum računala. Značajke: Niska potrošnja energije Izrađuje se za 2 brzine (do 2.5MHz i 4 MHz) dvostruki set registara opće namjene statusni registri 2 16-bitna indeksna registra vektorski prekidni sustav 3 načina rukovanja maskiranim prekidima dinamičko osvježenje memorije

76 Usporedba Frederico Fagin nakon što je napustio Intel nakon rada na 8080 osniva tvrtu Zilog koja na tržište izdaje Z80. Arhitektura Z80 je znatno poboljšana od arhitekture Intel 8080. Neke od razlika: napredniji instrukcijski skup novi IX i IY indeksni registri vektoriziran način rada s prekidima manje čipova za kontrolu radnog takta ugrađen DRAM osvježenje jeftinija cijena ... Z80 preuzima tržište nad Intel8080 i postaje među najpopularnijim 8-bitnim mikroprocesorima

77 Vanjski izgled

78 Vanjski izgled +5V,GND – (ulazni) napajanje mikroprocesora
Φ – (ulazni) signal vremenskog vođenja sustava – takt (uobičajeno 4 MHz, engl. clock) SABIRNICA ADRESA (engl. ADDRESS BUSS) A0-A15 – (izlazni) adresiranje memorije i vanjskih jedinica SABIRNICA PODATAKA (engl. DATA BUS) D0-D7 – (dvosmjerni) podatak koji se čita ili piše u memoriju ili vanjsku jedinicu KONTROLA SUSTAVA (engl. SYSTEM CONTROL) M1 – (izlazni) označava da je trenutni strojni ciklus dohvat operacijskog koda iz memorije, kada je M1 aktivan zajedno sa IORQ, označava ciklus potvrde zahtjeva za prekid MREQ – (izlazni) označava da se na sabirnici adresa nalazi adresa za čitanje ili pisanje u memoriju IORQ – (izlazni) označava da se na nižih 8 bita sabirnice adresa nalazi adresa vanjske jedinice RD – (izlazni) označava ciklus čitanja iz memorije ili vanjske jedinice WR – (izlazni) označava ciklus pisanja iz memorije ili vanjske jedinice RFSH – (izlazni) označava da 7 nižih bita sabirnice adresa sadrže adresu osvježavanja za dinamičke memorije.Bit A7 je u nuli, a na gornjih 8 bita upisan je sadržaj registra I.

79 Vanjski izgled KONTROLA MIKROPROCESORSKE JEDINICE (engl. CPU CONTROL)
HALT - (izlazni) označava da je Z80 izveo naredbu HALT i da čeka prekid (obični ili nemaskirani).Dok je procesor u stanju HALT, izvode se naredbe NOP, kako bi se osvježavale dinamičke memorije. WAIT – (ulazni) dojava procesoru da adresirana memorija ili vanjska jedinica nije spremna za prijenos podataka.Dok je taj signal aktivan, procesor umeće stanja čekanja.Taj signal omogućava upotrebu memorijskih i vanjskih uređaja bilo koje brzine i asinkronu komunikaciju s procesorom. INT – (ulazni) zahtjev za prekid.Postavlja ga neka vanjska jedinica.Zahtjev će biti obrađen na kraju tekuće naredbe ako je prekid omogućen. NMI – (ulazni, aktivan na padajući brid) nemaskirani zahtjev za prekid.Slično kao i običan zahtjev za prekid, ali ima viši prioritet i ne može se maskirati (onemogućiti).Zahtjev će biti uvijek obrađen na kraju tekuće naredbe, a obrada se izvodi uvijek na isti način. RESET – (ulazni) postavljanje mikroprocesora u početno stanje.Registri PC,I i R postavljaju se u nulu, onemogućava se prekid i postavlja se prekidni način rada O.Sabirnice adresa i podataka postavljaju se u visoku impedanciju, a kontrolni signali u naktivno stnje.Memorija se ne osvježava.

80 Vanjski izgled KONTROLA SABIRNICE PROCESORA (engl. CPU BUS CONTROL)
BUSRQ – (ULAZNI) zahtjev procesoru da preda upravljanje nad sabirnicama adresa, podataka i kontrolnim priključcima.Kada je zahtjev prihvaćen, svi ti priključci prelaze u stanje visoke impedancije i vanjskoj jedinici koja je postavila zahtjev omogućuju preuzimanje upravljanja nad njima.Zahtjev za sabirnicom je prioritetniji od običnog i nemaskiranog zahtjeva za prekid.Zahtjev za sabirnicom bit će prihvaćen čim završi trenutni strojni ciklus. BUSAQ - (izlazni) dojava vanjskoj jedinici koja je zahtijevala sabirnicu da je procesor postavio sve priključke u stanje visoke impedancije.

81 Arhitektura

82 Tehnički opis Akumulator A – 8 bitni registar -izvor i odredište operananda za instrukcije s jednim ili 2 operanda Registri B,C,D,E,H,L – skup od 8 bitnih registara za prijevremeno pohranjivanje međurezultata i rezultata. Registarski pa H i L – kazalo podataka (sadrže 16-bitnu adresu podataka) Registar uvieta F – 8 bitni registar - zastavica predznaka (S), zastavica polovičnog prijenosa (H), zastavica parnosti/preliva (P/O), zastavica oduzimanja (N), zastavica prijenosa (C) PC (program counter)- 16 bitni registar - programsko brojilo i sadrži adresu memorijske lokacije na kojoj se nalazi naredba koja će se sljedeća dohvatiti i izvršiti SP (stack pointer)- 16 bitni registar.služi za spremanje podataka na stog. Stog prestavlja dio memorije u koji se podaci pohranjuju kao u pomični registar tako da novi podatak potiskuje stari podatak dublje u stog. Radi po LIFO principu registri IX, IY- 16 bitni registri - se koriste za indeksno adresiranje. U registar se upisuju početne adrese memorije bloka u koji se želi pohranjivati podatak ili ih dohvati. Dodatni bajt opisuje odstupanje od početne adrese. registar prekidnog vektora I – 8 bitni registar - adresni registar stranice prekida programa. Prilikom vektorskog prekidnog rada omogućava adresiranje bilo koje memorijske lokacije na kojoj se nalazi prekidna rutina registar R (refresh)- 8 bitni registar služi za zadržavanje pri osvježavanju dinamičke memorije

83 Izvođenje programa Program koji želimo da CPU obavi nalazi se spremljen u memoriji koja nije dio CPU-a. Cijela memorija je adresibilna tako da je svakoj 8-bitnoj memorijskoj lokaciji ( od lokacija ) pridružena neka adresa. Mikroprocesor je napajan s 5 V i dovodi mu se takt. Program se počinje obavljati postavljanjem sadržaja 16-bitnog programskog brojila na adresnu sabirnicu. Ujedno se šalje i upravljački signal RD (čitaj). Memorijski sklop dekodira postavljenu adresu i omogućava pristup mikroprocesoru sadržaju memorijske lokacije preko 8-bitne sabirnice podataka. Taj se sadržaj sprema u CPU, u instrukcijski registar, i to je operacijski kod instrukcije.

84 Izvođenje programa Nakon što je programsko brojilo poslalo na adresnu sabirnicu adresu memorijske lokacije prve instrukcije brojilo se inkrementira i čeka da prenese adresu druge instrukcije na adresnu sabirnicu. Spremljeni operacijski kod instrukcije u instrukcijskom registru se dekodira i kontrolna jedinica generiranjem upravljačkih signala aktivira pojedine sklopove da bi se izvršila instrukcija ( npr. prijenos podataka u akumulator ili registre opće namjene ili upisivanje u memoriju ili prijenos podataka na U/I jedinicu, ili npr. aktiviranje ALU - aritmetičke – logičke jedinice za obavljanje zbrajanja, oduzimanja, inkrementiranja, izvršavanja logičkog I, ILI, EX ILI, itd. ). Isto tako kontrolna jedinica može upravljati perifernim jedinicama u ovisnosti o programu, a isto tako i one mogu upravljati CPU-om preko kontrolnih ulaza i izlaza. Nakon obavljanja prve instrukcije programsko brojilo ponovno postavlja sadržaj (koji je inkrementiran u odnosu na prvi put ) na sabirnicu podataka. Iz memorije se uzima slijedeća instrukcija i program se nastavlja.

85 Programiranje Z80 Program pišemo u simboličkom strojnom jeziku, odnosno mnemoničkom obliku.To znači da se instrukcije ne prikazuju u binarnom obliku nego u obliku korijene engleske riječi koja opisuje njihovu namjenu (npr. ADD A,B za zbrajanje). Postupak razvoja programa: PISANJE : EDITOR – IME.ASM asembler je ime za strojni jezik ali i za program prevoditelj napisanog ASM programa PREVOĐENJE : X80 (tzv. cross asembler) – IME.OBJ POVEZIVANJE : LINK1 – IME.TSH ili IME.HEX IZVOĐENJE Instrukcijski skup od Z80

86 Programiranje Z80 Primjeri instrukcija
LD A,B - iz B registra u A (akumulator) LD (BC),A - na adresu u memoriji koja je navedena u BC paru registara smjesti podatak iz akumulatora A PUSH BC - stavi na stog POP BC - skini sa stoga EX AF,AF’ - razmjena podataka EXX - sva tri izmjenjivanja odjednom CPI i CPIR - usporedi A sa (HL), inkrementiraj HL i dekrementiraj BC ADD A,H - zbroji A sa H SUB A,B - odzmi B od A DAA - pretvara A u BCD oblik NOP - no operation (troši jedan ciklus takta) HALT - zaustavlja CPU RLC E - rotiranje u lijevo RRC D - rotiranje u desno BIT 2,H - ispitaj 2 bit registra H SET 2,H - postavi 2 bit registra H RES 4,0 - resetiraj 4 bit na vrijednost 0 IN A,ime - učitavanje s vanjske jedinice definirane adrese pod imenom ime (isključvo preko akumulatora) OUT ime,A - ispis na vanjsku jedinicu (isključivo preko akumulatora) JP nn - apsolutni bezuvjetni skok JP cc,nn - uvjetni skok JR c - relativni skok DJNZ e - skok u petlji (Decrement and Jump if Not Zero)

87 Simulacija Z80 Demonstracija asemblera Z80 primjenom simulatora u javi appletu. Skup instrukcija koji može naš simulator simulirati Alat koji ćemo koristiti Skup instrukcija Z80 simulator Primjer 1 Primjer 3 Zbrajanje 2 broja Zbrajanje 2 elementa iz liste. Primjer 5 Program s power() rutinom Primjer 4 Primjer 2 Uporaba smicanja ulijevo za množenje Zbrajanje 2 elementa iz liste.


Κατέβασμα ppt "2. OSNOVNI PRINCIPI RAČUNALNE TEHNOLOGIJE"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google