OSNOVI RACUNARSKE TEHNIKE 1 - PowerPoint PPT Presentation

About This Presentation
Title:

OSNOVI RACUNARSKE TEHNIKE 1

Description:

... MOVE x, y (y ( source) x (destination) Mogu nost prenosa bloka podataka (Z80) Mogu nost istovremenog kopiranja sadr aja vi e registara u memoriju ... – PowerPoint PPT presentation

Number of Views:80
Avg rating:3.0/5.0
Slides: 21
Provided by: mrDra9
Category:

less

Transcript and Presenter's Notes

Title: OSNOVI RACUNARSKE TEHNIKE 1


1
OSNOVI RACUNARSKE TEHNIKE 1
  • INSTRUKCIJE I NACINI ADRESIRANJA
  • 10

2
Instrukcije za prenos podataka
  • Prenos podataka izmedu registara
  • Najveca brzina izvodenja u odnosu na ostale
    instrukcije prenosa
  • Instrukcije su krace od ostalih
  • Nekada instrukcija ima samo polje koda operacije
  • TAB ( A ? B )
  • TBA ( B ? A )
  • U nekim instrukcijama se eksplicitno ukazuje na
    registre koji ucestvuju u prenosu preko njihovih
    adresa)
  • MOV A, E ( E ? A )

3
Instrukcije za prenos podataka
  • Prenos podataka izmedu memorije i registara
  • Prenos podataka iz memorije u neki od CPU
    registara (LOAD)
  • Prenos podataka iz nekog od CPU registara u
    memoriju (STORE)
  • Jedinstven tip instrukcije (MOVE) (Intel)
  • MOVE x, y (y ( source) ? x (destination)
  • Mogucnost prenosa bloka podataka (Z80)
  • Mogucnost istovremenog kopiranja sadržaja više
    registara u memoriju (MC 68020)


4
Instrukcije za prenos podataka
  • Operacije sa stek-om
  • Smeštanje podataka na stek (PUSH)
  • SP se inkrementira
  • Uzimanje podataka sa steka (POP)
  • SP se dekrementira
  • Primeri instrukcija za rad sa stekom (MC 6800)
  • PSH A (sadržaj akumulatora A ? stek )
  • PUL A (podatak sa steka ? akumulator A )
  • PSH B (sadržaj akumulatora B ? stek )
  • PUL B (podatak sa steka ? akumulator B )

5
Instrukcije za prenos podataka
  • Ulazno-izlazne operacije
  • Kod nekih procesora ( MC 68020, VAX )
    ulazno/izlazni prostor se posmatra kao memorija
  • Svakoj U/I jedinici je pridružena jedna ili više
    memorijskih adresa
  • Kod nekih procesora U/I operacije su odvojene od
    operacija sa memorijom
  • Programski kontrolisan U/I prostor
  • IN i OUT instrukcije
  • Specijalni procesori (kanali) obavljaju
    ulazno/izlazne aktivnosti - IBM 370

6
Instrukcije za upravljanje tokom programa
  • To su instrukcije koje omogucavaju promenu
    sadržaja brojaca naredbi (Program Counter)
  • Ove instrukcije skrecu tok izvodenja programa
    bezuslovno ili uslovno
  • Upravljacke instrukcije mogu da se podele na
  • Instrukcije bezuslovnog skoka (jump) ili grananja
    (branch)
  • Instrukcije uslovnog skoka ili grananja
  • Specijalne upravljacke instrukcije za upravljanje
    potprogramima, prekidima i stanjima procesora

7
Instrukcije za upravljanje tokom programa
  • Instrukcije bezuslovnog skoka
  • Preusmeravaju tok izvodenja programa bez
    ispitivanja bilo kakvih uslova
  • U PC se nalazi adresa memorijske lokacije na
    kojoj se nalazi sledeca instrukcija
  • Ne preporucuje se cesta upotreba ovih
    instrukcija, jer mogu da dovedu do greške u
    izvršavanju programa

8
Instrukcije za upravljanje tokom programa
  • Instrukcije uslovnog skoka ili grananja
  • Omogucavaju skok (grananje) potprograma samo ako
    je prethodnom obradom ispunjen neki uslov
  • Ne zna se unapred kojim ce putem krenuti dalje
    odvijanje programa
  • Instrukcije se zasnivaju na testiranju pojedinih
    bita u registru stanja
  • Instrukcije SKIP tipa testiraju uslov i preskacu
    prvu narednu instrukciju ako je uslov ispunjen

9
Instrukcije za upravljanje tokom programa
  • 1. Primer za instrukciju uslovnog skoka
  • instrukcija
  • pocetak petlje
  • telo petlje
  • dekrementiraj registar i preskoci ako je 0
  • skoci na pocetak petlje
  • nastavak programa
  • Ako uslov nije ispunjen program se vraca na
    pocetak petlje (vrti se u petlji)

10
Instrukcije za upravljanje tokom programa
  • 2. Primer za instrukciju uslovnog skoka
  • instrukcija
  • pocetak petlje
  • telo petlje
  • dekrementiraj registar i preskoci ako je 0
  • skoci na pocetak petlje
  • nastavak programa
  • Ako je uslov ispunjen program preskace jednu
    instrukciju i izlazi iz petlje

11
Instrukcije za upravljanje tokom programa
  • Instrukcije za upravljanje potprogramima
  • Potprogrami (subroutine, subprogram) su niz
    instrukcija koje predstavljaju celinu
  • Potprogram može da se poziva više puta u toku
    izvršenja nekog programa
  • Racunar pre upisa nove adrese u PC (koja
    predstavlja pocetnu adresu potprograma), sacuva
    tekuci sadržaj PC na steku
  • Postoje dva tipa instrukcija za rad sa
    potprogramima
  • Instrukcije za pozivanje potprograma (CALL)
  • Instrukcije za povratak iz potprograma (RETURN)

12
Instrukcije za upravljanje tokom programa
  • Otvoreni potprogram Zatvoreni potprogram
  • GLAVNI PROGRAM GLAVNI PROGRAM

T O K P R O G R A M A
POCETAK PROGRAMA
POCETAK PROGRAMA
POTPROGRAM
POTPROGRAM
POZIV POTPROGRAMA
POCETAK


POTPROGRAM
POZIV POTPROGRAMA

KRAJ
POTPROGRAM
POZIV POTPROGRAMA
KRAJ PROGRAMA
KRAJ PROGRAMA
13
Instrukcije za upravljanje tokom programa
  • Instrukcije za upravljanje prekidom
  • Zahtevi za prekid (interrupt requests) su signali
    koji nastaju
  • u samom procesoru
  • u ulazno/izlaznoj jedinici ili
  • u spoljašnjem okruženju (van racunarskog sistema)
  • Kada se pojavi zahtev za prekid, tekuci program
    se prekida i prelazi na izvršavanje posebnog
    kontrolno upravljackog programa za obradu prekida
  • Da bi mogao da se ostvari povratak u prekinuti
    program moraju da se cuvaju na steku
  • Sadržaj programskog brojaca (PC)
  • Sadržaj svih radnih registara u CPU koji ce
    koristiti program za obradu prekida

14
Instrukcije za upravljanje tokom programa
  • Instrukcije za upravljanje prekidom
  • Zahtev za prekid može da nastane bilo kada, bilo
    na kom mestu u programu i nije pod kontrolom
    programa

KORISNICKI PROGRAM
PROGRAM ZA OBRADU PREKIDA
POCETAK
TEKUCA INSTRUKCIJA
ZAHTEV ZA PREKID
NAREDNA INSTRUKCIJA
KRAJ
15
Instrukcije za upravljanje tokom programa
  • Instrukcije za upravljanje prekidom
  • Obradu prekida vrši program operativnog sistema
    koji se zove analizator prekida
  • Analizator prekida bira program za obradu koji
    odgovara prekidu
  • Pošto nisu svi prekidi podjednako važni za
    racunarski sistem, neki od njih mogu privremeno
    ili trajno da se sprece (maskiraju) pomocu
    instrukcija koje mogu da postavljaju masku, da je
    citaju i testiraju
  • Na kraju svake rutine za obradu prekida nalazi se
    instrukcija za povratak iz prekida RT (Return
    from Interrupt)

16
Instrukcije za upravljanje tokom programa
  • Instrukcije za upravljanje stanjima procesora
  • Kod vecine racunara CPU može da se nade u nekom
    od sledecih stanja, pri cemu se stanja koja su
    data u paru uzajamno iskljucuju
  • Neprivilegovanom / privilegovanom stanju
  • Stanju spremnosti / stanju obrade
  • Stanju zastoja (cekanja) / stanju obrade
  • Stanju dozvoljenog prekida / stanju zabranjenog
    prekida
  • U privilegovanom režimu može u potpunosti da se
    kontroliše rad racunara pomocu privilegovanih
    instrukcija koje ne mogu da se upotrebljavaju u
    korisnickom programu.

17
Nacini adresiranja
  • Podacima se pristupa razlicitim nacinima
    adresiranja, koji su zadati u posebnom polju u
    formatu instrukcije

IMPLICITNO adresiranje
NEPOSREDNO adresiranje
adresiranje PRIMENOM BAZNIH REGISTARA
DIREKTNO adresiranje
FORMAT INSTRUKCIJE
adresiranje PRIMENOM SEGMENTNIH REGISTARA
RELATIVNO adresiranje
INDEKSIRANO adresiranje
INDIREKTNO adresiranje
18
Nacini adresiranja
  • Implicitno adresiranje
  • Sama instrukcija ( kod operacije ) odreduje
    fiksnu i nepromenjivu adresu operanda
  • Neposredno adresiranje
  • Polje adrese predstavlja sam operand
  • Podatak se nalazi u memoriji na lokaciji koja
    neposredno sledi iza koda operacije
  • Direktno adresiranje
  • U polju operanda nalazi se fizicka adresa podatka
  • Relativno adresiranje
  • Adresa memorijske lokacije se odreduje u odnosu
    na tekuci sadržaj programskog brojaca (PC)

19
Nacini adresiranja
  • Indeksirano adresiranje
  • Na adresu podatka se dodaje sadržaj nekog indeks
    registra (dobija se efektivna adresa)
  • Indirektno adresiranje
  • U polju operanda se nalazi pokazivac adrese na
    memorijsku lokaciju u kojoj se nalazi adresa na
    kojoj je smešten podatak
  • Adresiranje primenom segmentnih registara
  • Fizicka adresa je podeljena na dve logicke, od
    kojih je jedna u polju operanda, a druga u
    segmentnom registru
  • Korisnicki program može da menja sadržaj
    segmentnih registara

20
Nacini adresiranja
  • Adresiranje primenom baznih registara
  • Koristi se za pomeranje programa u okviru
    memorije kada programi koriste apsolutne adrese.
  • Logicka adresa adresa koju vidi program
  • Bazna adresa adresa koju je dodelio
    operativni sistem (nalazi se u
  • baznom registru)
  • Stvarna adresa logicka adresa bazna adresa
  • Sadržaj baznog registra može da menja samo
    operativni sistem
Write a Comment
User Comments (0)
About PowerShow.com