Microsoft Word - Projekat iz MIPS-a - simCPU.doc
|
|
- Duša Ninković
- пре 6 година
- Прикази:
Транскрипт
1 UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET KATEDRA ZA ELEKTRONIKU MIKROPROCESORSKI SISTEMI simcpu Mentor Prof. dr. Mile Stojčev Marko Ilić 9921 Nebojša Pejčić 9738 Aleksandar Stojadinović Bojan Janićijević 9931 Maj 2005
2 Sadržaj Uvod 1 1. Jednostavna sekvencijalna procesorska jedinica Definicija skupa instrukcija Format mašinske instrukcije Klase instrukcija SCPU-a Struktura sistema baziranog na SCPU Tipovi registara SCPU-a Aritmetičko logička jedinica Adresni načini rada Neposredno adresiranje Direktno adresiranje Indirektno adresiranje Registarsko adresiranje Format i način izvršavanja asemblerskih instrukcija Skup instrukcija procesora SCPU Pseudoinstrukcije Faze izvršavanja instrukcija Instrukcije kod kojih faza izvršenja EX traje jedan taktni interval Instrukcije kod kojih faza izvršenja EX traje dva taktna intervala Instrukcije kod kojih faza izvršenja EX traje tri taktna intervala Simulator simcpu KORAK 1 Pokretanje programa simcpu Text Editor Registry KORAK 2 Ilustracija rada programa kroz jedan reprezentativni primer Analiza rada SCPU-a Adresni načini rada Klase instrukcija...39
3 Uvod Kroz ciklus od tri vežbe analiziraćemo princip rada jedne jednostavne procesorske jedinice nazvane SCPU (Simple Central Processing Unit). Prva vežba će se odnositi na sagledavanja koja se tiču sledećih detalja: 1) definicija skupa instrukcija SCPU-a 2) struktura SCPU 3) adresni načini rada 4) format i način izvršenja instrukcija U drugoj vežbi biće opisan princip rada simulatora jednostavnog procesora nazvan simcpu (simulator of simple Central Processing Unit) koji se sastoji od sledeća dva koraka: 1) KORAK 1: Dati su detalji koji se odnose na pokretanje programa simcpu 2) KORAK 2: Odnosi se na ilustraciju rada samog programa kroz jedan reprezentativni primer. U trećoj vežbi kroz zadavanja odgovarajućih programskih test sekvenci analiziraće se rad SCPU-a. Izabrana programska test sekvenca uključuje sledeće detalje: 1) četiri adresna načina rada 2) pet klasa instrukcija Zadatak studenta se sastoji u sledećem: upoznavanje sa arhitekturom SCPU-a, sagledavanje detalja koji se odnose na rad simcpu-a i verifikacija rada SCPU-a korišćenjem simcpu-a kroz izvršenje odgovarajuće programske test sekvence. SimCPU je kompatibilana sa svim Windows operativnim sistemima. Program simcpu je pisan u programskom jeziku Delphi. Na izradi source cod-a radili su Marko Ilić i Nebojša Pejčić, a na testiranju i izradi dokumentacije Aleksandar Stojadinović i Bojan Janićijević. 1
4 1. Jednostavna sekvencijalna procesorska jedinica 1.1 Definicija skupa instrukcija SCPU je jednoadresna 16-bitna mašina koja podržava četiri načina adresiranja. Obim adresne magistrale je 10 bitova (može da se adresira do 1024 memorijskih lokacija), a obim magistrale podataka je 16 bitova (dva bajta) Format mašinske instrukcije Format mašinske instrukcije SCPU-a je prikazan na Slici 1: opkôd M operand X X X X Y Y A A A A A A A A A A d 15 d 12 d 11 d 10 d 9 d 0 Slika 1. Format instrukcije gde su: d 15 d 12 četiri bita koja označavaju kôd instrukcije ( opkôd ) d 11 i d 10 dva bita koja se odnose na načine adesiranja ( modifikator M ) d 9 d 0 deset bitova koji predstavljaju polje operand Skup instrukcija koje podržava SCPU i vrednosti opkôd polja su prikazani u Tabeli 1. Tabela 1. Instrukcije procesora sa definisanim opkôd poljem instrukcija opkôd polje opis instrukcije OR 0000 Logička OR operacija AND 0001 Logička AND operacija NOT 0010 Logička NOT operacija XOR 0011 Logička ExOR operacija ADD 0100 aritmetička operacija sabiranja SUB 0101 aritmetička operacija oduzimanja NEG 0110 operacija komplementiranja LD 0111 kopiranje iz memorije u akumulator JMP 1000 bezuslovno grananje (skok) JZ 1001 grananje ako je nula JNZ 1010 grananje ako nije nula INC 1011 inkrementiranje akumulatora MOV 1100 kopiranje iz akumulatora u registar Rx ST 1101 kopiranje iz akumulatora u memoriju predviđeno za dalja proširenja NOP 1111 operacija bez efekta 2
5 Tabela 2. se odnosi na definiciju polja modifikatora M. Tabela 2. Značenje polja modifikatora M Modifikator M Način adresiranja 00 neposredni 01 direktni 10 indirektni 11 registarski Klase instrukcija SCPU-a Instrukcije možemo podeliti u sledeće grupe: 1. prenos-podataka (MOV, LD, ST) pomoću ovih instrukcija vrši se kopiranje informacija iz jedne lokacije u drugu. Lokacije mogu pripadati registrima procesora ili memoriji, 2. aritmetičke (ADD, SUB, NEG, INC) obavljaju aritmetičke operacije nad numeričkim podacima, 3. logičke (OR, AND, NOT, XOR) uključuju Booleove i druge nenumeričke operacije, 4. programsko-upravljačke (JMP, JZ, JNZ) menjaju sekvencu programskog izvršenja, 5. ostale instrukcije (NOP) u ovu grupu spada instrukcija operacija bez efekta i instrukcija koja je predviđena za dalje proširenje. 3
6 1.2 Struktura sistema baziranog na SCPU Struktura sistema zasnovanog na SCPU (procesor & memorija) prikazana je na Slici 2, gde se blok MEM odnosi na memoriju, a blok SCPU na jednostavni procesor. Kao što se vidi sa Slike 2, SCPU je interno organizovan oko 16-bitne magistrale. Preko gradivnih blokova A[9:0] i D[15:0] SCPU je spregnut sa MEM preko adresne magistrale i magistrale podataka, respektivno. MEM Read Write M SCPU CARRY SIGN PSW ZERO PARITY A[9:0] MEMBusW D[15:0] MEMBusR ARBus [9:0] AR 10 LD ARLOAD PCBus [9:0] PC 10 LD PCLOAD PCINC DR DRBus 16 LD DRLOAD AC LD 16 3 ACLOAD ACINC ALUSEL [15:10] IR 6 LD IRLOAD R1 R3 16 R2 R4 R1 R2 DEK R R4 ACBus 16 6 CLK REGBus AR[1:0] Slika 2. Struktura sistema baziranog na SCPU 4
7 1.2.1 Tipovi registara SCPU-a Registri su sastavni delovi SCPU-a. U zavisnosti od namene mogu se podeliti u sledeće dve grupe: 1) Korisničko vidljivi registri, u ovu grupu spadaju sledeći registri: AC 16-bitni registar nazvan akumulator (Accumulator AC), ovaj registar se koristi za: a) čuvanje jednog od izvorišnih ili odredišnog operanda kod aritmetičkih i logičkih instrukcija; b) predstavlja izvorišni registar za operaciju tipa MOV i ST, a odredišni za operaciju LD. R0, R1, R2 i R3 četiri 16-bitna registra opšte namene (General Purpose Registers - Rx): ovi registri se mogu koristiti kao odredišni registar kod operacije MOV i izvorišni kod aritmetičko/logičkih instrukcija. Selekciju registara vrši gradivni blok dekoder, DEK, tipa 2-u-4 na osnovu selektorskih signala ARx[1:0] koji odgovaraju adresnim bitovima najmanje težine polja operand (d1 i d0 na Slici 1). Izlazi dekodera DEK su aktivni samo kod registarskog načina adresiranja. 2) Upravljački i statusni registri, u ovu grupu spadaju sledeći registri: PC 10-bitni programski brojač (Program Counter PC): čuva adresu naredne instrukcije koja treba da se pribavi iz memorije; AR 10-bitni adresni registar (Address Register AR): predaje adrese memoriji preko adresnih linija A[9:0]; DR 16-bitni registar podataka (Data Register DR): predstavlja privremeni dvosmerni bafer podataka preko koga se prenose svi podaci iz/ka MEM ka/iz SCPU-a. Kod aritmetičko/logičkih instrukcija koristi se za čuvanje drugog izvorišnog operanda; PSW četvorobitni statusni registar (Program Status Word PSW): čine ga sledeći markeri koji se uvek postavljaju na logičku {0} ili {1}, nakon izvršenja aritmetičkih ili logičkih operacija: CARRY (prenos) postavlja se na logičku {1} ako se izvršenjem operacije javio prenos kod operacije sabiranja, ili je došlo do pozajmljivanja kod operacije oduzimanja, na mestu bita najveće težine, SIGN (znak) odgovara bitu znaka rezultata dobijen zadnjom operacijom, ZERO (nula) postavlja se na logičku {1} kada je rezultat operacije jednak 0, PARITY (parnost) postavlja se na logičku {1} kada je broj jedinica u rezultatu nakon zadnje operacije paran, tj. broj jedinica u akumulatoru paran; IR 6-bitni instrukcioni registar (Instruction Register IR): čuva opkôd polje koje je deo kôda instrukcije, kao i polje modifikator M koji ukazuje na način adresiranja. 5
8 Pored registara, sastavni delovi staze podataka SCPU-a su i 16-bitna aritmetičko logička jedinica ALU, i sedam trostatičkih drajvera (ARBus, PCBus, DRBus, ACBus, IRBus, REGBus, MEMBusR) koji se koriste za dozvolu dodele pristupa na magistrali i jedan za upis u memoriju (MEMBusW ). Signal CLK (Clock) se koristi za globalno taktovanje (vidi Sliku 2) Aritmetičko logička jedinica Aritmetičko logička jedinica (Arithmetic Logic Unit ALU) (vidi Sliku 3) je izvršna jedinica i predstavlja deo procesora koji vrši neposrednu obradu podataka. Od logičkih operacija ALU obavlja AND, OR, NOT i XOR, a od aritmetičkih ADD, SUB i NEG. Kod operacije LD ALU direktno prosleđuje izvorni memorijski operand AC-u. Izvorni 16-bitni operandi se dovode na ulaz ALU-a preko linija AC [15:0] i DR [15:0], a rezultat se dobija na OUT [15:0]. Logičke operacije obavljaju sledeći gradivni blokovi: OR obavlja pobitnu logičku OR operaciju nad 16-bitnim operandima AND obavlja pobitnu logičku AND operaciju nad 16-bitnim operandima NOT obavlja logičku NOT operaciju nad 16-bitnim operandom XOR obavlja pobitnu logičku XOR operaciju nad 16-bitnim operandima Aritmetičke operacije obavljaju sledeći gradivni blokovi: ADD obavlja aritmetičku operaciju ADD nad 16-bitnim operandima SUB obavlja aritmetičku operaciju SUB nad 16-bitnim operandima NEG obavlja aritmetičku operaciju NEG nad 16-bitnim operandom, tj. određuje dvoični komplement LD prosleđuje 16-bitni izvorišni operand sa linije DR[15:0] na ulaz MUX Na osnovu tipa operacije multiplekser MUX, tipa 8-u-1, selektuje jedan od ulaznih signala. Selektorski ulazi S0, S1, S2 (naznačeni kao ALUSEL na Slici 2) definišu koji će se od ulaza proslediti na izlaz. Slika 3. Aritmetičko logička jedinica 6
9 Signali ALUSEL predstavljaju tri bita najmanje težine polja opkôda instrukcije (vidi Sliku 4). opkôd M X S2 S1 S0 Y Y Slika 4. Sadržaj IR registra Na primer, ako se izvršava operacija ADD tada imamo da je S2={1}, S1={0} i S0={0}, dok ćemo kod operacije XOR imati da je S2={0}, S1={1} i S0={1}. Operaciji premeštanja odgovara sledeća kombinacija selektorskih signala S2={1}, S1={1} i S0={1}. 7
10 1.3 Adresni načini rada Svakom operandu instrukcije pridružuje se podatak. Podatak može biti lociran u memoriji, CPU-ovim registrima (R0, R1, R2 ili R3) ili da predstavlja deo instrukcije (neposredni operand). Da bi izvršio instrukciju, procesor treba da pribavi tekuću vrednost podatka. Lokacija na kojoj se nalazi podatak može se specifirati na nekoliko načina. Specifikaciju lokacije operanda nazivamo način adresiranja. U zavisnosti od toga na koji način se obavlja specifikacija kažemo da postoje nekoliko različitih načina adresiranja. Za konkretni slučaj, procesor SCPU podržava sledeće načine adresiranja: 1. neposredni, 2. direktni, 3. indirektni, i 4. registarski Neposredno adresiranje Kod neposrednog adresiranja adresni deo instrukcije (polje operand vidi Sliku 5) specificira vrednost operanda, tj. operand je konstanta i sastavni je deo instrukcije. Polje operand je obima 10 bitova što znači da konstanta može da uzima vrednosti od 0 do 1023 kod neoznačenih vrednosti i od 512 do +511 kod označenih vrednosti. Osnovne karakteristike neposrednog načina adresiranja su: Koristi se da definiše konstante, ili da postavi na inicijalne vrednosti promenljive u programu. Obično, brojevi se memorišu u prezentaciji dvoičnog komplementa. Bit najveće težine u polju operanda se koristi kao bit znaka. Kada se operand puni u registar, vrši se znakovno proširenje do obima koji odgovara punoj reči. Operand se pribavlja u CPU u trenutku kada se pribavlja i instrukcija; na ovaj način se štedi jedan memorijski ili keš ciklus po instrukciji. Obim podatka koji se pribavlja ograničen je obimom adresnog polja, i kod najvećeg broja skupova instrukcija mali je u odnosu na dužinu reči. Kod neposrednog adresiranja polje modifikator M ima vrednost 00. Opkôd M operand X X X X 0 0 A A A A A A A A A A Slika 5. Format instrukcije kod neposrednog adresiranja Direktno adresiranje Kod direktnog načina adresiranja polje direktna adresa (vidi Sliku 6) specificira adresu memorijske lokacije koja odgovara podatku kome se pristupa. Naime, adresni deo instrukcije predstavlja adresu na osnovu koje se vrši obraćanje memoriji, pa se zbog toga ova adresa naziva direktna adresa. U konkretnom slučaju polje direktna adresa je 10-bitno što znači da se može adresirati memorija kapaciteta 1024 lokacija. Prednost ovakvog načina adresiranja je jednostavnost izvođenja, a nedostatak ograničeni adresni opseg. 8
11 Kod direktnog adresiranja modifikator M ima vrednost 01. Opkôd M direktna adresa X X X X 0 1 A A A A A A A A A A Slika 6. Format instrukcije kod direktnog adresiranja Indirektno adresiranje Kod indirektnog adresiranja, odgovarajućim poljem indirektna adresa (vidi Sliku 7) se specificira memorijska lokacija u kojoj se čuva adresa operanda. Kod direktnog adresiranja, da bi se dobila vrednost operanda potrebna je jedna operacija pribavljanja, dok su kod indirektnog potrebne dve. Osnovna prednost ove tehnike adresiranja je mogućnost pristupa većem adresnom prostoru, a nedostatak veći broj obraćanja memoriji. Kod indirektnog adresiranja modifikator M ima vrednost 10. opkôd M indirektna adresa X X X X 1 0 A A A A A A A A A A Slika 7. Format instrukcije kod indirektnog adresiranja Registarsko adresiranje Kod registarskog adresiranja, odgovarajućim poljem adresa registra (vidi Sliku 8) se specificira registar u kome je smešten operand. Prednosti registarskog adresiranja su: Adresno polje instrukcije kojim se specificira registar je malo i obima je nekoliko bitova. U konkretnom slučaju u polju adresa registra od važnosti su samo dva LS bita. Bitovi polja adresa registra označeni sa - nisu od važnosti. Dekodiranjem zadnja dva LS bita vrši se selekcija registara shodno sledećoj tabeli: AA Selekcija registra 00 R0 01 R1 10 R2 11 R3 Ne vrši se obraćanje memoriji; Instrukcije koje manipulišu sa sadržajem registra brzo se izvršavaju. Kod registarskog adresiranja modifikator M ima vrednost 11. opkod M adresa registra X X X X A A Slika 8. Format instrukcije kod registarskog adresiranja Napomena: Broj koji specificira adresu registra ne može biti veći od 3 dekadno, tj. 11 binarno. 9
12 1.4 Format i način izvršenja asemblerskih instrukcija Asemblerska instrukcija je simbolička verzija mašinske instrukcije. Instrukcije pišemo na asemblerskom jeziku. Notacija asemblerskog jezika bliska je ljudskom načinu razmišljanja. Ovim se programiranje znatno olakšava, ali s obzirom da procesor razume samo mašinske instrukcije (skup bitova) neophodno je asemblerske instrukcije prevesti. Program za prevođenje simboličke notacije u binarnu nazivamo asembler. U konkretnom slučaju, format asemblerskih instrukcija je sledeći: mnemonik [modifikator] [operand] gde: [.. ] ukazuje na opciono polje mnemonik ime kôda instrukcije, ovo polje je obavezno modifikator ukazuje na način adresiranja i to na sledeći načini: # neposredno indirektno adresiranje; $ registarsko adresiranje; bez modifikatora direktno adresiranje. operand specificira adresu ili registar koji se koristi kao operand mašinske instrukcije. Može da bude: - neposredna vrednost operanda (<operand>), kod neposrednog adresiranja, - da ukazuje na memorijsku lokaciju (M) gde je smeštena vrednost operanda, kod direktnog adresiranja, - da ukazuje na memorijsku lokaciju (adrm) gde je smeštena adresa memorijske lokacije sa vrednošću operanda, kod indirektnog adresiranja, - da specificira registar opšte namene (Rx) u koji je smeštena vrednost operanda, kod registarskog načina adresiranja. Zadaje se kao decimalni ili heksadecimalni broj ako je zadnji karakter H ili h. Vrednost operanda je 10-bitna, tj. u granicama Skup instrukcija procesora SCPU Skup naredbi SCPU čine sledećih petnaest instrukcija koje će biti analizirane po rastućem redosledu vrednosti opkôd polja formata instrukcije: OR Opkôd: 0000 Operacija: (operand) (akumulator) akumulator Asembler sintaksa: OR [modifikator] [operand] Objašnjenje: Instrukcijom OR se izvršava logička ILI operacija nad izvorišnim operandom specificiranim instrukcijom i odredišnim operandom AC, a rezultat se smešta u AC. U zavisnosti od načina adresiranja srećemo sledeće varijante Način adresiranja Tip operacije Aktivnost neposredno OR #operand <operand> AC AC direktno OR M M AC AC indirektno M AC AC registarsko OR $Rx Rx AC AC 10
13 AND Opkôd: 0001 Operacija: (operand) (akumulator) akumulator Asembler sintaksa: AND [modifikator] [operand] Objašnjenje: Instrukcijom AND se izvršava logička I operacija nad izvorišnim operandom specificiranim instrukcijom i odredišnim operandom AC, a rezultat se smešta u AC. U zavisnosti od načina adresiranja srećemo sledeće varijante NOT Način adresiranja Tip operacije Aktivnost neposredno AND #operand <operand> AC AC direktno AND M M AC AC indirektno M AC AC registarsko AND $Rx Rx AC AC Opkôd: 0010 Operacija: /(akumulator) akumulator Asembler sintaksa: NOT Objašnjenje: Instrukcijom NOT se izvršava logička operacija negacije nad sadržajem AC-a, a rezultat se smešta u AC. XOR Opkôd: 0011 Operacija: (operand) (akumulator) akumulator Asembler sintaksa: XOR [modifikator] [operand] Objašnjenje: Instrukcijom XOR se izvršava logička isključivo ILI operacija nad izvorišnim operandom specificiranim instrukcijom i odredišnim operandom AC, a rezultat se smešta u AC. U zavisnosti od načina adresiranja srećemo sledeće varijante Način adresiranja Tip operacije Aktivnost neposredno XOR #operand <operand> AC AC direktno XOR M M AC AC indirektno M AC AC registarsko XOR $Rx Rx AC AC Instrukcije OR, AND, NOT i XOR su logičke instrukcije i njihovij izvršenjem, vrednosti markera se menjaju na sledeći način: CARRY ne menja vrednost SIGN postavlja se na {1} ako je MS bit rezultata jednak {1}, inače ako je MS bit rezultata OR operacije {0} ovaj marker se postavlja na vrednost {0} ZERO postavlja se na {1} ako je rezultat nula, inače se postavlja na {0} PARITY postavlja se na {1} ako je broj jedinica u rezultatu paran, ako je neparan postavlja se na {0} 11
14 ADD Opkôd: 0100 Operacija: (operand) + (akumulator) akumulator Asembler sintaksa: ADD [modifikator] [operand] Objašnjenje: Instrukcijom ADD se izvršava aritmetička operacija sabiranje nad izvorišnim operandom specificiranim instrukcijom i odredišnim operandom AC, a rezultat se smešta u AC. U zavisnosti od načina adresiranja srećemo sledeće varijante SUB Način adresiranja Tip operacije Aktivnost Neposredno ADD #operand <operand> + AC AC Direktno ADD M M + AC AC Indirektno M + AC AC Registarsko ADD $Rx Rx + AC AC Izvršenjem ove instrukcije menjaju se vrednosti sledećih markera: CARRY postavlja se na {1} ako se nakon izvršavanja operacije javio prenos SIGN postavlja se na {1} ako je MS bit rezultata jednak {1}, inače ako je MS bit rezultata OR operacije {0} ovaj marker se postavlja na vrednost {0} ZERO postavlja se na {1} ako je rezultat nula, inače se postavlja na {0} PARITY postavlja se na {1} ako je broj jedinica u rezultatu paran, ako je neparan postavlja se na {0} Opkôd: 0101 Operacija: (operand) (akumulator) akumulator Asembler sintaksa: SUB [modifikator] [operand] Objašnjenje: Instrukcijom SUB se izvršava aritmetička operacija oduzimanja nad izvorišnim operandom specificiranim instrukcijom i odredišnim operandom AC, a rezultat se smešta u AC. U zavisnosti od načina adresiranja srećemo sledeće varijante Način adresiranja Tip operacije Aktivnost Neposredno SUB #operand <operand> AC AC Direktno SUB M M AC AC Indirektno M AC AC Registarsko SUB $Rx Rx AC AC Izvršenjem ove instrukcije menjaju se vrednosti sledećih markera: CARRY postavlja se na {1} ako se nakon izvršavanja operacije javilo pozajmljivanje sa bita najveće težine SIGN postavlja se na {1} ako je MS bit rezultata jednak {1}, inače ako je MS bit rezultata OR operacije {0} ovaj marker se postavlja na vrednost {0} ZERO postavlja se na {1} ako je rezultat nula, inače se postavlja na {0} PARITY postavlja se na {1} ako je broj jedinica u rezultatu paran, ako je neparan postavlja se na {0} 12
15 NEG Opkôd: 0110 Operacija: /(akumulator) + 1 akumulator Asembler sintaksa: NEG Objašnjenje: Instrukcijom NEG se izvršava aritmetička operacija negacije, kod prezentacije brojeva u drugom komplementu, nad sadržajem AC-a, a rezultat se smešta u AC. Izvršenjem ove instrukcije menjaju se vrednosti sledećih markera: LD CARRY postavlja se na {1} ako se nakon izvršavanja operacije javio prenos SIGN postavlja se na {1} ako je MS bit rezultata jednak {1}, inače ako je MS bit rezultata OR operacije {0} ovaj marker se postavlja na vrednost {0} ZERO postavlja se na {1} ako je rezultat nula, inače se postavlja na {0} PARITY postavlja se na {1} ako je broj jedinica u rezultatu paran, ako je neparan postavlja se na {0} Opkôd: 0111 Operacija: (operand) akumulator Asembler sintaksa: LD [modifikator] [operand] Objašnjenje: Instrukcijom za prenos podataka, LD, se izvršava operacija upisivanja sadržaja izvorišnog operanda specificiranog instrukcijom u akumulator. U zavisnosti od načina adresiranja srećemo sledeće varijante JMP Način adresiranja Tip operacije Aktivnost neposredno LD #operand <operand> AC Direktno LD M M AC indirektno M AC registarsko LD $Rx Rx AC Izvršenje ove instrukcije nema efekat na postavljanje statusnih markera. Opkôd: 1000 Operacija: (operand) programski brojač Asembler sintaksa: JMP [operand] Objašnjenje: Instrukcijom JMP se izvršava operacija bezuslovnog grananja (skoka) na memorijsku lokaciju specificiranu instrukcijom. Izvršenje ove instrukcije nema efekat na postavljanje statusnih markera. JZ Opkôd: 1001 Operacija: if ZERO = {1} then (operand) PC else continue Asembler sintaksa: JZ [operand] Objašnjenje: Instrukcijom JZ se izvršava operacija uslovnog grananja (skoka) na memorijsku lokaciju specificiranu instrukcijom ako je marker ZERO postavljen na {1}. Izvršenje ove instrukcije nema efekat na postavljanje statusnih markera. 13
16 JNZ Opkôd: 1010 Operacija: if ZERO = {0} (operand) PC else continue Asembler sintaksa: JNZ [operand] Objašnjenje: Instrukcijom JNZ se izvršava operacija uslovnog grananja (skoka) na memorijsku lokaciju specificiranu instrukcijom ako je marker ZERO postavljen na {0}. Izvršenje ove instrukcije nema efekat na postavljanje statusnih markera. INC Opkôd: 1011 Operacija: (akumulator) + 1 akumulator Asembler sintaksa: INC Objašnjenje: Instrukcijom INC se inkrementira sadržaj akumulatora. Izvršenjem ove instrukcije menjaju se vrednosti sledećih markera: MOV CARRY postavlja se na {1} ako se nakon izvršavanja operacije javio prenos SIGN postavlja se na {1} ako je MS bit rezultata jednak {1}, inače ako je MS bit rezultata OR operacije {0} ovaj marker se postavlja na vrednost {0} ZERO postavlja se na {1} ako je rezultat nula, inače se postavlja na {0} PARITY postavlja se na {1} ako je broj jedinica u rezultatu paran, ako je neparan postavlja se na {0} Opkôd: 1100 Operacija: (akumulator) Rx Asembler sintaksa: MOV [operand] Objašnjenje: Instrukcijom za prenos podataka, MOV, se izvršava operacija upisivanja sadržaja akumulatora u registar opšte namene specificiran instrukcijom. Izvršenje ove instrukcije nema efekat na postavljanje statusnih markera. ST Opkôd: 1101 Operacija: (akumulator) Memorija Asembler sintaksa: ST [operand] Objašnjenje: Instrukcijom za prenos podataka, ST, se izvršava operacija upisivanja sadržaja akumulatora u memorijsku lokaciju specificiranu instrukcijom. Izvršenje ove instrukcije nema efekat na postavljanje statusnih markera. NOP Opkôd: 1111 Operacija: Nema operacije Asembler sintaksa: NOP Objašnjenje: Instrukcija NOP je operacija bez efekta, inkrementira se sadržaj programskog brojača, program nastavlja sa izvršenjem. Izvršenje ove instrukcije nema efekat na postavljanje statusnih markera. 14
17 Primer: Ako je početna vrednost akumulatora AC = 30h, memorijskih lokacija M[61] = 50, M[42] = 112, M[112] = 333h i registra opšte namene R2 = 28431, sadržaj akumulatora AC i markera statusa (CARRY, SIGN, ZERO i PARITY ) nakon pojedinačnog izvršenja svake od sledećih instrukcija je: a) OR #95 b) OR AC AC (95) dec = ( ) bin (30) hex = ( ) bin = AC = CARRY = 0 SIGN = 0 ZERO = 0 PARITY = 1 M[61] AC AC (50) dec = ( ) bin (30) hex = ( ) bin = c) d) NOT AC = CARRY = 0 SIGN = 0 ZERO = 0 PARITY = 1 M[M[42]] AC AC M[M[42]] = M[112] (333) hex = ( ) bin (30) hex = ( ) bin = AC = CARRY = 0 SIGN = 0 ZERO = 0 PARITY = 1 /AC AC (30) hex = ( ) bin AC = CARRY = 0 SIGN = 1 ZERO = 0 PARITY = 1 15
18 e) AND $2 R2 AC AC (28431) dec = ( ) bin (30) hex = ( ) bin = f) XOR #112 AC = CARRY = 0 SIGN = 0 ZERO = 1 PARITY = AC AC (112) dec = ( ) bin (30) hex = ( ) bin = g) AC = CARRY = 0 SIGN = 0 ZERO = 0 PARITY = 0 M[M[42]] + AC AC M[M[42]] = M[112] (333) hex = ( ) bin (30) hex = ( ) bin = h) SUB #196 AC = CARRY = 0 SIGN = 0 ZERO = 0 PARITY = AC AC (196) dec = ( ) bin (30) hex = ( ) bin = AC = CARRY = 0 SIGN = 0 ZERO = 0 PARITY = 0 16
19 1.4.2 Pseudoinstrukcije Asembler procesora SCPU podržava sledeće dve pseudoinstrukcije: DSM <podatak> : smesti podatak u memoriju neposredno iza lokacije predhodne instrukcije RSx <podatak> : upiši podatak u registar opšte namene Rx, gde x [0..3] Faze izvršavanja instrukcije Kao što je prikazano na Slici 9 program koji izvršava procesor SCPU čini skup instrukcija (1 < I < N). Izvršenje instrukcije u grubim crtama se može podeliti na dve faze, fazu pribavljanja, FETCH, koja uključuje ciklus pribavljanja i dekodiranja instrukcije, i fazu izvršenja, EX. Svaku od faza čini veći broj koraka koji mogu da uključe paralelno izvršenje većeg broja mikrooperacija. Mikrooperacije su atomizirane akcije, tj. elementarne operacije koje se ne mogu dalje razbijati. Faza pribavljanja, FETCH, je identična za sve instrukcije. Faza dekodiranja se odnosi na određivanje tipa instrukcije i smatra se da je to aktivnost tipa višestruko-grananje (multiway branch), i obavlja se trenutno (zbog toga je na Slici 9 njeno vreme trajanja nula). Faza EX je različita za sve tipove instrukcija. nivo programa PROGRAM nivo instrukcija INSTRUKCIJA 1 INSTRUKCIJA 2 INSTRUKCIJA N nivo faze FETCH EX FETCH EX FETCH EX nivo mikrooperacija Slika 9. Nivoi izvršavanja programa U konkretnom slučaju fazu FETCH čine sledeća tri koraka: FETCH1 : AR PC FETCH2 : DR M, PC PC + 1 FETCH3 : IR DR[15:10], AR DR[9:0] gde su FETCH1, FETCH2 i FETCH3 koraci, a aktivnosti tipa AR PC, PC PC + 1, itd. predstavljaju mikrooperacije. U koraku FETCH1 sadržaj programskog brojača, PC, se upisuje u memorijsko adresni registar, AR. Adresira se memorija MEM i generiše signal Read (vidi Sliku 2). 17
20 U koraku FETCH2 čita se sadržaj adresirane memorijske lokacije i upisuje u registar DR. Istovremeno se sadržaj PC-a inkrementira sa ciljem da ukaže na narednu lokaciju u memoriji kojoj treba pristupiti. U koraku FETCH3 delimični sadržaj registra DR, bitovi d15 d10 se upisuju u instrukcioni registar, IR, dok se LS bitovi d9 d0 registra DR upisuju u AR. Radi pojednostavljenja usvaja se da se svaki od koraka FETCH1, FETCH2 i FETCH3 obavlja za jedan taktni interval što znači da se faza pribavljanja izvršava za tri taktna intervala. Aktivnost dekodiranje instrukcije smatraćemo da se za sve instrukcije izvršava trenutno. Broj mikrooperacija u fazi izvršenja, EX, zavisi od tipa instrukcija i adresnog načina rada. Radi bolje ilustracije principa rada procesora, u daljem tekstu, slikovito ćemo ukazati na načine izvršenja različitih tipova instrukcija polazeći od broja taktnih intervala potrebnih da se obavi faza izvršenja instrukcije EX Instrukcije kod kojih faza izvršenja EX traje jedan taktni interval Skup instrukcija kod kojih faza izvršenja EX traje jedan taktni interval (jedan korak) prikazan je na Slici 10. Broj mikrooperacija u okviru faze EX u zavisnosti od tipa instrukcije može biti različit (vidi Sliku 10 b)) FETCH1 FETCH2 ciklus pribavljanja FETCH3 ciklus dekodiranja IR = 0010 IR = 0110 IR = 1000 IR = 1001 IR = 1010 IR = 1011 IR = 1100 IR = 1101 IR = 1111 NOT NEG JMP1 JZ1 JNZ1 INC MOV$1 ST1 NOP ciklus izvršenja EX! a) Aktivnosti kod izvršenja instrukcija NOT : AC not AC NEG : AC - AC JMP1 : PC AR JZ1 : if ZERO = 0 then PC AR else continue JNZ1 : if ZERO = 1 then PC AR else continue INC : AC AC + 1 MOV$1 : R[AR[1:0]] AC ST1 : M[AR] AC NOP : no operation b) Mikrooperacije kod različitih tipova instrukcija Slika 10. Aktivnosti u toku faza FETCH i EX kod instrukcija kada faza EX traje jedan korak 18
21 4.3.2 Instrukcije kod kojih faza izvršenja EX traje dva taktna intervala Na Slici 11 prikazana je grupa instrukcija čija faza izvršenja traje dva taktna intervala. Slika 11 a) se odnosi na aktivnosti instrukcija koje koriste neposredni način adresiranja, a Slika 11 b) na mikrooperacije u fazi EX za ovaj način adresiranja. FETCH 1 FETCH 2 ciklus pribavljanja FETCH 3 ciklus dekodiranja IR = 0000 IR = 0001 IR = 0011 IR = 0100 IR = 0101 IR = 0111 OR1# AND1# XOR1# ADD1# SUB1# LD1# OR2# AND2# XOR2# ADD2# SUB2# LD2# ciklus izvršenja a) Aktivnosti kod izvršenja instrukcija OR1# : DR AR OR2# : AC AC or DR AND1# : DR AR AND2# : AC AC and DR XOR1# : DR AR XOR2# : AC AC xor DR ADD1# : DR AR ADD2# : AC AC + DR SUB1# : DR AR SUB2# : AC AC - DR LD1# : DR AR LD2# : AC DR b) Mikrooperacije kod različitih tipova instrukcija Slika 11. Aktivnosti u toku faza FETCH i EX kod instrukcija kada faza EX traje dva koraka 19
22 Slika 11 c) se odnosi na aktivnosti instrukcija koje koriste direktni način adresiranja, a Slika 11 d) na mikrooperacije u fazi EX za direktno memorijski način adresiranja. FETCH 1 FETCH 2 ciklus pribavljanja FETCH 3 ciklus dekodiranja IR = 0000 IR = 0001 IR = 0011 IR = 0100 IR = 0101 IR = 0111 OR1D AND1D XOR1D ADD1D SUB1D LD1D OR2D AND2D XOR2D ADD2D SUB2D LD2D ciklus izvršenja c) Aktivnosti kod izvršenja instrukcija OR1D : DR M OR2D : AC AC or DR AND1D : DR M AND2D : AC AC and DR XOR1D : DR M XOR2D : AC AC xor DR ADD1D : DR M ADD2D : AC AC + DR SUB1D : DR M SUB2D : AC AC - DR LD1D : DR M LD2D : AC DR d) Mikrooperacije kod različitih tipova instrukcija Slika 11. Aktivnosti u toku faza FETCH i EX kod instrukcija kada faza EX traje dva koraka 20
23 Slika 11 e) se odnosi na aktivnosti instrukcija koje koriste registarski način adresiranja, a Slika 11 f) na mikrooperacije u fazi EX za registarski način adresiranja. FETCH 1 FETCH 2 ciklus pribavljanja FETCH 3 ciklus dekodiranja IR = 0000 IR = 0001 IR = 0011 IR = 0100 IR = 0101 IR = 0111 OR1$ AND1$ XOR1$ ADD1$ SUB1$ LD1$ OR2$ AND2$ XOR2$ ADD2$ SUB2$ LD2$ ciklus izvršenja e) Aktivnosti kod izvršenja instrukcija OR1$ : DR REG[AR[1:0]] OR2$ : AC AC or DR AND1$ : DR REG[AR[1:0]] AND2$ : AC AC and DR XOR1$ : DR REG[AR[1:0]] XOR2$ : AC AC xor DR ADD1$ : DR REG[AR[1:0]] ADD2$ : AC AC + DR SUB1$ : DR REG[AR[1:0]] SUB2$ : AC AC - DR LD1$ : DR REG[AR[1:0]] LD2$ : AC DR f) Mikrooperacije kod različitih tipova instrukcija Slika 11. Aktivnosti u toku faza FETCH i EX kod instrukcija kada faza EX traje dva koraka 21
24 4.3.3 Instrukcije kod kojih faza izvršenja EX traje tri taktna intervala Na Slici 12 prikazana je grupa instrukcija čija faza izvršenja traje tri taktna intervala. Slika 12 a) se odnosi na aktivnosti instrukcija koje koriste indirektno memorijski način adresiranja, a Slika 12 b) na mikrooperacije u fazi EX za ovaj način adresiranja. FETCH 1 FETCH 2 ciklus pribavljanja FETCH 3 ciklus dekodiranja IR = 0000 IR = 0001 IR = 0011 IR = 0100 IR = 0101 IR = 0111 OR0@ AND0@ XOR0@ ADD0@ SUB0@ LD0@ OR1@ AND1@ XOR1@ ADD1@ SUB1@ LD1@ ciklus izvršenja OR2@ AND2@ XOR2@ ADD2@ SUB2@ LD2@ a) Aktivnosti kod izvršenja instrukcija OR0@ : AR M[9:0] OR1@ : DR REG[AR[1:0]] OR2@ : AC AC or DR AND0@ : AR M[9:0] AND1@ : DR REG[AR[1:0]] AND2@ : AC AC and DR XOR0@ : AR M[9:0] XOR1@ : DR REG[AR[1:0]] XOR2@ : AC AC xor DR ADD0@ : AR M[9:0] ADD1@ : DR REG[AR[1:0]] ADD2@ : AC AC + DR SUB0@ : AR M[9:0] SUB1@ : DR REG[AR[1:0]] SUB2@ : AC AC - DR LD0@ : AR M[9:0] LD1@ : DR REG[AR[1:0]] LD2@ : AC DR b) Mikrooperacije kod različitih tipova instrukcija Slika 12. Aktivnosti u toku faza FETCH i EX kod instrukcija kada faza EX traje tri koraka 22
25 2. Simulator simcpu U ovoj vežbi biće opisan princip rada simulatora, simcpu jednostavnog procesora SCPU a čija je arhitektura i skup instrukcija definisan u vežbi Jednostavna sekvencijalna procesorska jedinica. 2.1 KORAK 1 pokretanje programa simcpu Za pokretanje programa simcpu za Windows potrebno je preduzeti sledeće aktivnosti: a) izabrati programsku ikonu SimCPU for Windows lociranu na Desktop-u. b) aktivirati simcpu aktiviranje se izvodi dvostrukim klikom levim tasterom miša na odabranu ikonu simcpu c) startovanjem simcpu -a na ekranu se pojavljuje aplikacioni prozor pod nazivom SimCPU ASMEdit 2.01 untiled.asm (vidi Sliku 1) Text Editor Aplikacioni prozor predstavlja TEXT Editor i sastoji se iz četiri dela kao što je prikazano na Slici 1: 1. Menu-bar 2. Text editor 3. Pokazivač linije u kojoj se nalazi kursor 4. Izveštaj o greškama Slika 1. Text editor simcpu-a 23
26 1. Sekcija na vrhu se odnosi na polje Menu-bar. Menu-bar omogućava selekciju File, Edit, View, Assemble i Help operacije. File selekcijom ove operacije otvara se padajući meni koji sadrži sledeće opcije: New (selekcijom ove operacije) kreira se nova programska sekvenca Open učitava se fajl izvornog programa nazvan ime-prezime.asm sa lokacije D:\simCPU\Primeri Save pamti fajl koji se tekuće koriguje ili ažurira na mestu gde je bio prethodno zapamćen Save as... dodeljuje ime fajlu (ime-prezime.asm) koji se tekuće kreira, bira lokaciju gde će se taj fajl zapamtiti D:\simCPU\Primeri\ime-prezime i pamti fajl koji je kreiran Exit - izlazak iz Text editora. Izgled aplikacionog prozora je prikazan na Slici 2. Slika 2. Text editor simcpu-a sa selekcijom File Edit selekcijom ove operacije otvara se padajući meni (vidi Sliku 3) koji sadrži sledeće opcije: Undo vraćanje na prethodno stanje (koristi se kada se napravi greška pri unosu podataka, grešku ispravljamo ako se vratimo na prethodno stanje) Cut kopiranje selektovanog sadržaja. Kopiranjem, selektovani sadržaj se briše iz izvornog fajla. Copy - kopiranje selektovanog sadržaja. Kopiranjem, selektovani sadržaj se ne briše iz izvornog fajla. Paste lepljenje prethodno kopiranog selektovanog sadržaja iz izvornog fajla. Delete brisanje selektovanog sadržaja iz izvornog fajla. Select All selektovanje celokupnog (integralnog) sadržaja izvornog fajla. 24
27 Slika 3. Text editor simcpu-a sa selekcijom Edit View selekcijom ove operacije otvara se padajući meni (vidi Sliku 4) koji sadrži sledeće opcije: Slika 4. Text editor simcpu-a sa selekcijom View Registar - prikazuje trenutni sadržaj svih registara jednostavnog procesora SCPU (vidi Sliku 11) Trace prikazuje sadržaj registara (AR, PC, DR, AC i IR) u toku izvršavanja svake od mikrooperacija. Memory - prikazuje trenutni sadržaj svih memorijskih lokacija (vidi Sliku 5) 25
28 Slika 5. Memorija Convertor aktivira 16-bitni konvertor decimalnih, heksadecimalnih i binarnih podataka. Podatak se unosi u polje Input Value (vidi Sliku 6) u jednom od formata decimalni, heksadecimalni ili binarni. U poljima DEC, HEX, BIN dobija se odgovarajući ekvivalent u decimalnom, heksadecimalnom i binarnom obliku. Uneti podatak moguće je upisati na adresu koja se zadaje kao decimalna vrednost (od 0 do 1023) u polje Memory Adress, a memorisanje unetog podatka na specificiranu adresu vrši se klikom levog tastera miša na polje Put to Memory. Uneti podatak moguće je upisati u jednom od registara opšte namene R0 R3. Specifikacija adrese registara se vrši upisom odgovarajuće decimalne vrednosti koja je u granicama od 0 do 3 u polje Register Adress. Memorisanje unetog podatka u specificirani registar vrši se klikom levog tastera miša na polje Put to Register. U polje Info: ispisuje se poruka koja ukazuje na prekoračenje opsega unete vrednosti u polje Input Value. Slika 6. Convertor Control Unit ovom opcijom vrši se nadgledanje izvršenja tekuće instrukcije. Biranjem ove opcije na displeju se prikazuje Slika 7 koja sadrži veći broj upravljačkih polja. Značenje ovih polja je sledeće: 26
29 Register CONTROL - 7-bitno polje koga čine upravljačka bit-polja ARLOAD, PCLOAD, PCINC, DRLOAD, ACLOAD, ACINC, IRLOAD. Stanjem ovih bit-polja upravlja se operacijom punjenja registra (kao na primer ARLOAD) ili inkrementiranja sadržaja registra (kao što je PCINC). Upravljački bit je aktivan ako je postavljen na {1}. BUS CONTROL 7-bitno polje koga čine upravljačka bit-polja MR, MW, ARBUS, PCBUS, DRBUS, ACBUS, IRBUS, REGBUS. Sadržajem ovih bit-polja upravlja se izlazima trostatičkih drajvera čiji su izlazi povezani na 16-bitnu sistemsku magistralu simcpu-a (vidi Sliku 1 iz vežbe Jednostavna sekvencijalna centralna procesorska jedinica). Izlaz trostatičkog drajvera je aktivan ako je odgovarajuće bitpolje postavljeno na logičku {1} (tako na primer, ako je bit-polje ARBUS={1} tada je sadržaj registra AR je dostupan na 16-bitnoj sistemskoj magistrali, vidi Sliku 1 iz vežbe Jednostavna sekvencijalna centralna procesorska jedinica). ALUSEL selektorski ulazi koji definišu tip operacije ALU-a. Detalji koji se odnose na izbor funkcije ALU-a, tj. sadržaj bit-polja S0, S1 i S2 dati su u Tabeli 1 vežbe Jednostavna sekvencijalna centralna procesorska jedinica. Data Register CONTROL - 4-bitno polje koga čine upravljačka bit-polja R0, R1, R2 i R3. Aktiviranjem odgovarajućeg bit-polja selektuje se jedan od registara opšte namene radi operacije upisa ili čitanja. Ako je bit-polje postavljeno na {1} tada je odgovarajući registar selektovan. Memory Access dvobitno polje koga čine upravljačka bit-polja READ i WRITE. Kada je READ={1} tada se obavlja operacija čitanja memorije, a kada je WRITE={1} vrši se operacija upisa u memoriju. CLK jednobitno bit-polje koje ukazuje na stanje globalnog takta. Slika 7. Control Unit Disassembler prikazuje na displeju sadržaj asembliranog programa, tj. svaki izvršni kod instrukcije konvertuje u odgovarajuću asemblersku instrukciju. Izgled disasemblirane instrukcije čine 4 polja, čije je značenje sledeće (vidi Sliku 8): polje 1 ukazuje na adresu memorijske lokacije u kojoj je locirana instrukcija polje 2 mašinski kod asemblirane instrukcije (napomenimo da se na kolor displeju prikaz opkod polja vrši u plavoj boji, prikaz modifikatora u crvenoj boji a operanda u zelenoj) polje 3 mašinski kod koji je upisan u memoriju (sadržaj je isti kao i u polju 2) polje 4 se odnosi na format instrukcije u asemblerskom jeziku, a čine ga mnemonik i operand. Disassembler se automatski pokreće nakon asembliranja neke korektno kreirane programske sekvence koja se unosi preko Text-editora. 27
30 Pokretanje izvršenja programske sekvence koja se vidi na displeju može se obaviti klikom levog tastera miša na polje Start CPU. Klikom levog tastera miša na polje OK zatvara se Disassembler. Slika 8. Disassembler Assemble koristi se za asembliranje sadržaja izvornog programa izvornog fajla sa ekstenzijom.asm koji se unosi preko Text-editora. Asemblirani fajl ima ekstenziju.obj i smešta se u fajl compile.obj. U toku izvršenja programa fajl compile.obj se puni (load-uje) u memoriji i dobija formu compile.exe. Aktiviranje izvršenja programa na displeju prati generisanje prozora Disassembler. Aktivnosti koje su karakteristične za izvršenje svake faze instrukcije (vidi Sliku 11 u KORAKU 2 ove vežbe) mogu se pratiti klikom levog tastera miša na polje Start CPU (vidi Sliku 8). Help opcija služi za dobijanje pomoćnih informacija o programu. 2. Sekcija Text editor (vidi Sliku 1) aktivira se klikom levog tastera miša. Kao efekat pojavljuje se kursor pozicioniran na krajnje gornjoj levoj poziciji aktivne površine Editora koja se koristi za unos izvornog programa. 3. Sekcija Pokazivač linije (vidi Sliku 1) predstavlja linijski brojač, brojna vrednost ukazuje na liniju u kojoj se unosi asemblerski kôd. 4. Sekcija Izveštaj o greškama Sadržaj ovog polja ukazuje na sintaksne greške unete u izvornom programu u određenim linijama (informacija sadrži podatak o broju linije gde postoji greška i tip greške). U slučaju da ne postoje sintaksne greške na displeju se prikazuje poruka Nema grešaka. Proces asembliranja je validan ako ne postoje greške. 28
31 2.1.2 Registry Aktiviranje prozora Registry se obavlja na jedana od sledeća dva načina: a) u okviru prozora simcpu ASMEdit 2.01 untiled.asm bira se funkcija View, a u padajućem meniju selektuje se opcija Registry (vidi Sliku 4) b) u okviru prozora Disassembler kliknuti levim tasterom miša na polje Start CPU (vidi Sliku 8) Prozor Registry (vidi Sliku 11) se sastoji iz četiri dela: 1. Menu-bar 2. Informacioni deo 3. Memorija MEM 4. SCPU 1. Sekcija na vrhu se odnosi na polje Menu-bar. Menu-bar omogućava selekciju GO, STOP, RESET, STEP FWD, SPEED, View, Help operacije. GO Klikom levog tastera miša na ovo polje vrši se startovanje asemblirane programske sekvence koja se izvršava kao celokupna programska sekvenca STOP Klikom levog tastera miša na ovo polje vrši se zaustavljanje izvršavanja programske sekvence, tj. zaustavlja se rad SCPU-a RESET Klikom levog tastera miša na ovo polje vrši se inicijalizacija programskog brojača na 0, tj. na početak programske sekvence STEP FWD klikom levog tastera miša na ovo polje pokreće se izvršenje programa od početka na principu korak po korak, tj. mikro-operacija po mikro-operacija. SPEED klikom levog tastera miša na ovo polje otvara se prozor prikazan na Slici 9. Klikom levog tastera miša na strelicu sa desne strane se vrši povećanje brzine izvršavanja instrukcije, a klikom na strelicu sa leve strane vrši se smanjivanje brzine. Nakon podešavanja na željenu brzinu potrebno je kliknuti na polje OK. Slika 9. Promena brzine View selekcijom ove operacije otvara se padajući meni koji sadrži sledeće opcije: Memory, Trace, Control Unit, Convertor, Full Screen, Colors. Opcije: Memory, Trace, Control Unit i Convertor imaju potpuno istu funkciju kao i opcije iz operacije View kod Text Editor a (vidi Sliku 4). Selekcijom operacije Full Screen prozor Registry se prikazuje preko celog displeja. Selekcijom operacije Colors otvara se prozor Choose 29
32 Color (vidi Sliku 10) koji služi za promenu prikazivanja memorije i registara u okviru SCPU-a. Slika 10. Promena prikazivanja Help opcija služi za dobijanje pomoćnih informacija o programu. 2. Informacioni deo - (vidi Sliku 11) čine tri dela: Instruction prikazuje koja se instrukcija trenutno izvršava Inst. Number prikazuje broj linije tekst editora u kojoj se nalazi instrukcija koja se izvršava State prikazuje mikrooperaciju instrukcije koji se trenutno izvršava 3. Deo Memoriju MEM čine tri dela Memorija M predstavlja 2k memoriju (vidi Sliku 5) Kontrolni ulazi za upis i čitanje podataka iz memorije (Read i Write) Linije za spregu memorije i SCPU-a preko gradivnih blokova A[9:0] i D[15:0] koje predstavljaju adresnu magistralu i magistralu podataka, respektivno. 4. Blok SCPU čine (vidi Sliku 11): Korisničko vidljivi registri AC, R0, R1, R2 i R3 Upravljački i statusni registri PC, AR, DR, PSW, IR Aritmetičko logička jedinica ALU Osam trostatičkih drajvera ARBus, PCBus, DRBus, ACBus, IRBus, REGBus, MR i MW Dva gradivna bloka A[9:0] i D[15:0] Linija za globalno taktovanje CLK Dekodera DEK tipa 2-u-4 16-bitna magistrala podataka kontrolni signali za dozvolu upisa podatka sa 16-bitne magistrale podataka u registre ARLOAD, PCLOAD, DRLOAD, ACLOAD, IRLOAD. kontrolni signali za inkrementiranje registara PC i AC PCINC, ACINC 30
33 Uloge pojedinih delova SCPU-a su objašnjene u Vežbi 1. Svaki signal za dozvolu je setovan ako je postavljen na {1}, tj. ako je predstavljen crvenom bojom. Na Slici 11 to su signali ARLOAD, PCBus. Slika 11. Registry SCPU-a 31
34 2.2 KORAK 2 ilustracija rada programa kroz jedan reprezentativni primer Ilustracije radi u ovom koraku biće opisan način izvršenja jedne test sekvence. Primer: Neka procesor SCPU izvršava sledeću programsku sekvencu Start: LD #2 // 2 AC ADD #3 // AC+3 AC MOV 1 LD #5 AND $1 // AC R1 // 5 AC //AC and R1 AC // go to Start Aktiviranjem simulatora simcpu proslediti izvršenje instrukcije. Postupak rada Postupak rada čine sledeći koraci: 1. izabrati programsku ikonu SimCPU for Windows lociranu na Desktop-u. 2. aktivirati simcpu aktiviranje se izvodi dvostrukim klikom levim tasterom miša na odabranu ikonu simcpu 3. Startovanjem simcpu-a na ekranu se pojavljuje aplikacioni prozor pod nazivom simcpu ASMEdit 2.01 untiled.asm (vidi Sliku 1) 4. u oblasti aktivne površine Editor-a pozicionirati kursor u krajnje gornjoj levoj poziciji. U delu Line, kada je kursor pozicioniran u krajnje gornjoj levoj poziciji, vrednost linijskog brojača je 0, tj. prikazuje se broj linije uneti izvorni program iz Primer-a 1 u aktivnu površinu Editor-a. U svakoj liniji aktivne površine unosi se po jedna instrukcija. Prelazak na novu liniju se vrši pritiskom na dirku Enter. Nakon svakog unosa instrukcije vrednost linijskog brojača u delu Line se inkrementira za 1. U toku unosa zadnje instrukcije vrednost linijskog brojača biće u toku unosa programa može da se javi greška zbog nekorektnog unosa informacija. Izveštaj o grešci se raportira u delu Izveštaj o greškama. Greška se ispravlja pozicioniranjem kursora na nekorektno uneti karakter. Napomena: Svaku praznu liniju simulator interpretira kao sintaksnu grešku. 7. asemblirati unetu programsku sekvencu klikom levog tastera miša na funkciju Assemble lociranu u delu Menu-bar. Na video prikazu se automatski generiše prozor Disassembler. U aktivnoj površini Disassembler-a prikazuje se izgled disasemblirane instrukcije za svaku liniju. 8. startovati SCPU klikom levog tastera miša na polje Start CPU prozora Disassembler (vidi Sliku 8). 9. startovanjem SCPU-a na ekranu se prikazuje prozor Registry koji ilustruje rad simulatora simcpu-a na principu mikrooperacija po mikrooperacija. 32
35 Postupak rada u daljem toku je sledeći: a) klikom levog tastera miša na polje STOP zaustaviti rad SCPU-a b) klikom levog tastera miša na polje RESET inicijalizirati programski brojač na vrednost nula, tj. na početak programa c) klikom levog tastera miša na polje STEP FWD pokreće se izvršenje programa od početka na principu korak po korak, tj. mikrooperacija po mikrooperacija. Aktivnosti u toku izvršavanja mikrooperacije koje se odnose na tok podataka vizuelno su naglašene odgovarajućim bojenjem puta signala kroz sistem. Instrukcija kao i odgovarajuća mikrooperacija koja se tekuće izvršava prikazuje se u alfanumeričkom obliku u okviru informacionog dela prozora Registry. d) ponoviti korak c) do kraja izvršenja programa i uočiti vizuelne promene koje se odnose na aktiviranje odgovarajućih upravljačkih signala, puta podataka kroz sistem, promenu sadržaja registara SCPU-a, za svaku od mikrooperacija pojedinačno. Sadržaji memorijskih lokacija kao i aktivnosti koje obavlja ALU automatski se vizuelno prikazuju na displeju. 10. vežbu završiti klikom levog tastera miša na polje X lociranog u delu Registry (vidi Sliku 11) 33
36 3. Analiza rada SCPU-a Za pokretanje programa simcpu za Windows potrebno je preduzeti aktivnosti koje su opisane u vežbi 2 ove labaratorijske vežbe Adresni načini rada Kroz reprezentativne primere svakog od načina adresiranja vizuelno uočiti scenarij svih koraka izvršenja instrukcije. a) Neposredni način adresiranja Primer ADD #100 1) PC AR Narandžasta 2) MEM DR Plava 3) DR IR ^ DR AR Zelena 4) AR DR Žuta 5) DR ALU Zelena AC ALU ALU AC b) Indirektni način adresiranja Primer Ljubičasta Ljubičasta 1) PC AR Narandžasta 2) MEM DR Plava 3) DR IR ^ DR AR Zelena 4) MEM AR Žuta 5) MEM DR Plava 6) DR ALU Zelena AC ALU ALU AC Ljubičasta Ljubičasta 34
37 c) Registarski način adresiranja Primer ADD $2 1) PC AR Narandžasta 2) MEM DR Plava 3) DR IR ^ DR AR Zelena 4) R2 DR Siva 5) DR ALU Zelena AC ALU ALU AC d) Direktni način adresiranja Primer ADD 100 Ljubičasta Ljubičasta 1) PC AR Narandžasta 2) MEM DR Plava 3) DR IR ^ DR AR Zelena 4) MEM DR Plava 5) DR ALU Zelena AC ALU ALU AC Ljubičasta Ljubičasta 35
38 Zadatak 1. Proveriti ispravnost rada SCPU-a koristeći test sekvence Grupa 1,..., Grupa 15. Postupak čine sledeći koraci: a) Nakon asembliranja test sekvence u Menu-bar-u TEXT Editor-a simcpu ASMEdit 2.01 klikom levog tastera miša na opciju View otvara se padajući meni u okviru koga klikom levog tastera miša potrebno je odabrati opciju converter (vidi Sliku 6 vežbe 2). b) Uneti vrednosti iz Tabele 1 u memoriju i u registre opšte namene. Postupak unošenja je sledeći: veličinu VREDNOST uneti u polje Input Value u gornjem levom uglu prozora 16-bit Integer HEX, BIN, DEC converter, uneti adresu memorijske lokacije na koju želimo da upišemo podatak u polje Memory Adress (ukoliko upisujemo podatak u memoriju) ili adresu registra opšte namene u polje Register Adress (ukoliko podatak upisujemo u registar) klikom levog tastera miša na polje Put to Memory ili Put to Register podatak će biti upisan u memorijsku lokaciju ili registar na unetoj adresi, respektivno. Tabela 1. Unos u memoriju VREDNOST Adresa memorijske lokacije Unos u registar opšte namene VREDNOST Adresa registra c) Nakon upisivanja podataka klikom levog tastera miša na polje Disassembler-a Start CPU pokrenuti simulator. Uočiti i ispisati scenarij svih koraka navedenih instrukcija u okviru zadate test sekvence. Korake instrukcija zadate test sekvence pokretati pomoću opcije STEP FWD. Nakon svakog koraka smer kretanja podatka i boju koja ga označava zabeležiti na odgovarajućem mestu u Tabeli 2 na način koji je prikazan u primerima Sekcije 1 Adresni načini rada ove vežbe. Test sekvenca: Grupa 1. Grupa 2. Grupa 3. ADD #4 AND 12 XOR $0 MOV $3 ADD 11 ADD $1 OR #2 ST 20 SUB 11 NEG XOR #15 AND $2 MOV $3 36
Algoritmi i arhitekture DSP I
Univerzitet u Novom Sadu Fakultet Tehničkih Nauka Katedra za računarsku tehniku i međuračunarske komunikacije Algoritmi i arhitekture DSP I INTERNA ORGANIACIJA DIGITALNOG PROCESORA A OBRADU SIGNALA INTERNA
ВишеP1.2 Projektovanje asemblera
ПРОЈЕКТОВАЊЕ АСЕМБЛЕРА Асемблер Модули асемблера 1 Дефинисање новог лингвистичког нивоа превођењем Потребан преводилац алат који преводи програм написан на једном језику (на једном лингвистичком нивоу)
ВишеLAB PRAKTIKUM OR1 _ETR_
UNIVERZITET CRNE GORE ELEKTROTEHNIČKI FAKULTET STUDIJSKI PROGRAM: ELEKTRONIKA, TELEKOMUNIKACIJE I RAČUNARI PREDMET: OSNOVE RAČUNARSTVA 1 FOND ČASOVA: 2+1+1 LABORATORIJSKA VJEŽBA BROJ 1 NAZIV: REALIZACIJA
ВишеOPIS RAČUNARSKOG SISTEMA Računarski sistem se sastoji od procesora, operativne memorije, tajmera i terminala. Sve komponente računarskog sistema su me
OPIS RAČUNARSKOG SISTEMA Računarski sistem se sastoji od procesora, operativne memorije, tajmera i terminala. Sve komponente računarskog sistema su međusobno povezane preko sistemske magistrale. Tajmer
ВишеZbirka resenih zadataka iz arhitekture racunara
Ј. ЂОРЂЕВИЋ, З. РАДИВОЈЕВИЋ, М. ПУНТ, Б. НИКОЛИЋ, Д. МИЛИЋЕВ, Ј. ПРОТИЋ, А. МИЛЕНКОВИЋ АРХИТЕКТУРА И ОРГАНИЗАЦИЈА РАЧУНАРА ПРЕКИДИ, МАГИСТРАЛА И УЛАЗ/ИЗЛАЗ ЗБИРКА РЕШЕНИХ ЗАДАТАКА Београд 2013. i САДРЖАЈ
ВишеSlide 1
predmet Inženjerska informatika Operativni sistem dr Anica Milošević Koji operativni sistemi postoje? Microsoft Windows Linux Suse Red Hat Ubuntu Unix 26.1.2018. 2 Šta je Windows operativni sistem? Operativni
ВишеP11.3 Analiza zivotnog veka, Graf smetnji
Поједностављени поглед на задњи део компајлера Међурепрезентација (Међујезик IR) Избор инструкција Додела ресурса Распоређивање инструкција Инструкције циљне архитектуре 1 Поједностављени поглед на задњи
ВишеEdukacioni racunarski sistem
ТРАНСЛАЦИЈА ИНСТРУКЦИЈА 1. Разматра се рачунарски систем у коме се извршавање одређене инструкције одвија у 6 фаза помоћу измењеног процесора са стандардном проточном обрадом (слика 1.). У процесор са
Више** Osnovni meni
Instalacija serverske verzije Kataloga propisa Instalacija Kataloga propisa se vrši na sljedeći način: 1. Ubacite Instalacioni disk ili USB memoriju u računar. 2. Instalacioni program će se automatski
ВишеУвод у организацију и архитектуру рачунара 1
Увод у организацију и архитектуру рачунара 2 Александар Картељ kartelj@matf.bg.ac.rs Напомена: садржај ових слајдова је преузет од проф. Саше Малкова Увод у организацију и архитектуру рачунара 2 1 Секвенцијалне
ВишеELEKTROTEHNIČKI FAKULTET, UNIVERZITET U BEOGRADU KATEDRA ZA ELEKTRONIKU UVOD U ELEKTRONIKU - 13E041UE LABORATORIJSKA VEŽBA Primena mikrokontrolera
ELEKTROTEHNIČKI FAKULTET, UNIVERZITET U BEOGRADU KATEDRA ZA ELEKTRONIKU UVOD U ELEKTRONIKU - 13E041UE LABORATORIJSKA VEŽBA Primena mikrokontrolera CILJ VEŽBE Cilj ove vežbe je da se studenti kreiranjem
ВишеRazvoj programa, Code::Blocks, struktura programa, printf, scanf, konverzioni karakteri predavač: Nadežda Jakšić
Razvoj programa, Code::Blocks, struktura programa, printf, scanf, konverzioni karakteri predavač: Nadežda Jakšić projektni zadatak projektovanje programa (algoritmi) pisanje programskog koda, izvorni kod,
ВишеОрт колоквијум
Испит из Основа рачунарске технике - / (6.6.. Р е ш е њ е Задатак Комбинациона мрежа има пет улаза, по два за број освојених сетова тенисера и један сигнал који одлучује ко је бољи уколико је резултат
ВишеLaboratorija za termičku obradu Inženjerstvo površina Kratko uputstvo za obradu i analizu profila u programskom paketu SPIP Programski paket SPIP preu
Kratko uputstvo za obradu i analizu profila u programskom paketu SPIP Programski paket SPIP preuzmite sa sledećeg linka https://www.imagemet.com/products/spip/download/downloadspip/. Instalirajte softver,
ВишеMicrosoft PowerPoint - Programski_Jezik_C_Organizacija_Izvornog_Programa_I_Greske [Compatibility Mode]
Programski jezik C organizacija izvornog programa Prevođenje Pisanje programa izvorni program Prevođenje programa izvršni program Izvršavanje programa rezultat Faze prevođenja Pretprocesiranje Kompilacija
ВишеУпутство за пријављивање испита путем интернета Да би студент могао да пријави испит путем интернета мора прво да се пријави. Пријављивање се врши у п
Упутство за пријављивање испита путем интернета Да би студент могао да пријави испит путем интернета мора прво да се пријави. Пријављивање се врши у посебном дијалог-прозору до кога се долази линком есервис
ВишеMicrosoft PowerPoint - PRI2014 KORIGOVANO [Compatibility Mode]
1. Broj bitova koji se jednovremeno prenosi i obrađuje unutar procesora naziva se: a) radni takt b) procesorski kod c) procesorska reč d) procesorski takt 1. Broj bitova koji se jednovremeno prenosi i
ВишеNo Slide Title
Statistika je skup metoda za uređivanje, analiziranje i grafičko prikazivanje podataka. statistika???? Podatak je kvantitativna ili kvalitativna vrijednost kojom je opisano određeno obilježje (svojstvo)
ВишеУПУТСТВО ЗА КОРИСНИКА Приступ локацији часописа Српски архив за целокупно лекарство добија се преко internet adrese: Након
УПУТСТВО ЗА КОРИСНИКА Приступ локацији часописа Српски архив за целокупно лекарство добија се преко internet adrese: http://www.srpskiarhiv.rs/ Након тога се на екрану појављује форма за пријаву на часопис
ВишеZadatak T=5: Jedinica WBSD propušta vred Potiče iz polja Rwb.LMD Signal Rwb.WRLMD izaziva propuštanje ove vrednosti 2. Vrednost 0000
Zadatak 2.1 1. T=5: Jedinica WBSD propušta vred 0000 0003 Potiče iz polja Rwb.LMD Signal Rwb.WRLMD izaziva propuštanje ove vrednosti 2. Vrednost 0000 0003 koja je pročitana u taktu 5 (prethodno pitanje)
ВишеПРОГРАМИ ЗА ПРАВЉЕЊЕ ПРЕЗЕНТАЦИЈА
Predmet: Inženjerska informatika Tema: POWER POINT Predmetni nastavnik: dr Anica Milošević PROGRAMI ZA PRAVLJENJE PREZENTACIJA Pod pojmom prezentacije smatra se predstavljanje neke ideje, rada,... U zavisnosti
Више_sheets.dvi
Zavod za elektroniku, mikroelektroniku, 28. studenog 2008. računalne i inteligentne sustave 2. me duispit iz Arhitekture računala 2, teorijski dio 1. Koja komponenta modernih računala nije bila prisutnau
ВишеPrimenjeno programiranje - vezbe GUI i baze podataka
Primenjeno programiranje - Vežbe Java i NetBeans IDE 6.5 Kreiranje korisničkog interfejsa Primer jednostavne aplikacije: 1. Odabrati opciju File > New Project 2. Meñu kategorijama odabrati Java i podkategoriju
ВишеTutoring System for Distance Learning of Java Programming Language
Deklaracija promenljivih Inicijalizacija promenljivih Deklaracija promenljive obuhvata: dodelu simboličkog imena promenljivoj i određivanje tipa promenljive (tip određuje koja će vrsta memorijskog registra
ВишеP9.1 Dodela resursa, Bojenje grafa
Фаза доделе ресурса Ова фаза се у литератури назива и фазом доделе регистара, при чему се под регистрима подразумева скуп ресурса истог типа. Додела регистара променљивама из графа сметњи се обавља тзв.
ВишеMicrosoft Word - Uputstvo za koristenje aplikacije GIPKO
Aplikacija za elektronsko popunjavanje obrasca GIP-1022 i spašavanje podataka u datoteku u XML formatu GIPKO Verzija 1.2 Sadržaj Uvod... 3 Instalacija aplikacije... 4 Pokretanje aplikacije... 7 Meni aplikacije...
ВишеGenerated by Foxit PDF Creator Foxit Software For evaluation only. Operativni sistem U računarstvu, operativni sistem (OS
Operativni sistem U računarstvu, operativni sistem (OS) je kompleksan programski sistem koji kontroliše i upravlja uređajima i računarskim komponentama i obavljanje osnovne sistemske radnje. Operativni
ВишеR u z v e l t o v a 5 5, B e o g r a d, t e l : ( ) , m a i l : c o n t a c p s i t. r s, w w w. p s i t. r s
UPUTSTVO ZA BRZO UMREŽAVANJE PROGRAMA MPP2 Da bi program MPP2 radio u mrežnom okruženju po sistemu klijent-server, potrebno je da se na računarima koji su mrežno povezani instalira: serverska verzija programa
ВишеSlide 1
OSNOVNI POJMOVI Naredba je uputa računalu za obavljanje određene radnje. Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Pisanje programa zovemo programiranje. Programski jezik
ВишеPrecesor Intel 8086
Precesor Intel 8086 Uvod Procesor 8086 jedan je od najvažnijih u istoriji računarstva, rodonačelnik Intelove 80x86 familije kojoj pripadaju: 8086, 80286, 80386, 80486, Pentium, Pentium II itd. Familija
ВишеRAČUNARSKI SISTEM Ne postoji jedinstvena definicija pojma računarski sistem. Računarski sistem predstavlja skup mašina i pridruženih metoda (realizova
RAČUNARSKI SISTEM Ne postoji jedinstvena definicija pojma računarski sistem. Računarski sistem predstavlja skup mašina i pridruženih metoda (realizovanih u obliku softvera) organizovanih radi vršenja automatske
Више4. Веза између табела практичан рад 1. Повежите табеле Proizvodi и Proizvođači у бази података Prodavnica.accdb везом типа 1:N. 2. Креирајте табелу St
4. Веза између табела практичан рад 1. Повежите табеле Proizvodi и Proizvođači у бази података Prodavnica.accdb везом типа 1:N. 2. Креирајте табелу Stavke_računa која ће разрешити проблем везе типа N:N
ВишеОрт колоквијум
II колоквијум из Основа рачунарске технике I - 27/28 (.6.28.) Р е ш е њ е Задатак На улазе x, x 2, x 3, x 4 комбинационе мреже, са излазом z, долази четворобитни BCD број. Ако број са улаза при дељењу
ВишеСТАРТ - СТОП ПАРКИНГ СИСТЕМ КОРИСНИЧКО УПУТСТВО страна 1 од 12
СТАРТ - СТОП ПАРКИНГ СИСТЕМ КОРИСНИЧКО УПУТСТВО страна 1 од 12 РЕГИСТРАЦИЈА НА СТАРТ-СТОП ПАРКИНГ СИСТЕМ За коришћење СТАРТ-СТОП ПАРКИНГ система, корисник (физичко или правно лице) попуњава упитник у просторијама
ВишеMicrosoft Word - 11 Pokazivaci
Pokazivači U dosadašnjem radu smo imali prilike da koristimo promenljive koje smo deklarisali na početku nekog bloka. Prilikom deklaracije promenljiva dobija jedinstveni naziv i odgovarajući prostor u
ВишеLogicko projektovanje racunarskih sistema I
PRIMERI SA PREDAVANJA 17 Beta asembler Zadatak 1. Posmatrajmo sledeću funkciju napisanu u programskom jeziku C, za računanje najvećeg zajedničkog delioca dva pozitivna cela broja: int gcd(int a, int b)
ВишеPROMENLJIVE, TIPOVI PROMENLJIVIH
PROMENLJIVE, TIPOVI PROMENLJIVIH Šta je promenljiva? To je objekat jezika koji ima ime i kome se mogu dodeljivati vrednosti. Svakoj promenljivoj se dodeljuje registar (memorijska lokacija) operativne memorije
Вишеmikrorem d.o.o. m e r n o r e g u l a c i o n a o p r e m a Uputstvo za korišćenje uređaja ZLR1CP doc /10 "MIKROREM" d.o.o., Braće Spasić 4A,
mikrorem d.o.o. m e r n o r e g u l a c i o n a o p r e m a Uputstvo za korišćenje uređaja CP doc. 0448-10/10 "MIKROREM" d.o.o., Braće Spasić 4A, 32000 ČAČAK e-mail: office@mikrorem.com web: www.mikrorem.com
ВишеFunkcije predavač: Nadežda Jakšić
Funkcije predavač: Nadežda Jakšić funkcije delovi programa koji izvršavaju neki zadatak, celinu; dele na ugrađene, korisničke i main funkciju ugrađene funkcije printf,scanf... da bi se one izvršile potrebno
ВишеUpitni jezik SQL
Šta je SQL? SQL (Structured Query Language) je jezik koji je Američki Institut za Nacionalne Standarde (ANSI - American National Standards Institute) prihvatio kao standardni jezik za relacione baze podataka.
ВишеTest ispravio: (1) (2) Ukupan broj bodova: 21. veljače od 13:00 do 14:00 Županijsko natjecanje / Osnove informatike Osnovne škole Ime i prezime
Test ispravio: () () Ukupan broj bodova:. veljače 04. od 3:00 do 4:00 Ime i prezime Razred Škola Županija Mentor Sadržaj Upute za natjecatelje... Zadaci... Upute za natjecatelje Vrijeme pisanja: 60 minuta
ВишеUpute - JOPPD kreiranje obrasca
Verzija uputa: 1.0 - JOPPD obrazac IPIS-PLAĆE, IPIS-UGOVORI O DJELU Ove upute će se još nadopunjavati, pa molim korisnike da redovito provjere da li imaju zadnje upute. Verzija uputa prikazana je na početku!
ВишеУПУТСТВО ЗА КОРИСНИКА Приступ локацији часописа Српски архив за целокупно лекарство добија се преко internet adrese: Након
УПУТСТВО ЗА КОРИСНИКА Приступ локацији часописа Српски архив за целокупно лекарство добија се преко internet adrese: http://www.srpskiarhiv.rs/ Након тога се на екрану појављује форма за пријаву на часопис
ВишеAKVIZICIJA PODATAKA SA UREĐAJEM NI USB-6008 NI USB-6008 je jednostavni višenamjenski uređaj koji se koristi za akviziciju podataka (preko USBa), kao i
AKVIZICIJA PODATAKA SA UREĐAJEM NI USB-6008 NI USB-6008 je jednostavni višenamjenski uređaj koji se koristi za akviziciju podataka (preko USBa), kao i za generisanje željenih izlaznih signala (slika 1).
ВишеAR2019
ARHITEKTURA RAČUNARA (pregled principa i evolucije) Miroslav Hajduković Žarko Živanov NOVI SAD, 2019. PREDGOVOR Cilj ove knjige je da stvori funkcionalno zaokruženu sliku o radu računara. Zbog toga je
ВишеNIGOS menadžer
HelpAndManual_unregistered_evaluation_copy NIGOS menadžer 2012 NIGOS Elektronik Sadržaj 1 Index 2 2 Opis 2 3 Zahtevi 2 4 Instalacija 2 5 Osnovni prikaz 3 6 Otključavanje 5 7 Promena šifre 6 8 Opcije programa
ВишеP1.3 Projektovanje makroasemblera
ПРОЈЕКТОВАЊЕ МАКРОАСЕМБЛЕРА Макроасемблер Потребна проширења асемблера 1 МАКРОАСЕМБЛЕР Макроасемблер преводи полазни програм написан на макроасемблерском језику у извршиви машински програм. Приликом израде
ВишеVALIDNOST CERTIFIKATA ZA PRISTUP INTERNET APLIKACIJAMA POREZNE UPRAVE FEDERACIJE BOSNE I HERCEGOVINE (npis I ejs)
VALIDNOST CERTIFIKATA ZA PRISTUP INTERNET APLIKACIJAMA POREZNE UPRAVE FEDERACIJE BOSNE I HERCEGOVINE (NPIS I EJS) POREZNA UPRAVA FEDERACIJE BOSNE I HERCEGOVINE Sektor za informacione tehnologije Sarajevo,
ВишеGrananje u programu predavač: Nadežda Jakšić
Grananje u programu predavač: Nadežda Jakšić u okviru linijske strukture izvršavaju se sve naredbe u okviru razgranate strukture uvek se ispituje neki uslov; u zavisnosti od toga da li je uslov ispunjen
ВишеP1.0 Uvod
Системска програмска подршка у реалном времену 1 Миодраг Ђукић miodrag.djukic@rt-rk.uns.ac.rs www.rt-rk.uns.ac.rs 1 Системска програмска подршка у реалном времену 1 програмска подршка = софтвер Системски
ВишеPojačavači
Programiranje u fizici Prirodno-matematički fakultet u Nišu Departman za fiziku dr Dejan S. Aleksić Programiranje u fizici dr Dejan S. Aleksić, vanredni profesor Kabinet 307 (treći sprat), lab. za elektroniku
ВишеČesto postavljana pitanja u programu OBRT 1. Kako napraviti uplatu u knjizi tražbina i obveza? 2. Kako odabrati mapu/disk za pohranu podataka? 3. Kako
Često postavljana pitanja u programu OBRT 1. Kako napraviti uplatu u knjizi tražbina i obveza? 2. Kako odabrati mapu/disk za pohranu podataka? 3. Kako instalirati (novi) finin certifikat? 4. Kako ispisati
ВишеMicrosoft Word - MySQL_3.doc
7. Data Manipulation Language (DML) Jezik za rad sa podacima (Data Manipulation Language (DML)) služi za umetanje, brisanje i ažuriranje podataka u bazi. 7.1. Umetanje novih redova u tabelu INSERT sintaksa
ВишеCARNET Helpdesk - Podrška obrazovnom sustavu e-dnevnik upute za nadzor razrednih knjiga tel: fax: mail:
Sadržaj... 1 1. Predgovor... 2 2. Prijava u sustav... 2 3. Postavke... 3 4. Kreiranje zahtjeva za nadzorom razrednih knjiga... 4 5. Pregled razredne knjige... 6 5.1 Dnevnik rada... 7 5.2 Imenik... 11 5.3
ВишеPROGRAMIRANJE Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Algoritam je postupak raščlanjivanja problema na jednostavnije
PROGRAMIRANJE Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Algoritam je postupak raščlanjivanja problema na jednostavnije korake. Uz dobro razrađen algoritam neku radnju ćemo
ВишеDijagrami sekvenci
Dijagrami sekvenci Izrada dijagrama sekvenci Dijagram sekvenci koristi se za specifikaciju vremenskih zahteva u opisu složenih scenarija opis toka poruka između objekata kojima se realizuje odgovarajuća
ВишеБОСНА И ХЕРЦЕГОВИНА РЕПУБЛИКА СРПСКА СЛОБОМИР П УНИВЕРЗИТЕТ СЛОБОМИР, БИЈЕЉИНА BOSNIA AND HERZEGOVINA REPUBLIC OF SRPSKA SLOBOMIR P UNIVERSITY SLOBOMI
БОСНА И ХЕРЦЕГОВИНА РЕПУБЛИКА СРПСКА СЛОБОМИР П УНИВЕРЗИТЕТ СЛОБОМИР, БИЈЕЉИНА BOSNIA AND HERZEGOVINA REPUBLIC OF SRPSKA SLOBOMIR P UNIVERSITY SLOBOMIR, BIJELJINA Slobomir P Univerzitet, PF 70 Slobomir,
ВишеLogicko projektovanje racunarskih sistema I
POKAZNA VEŽBA 10 Strukture za računanje Potrebno predznanje Urađena pokazna vežba 8 Poznavanje aritmetičkih digitalnih sistema i aritmetičko-logičkih jedinica Osnovno znanje upravljačkih jedinica digitalnih
ВишеUpute za korištenje EasyChair konferencijskog sustava HRO CIGRE 2019 Prijava referata Ako ste već koristili EasyChair na 13. Savjetovanju ili prije ta
Upute za korištenje EasyChair konferencijskog sustava HRO CIGRE 2019 Prijava referata Ako ste već koristili EasyChair na 13. Savjetovanju ili prije tada ne trebate otvoriti račun. Za one koji se prvi put
ВишеKORISNIČKE UPUTE APLIKACIJA ZA POTPIS DATOTEKA
KORISNIČKE UPUTE APLIKACIJA ZA POTPIS DATOTEKA SADRŽAJ 1. UVOD... 3 1.1. Cilj i svrha... 3 1.2. Područje primjene... 3 2. POJMOVI I SKRAĆENICE... 4 3. PREDUVJETI KORIŠTENJA... 5 4. PREGLED APLIKACIJE...
ВишеMicrosoft PowerPoint - Bitovi [Compatibility Mode]
Оператори над битовима (Јаничић, Марић: Програмирање 2, тачка 5.6) Оператори за рад са појединачним битовима Само на целобројне аргументе: ~ битовска негација & битовска конјункција (и) битовска (инклузивна)
ВишеMicrosoft PowerPoint - Timer0 16F887.ppt [Compatibility Mode]
TAJMERI I BROJAČI: PIC16F887 PIC 16F887 mikrokontroler ima tri tajmera/brojača: 8 - bitni tajmer/brojač (registar TMR0) 16 - bitni tajmer/brojač (registar TMR1H TMR1L) 8 - bitni tajmer/brojač (registar
ВишеAster
ASTER V7 Multi-user Extension za Microsoft Windows 7 Vodič za brzi početak Instalirajte ASTER V7 softver koristeći instalaciju dobavljača. Od ostalih instalacionih opcija preporučujemo da svako posebno
ВишеUPUTSTVO ZA KRETANJE KROZ EON KORISNIČKI INTERFEJS 1
1 Dobrodošli u EON svijet! SADRŽAJ: 1. EON korisnički interfejs...3 1.1 Početna...3 1.2 Kanali...3 1.2.1 Upravo na TV-u...3 1.2.2 TV kanali...4 1.2.3 Radio kanali...4 1.3 Video klub...5 1.4 Moji sadržaji...5
ВишеРЕ-АКТИВ ДОО Франклин Рузвелт 43А, 1000 Скопље, Македонија Тел.: Факс: МБ: ПИБ: МК
РЕ-АКТИВ ДОО Франклин Рузвелт 43А, 1000 Скопље, Македонија Тел.: +389 2 3109191 Факс: +389 2 3220152 МБ: 6159559 ПИБ: МК4030006611118 www.реактив.цом.мк РЕАКТИВ КОНСАЛТИНГ ДОО Деспота Стефана 42/3/5, 11000
ВишеUputstvo za korištenje korisničkog web portala AC-U UPUTSTVO ZA KORIŠTENJE KORISNIČKOG WEB PORTALA Izdanje: 1, maj / svibanj 2019 Strana 2 od 1
UPUTSTVO ZA KORIŠTENJE KORISNIČKOG WEB PORTALA Izdanje: 1, maj / svibanj 2019 Strana 2 od 18 SADRŽAJ 1. PREDMET... Error! Bookmark not defined. 2. PODRUČJE PRIMJENE... 4 3. DEFINICIJE I REFERENTNI DOKUMENTI...
ВишеFTDI DRAJVER uputstvo za instalaciju NEMANJINA 57 A, POŽAREVAC TEL: FAX:
FTDI DRAJVER uputstvo za instalaciju NEMANJINA 57 A, 12000 POŽAREVAC TEL: 012 541 022 FAX: 012 541 026 WWW.AIS.D-LOGIC.RS FTDI DRAJVER uputstvo za instalaciju www.ais.d-logic.rs AIS FREE SOFTVER uputstvo
ВишеSmjernice za korištenje sustava online prijava Ukoliko imate pristupno korisničko ime i lozinku ili ste navedeno dobili nakon zahtjeva za otvaranje no
Smjernice za korištenje sustava online prijava Ukoliko imate pristupno korisničko ime i lozinku ili ste navedeno dobili nakon zahtjeva za otvaranje novog korisničkog računa (poslati zahtjev na javnipoziv.opp@havc.hr
ВишеVezbe_AOR1_2014_V1.0
АРХИТЕКТУРА И ОРГАНИЗАЦИЈА РАЧУНАРА 1 Верзија 2014 1.0 САДРЖАЈ Садржај... 3 Кеш меморија (Cache Memory)... 5 Задатак 1.... 5 Задатак 2.... 6 Задатак 3.... 9 Задатак 4.... 12 Задатак 5.... 15 Задатак 6....
ВишеMicrosoft Word - Tehnicka uputstva lica doc
Registracija novog korisnika internet sajta NSZ tražilac zaposlenja Novi korisnik prilikom prve registracije na sajt NSZ bira opciju Prijavi se za posao. Unosom korisničkog imena i kreiranjem lozinke,
Вишеkriteriji ocjenjivanja - informatika 8
8. razred Nastavne cjeline: 1. Osnove informatike 2. Pohranjivanje multimedijalnih sadržaja, obrada zvuka 3. Baze podataka - MS Access 4. Izrada prezentacije 5. Timska izrada web stranice 6. Kritički odnos
ВишеOVO JE ZVANIČAN RCUB TEMPLATE: Normal
Korisničko uputstvo za instalaciju i podešavanje securew2 programa za pristup eduroam servisu Termin supplicant se koristi u IEEE 802.1X standardu. U širem značenju, ovaj termin predstavlja entitet (korisnik
ВишеFunkcije predavač: Nadežda Jakšić
Funkcije predavač: Nadežda Jakšić do sada su korišćene "gotove" funkcije iz standardnih biblioteka (cin, cout...) one su pozivane iz main funkcije koja je glavna funkcija u programu jer izvršavanje programa
ВишеRAČUNALO
RAČUNALO HARDVER + SOFTVER RAČUNALO HARDVER strojna oprema računala tj. tvrdi, materijalni, opipljivi dijelovi računala kućište i sve komponente u njemu, vanjske jedinice SOFTVER neopipljivi dijelovi računala
ВишеУниверзитет у Нишу Електронски факултет Катедра за теоријску електротехнику Кратко упутство за коришћење програмског пакета FEMM 4.2 за израду вежби и
Универзитет у Нишу Електронски факултет Катедра за теоријску електротехнику Кратко упутство за коришћење програмског пакета FEMM 4.2 за израду вежби из Лабораторијског практикума - Основи електротехнике
ВишеKorisničko uputstvo mobilne aplikacije Digitalni Kiosk 1
Korisničko uputstvo mobilne aplikacije Digitalni Kiosk 1 Sadržaj Opis mobilne aplikacije Digitalni Kiosk... 3 Pokretanje aplikacije... 3 Registracija/Kreiranje novog korisničkog naloga... 3 Dodavanje platne
ВишеOpticum HD - Uputstvo za skeniranje kanala.docx
SKENIRANJE KANALA Ukoliko već imate memorisane kanale, potrebno je da prije početka skeniranja izbrišete sve kanale, a to ćete uraditi na sljedeći način: Pritisnite dugme MENU na daljinskom upravljaču,
ВишеUPUTSTVO ZA KORIŠĆENJE OPCIJE POGLEDAJ PROPUŠTENO 1
1 Dobrodošli u EON svijet! SADRŽAJ: 1. Kanali...3 1.1 Upravo na TV-u...3 1.2 TV kanali...3 2. Pogledaj propušteno/7 dana unazad/premotavanje...4 3. Informacije o emisijama...8 4. Savjeti za otklanjanje
ВишеInženjering informacionih sistema
Fakultet tehničkih nauka, Novi Sad Inženjering informacionih sistema Dr Ivan Luković Dr Slavica Kordić Nikola Obrenović Milanka Bjelica Dr Jelena Borocki Dr Milan Delić UML UML (Unified Modeling Language)
ВишеClassroom Expectations
АТ-8: Терминирање производно-технолошких ентитета Проф. др Зоран Миљковић Садржај Пројектовање флексибилних ; Математички модел за оптимизацију флексибилних ; Генетички алгоритми у оптимизацији флексибилних
ВишеMicrosoft PowerPoint - LB7-2_WCCF_2010.ppt
WinCC flexible alat za konfiguriranje HMI na operaterskom panelu Praktikum automatizacije LB7-2 Pregled predavanja WinCC flexible izgled, organizacija, princip rada Primjer Praktikum automatizacije --
ВишеMicrosoft PowerPoint - 13 PIK (Mentor Graphic ASIC).ppt
Projektovanje integrisanih kola Delimično projektovanje po narudžbini Sadržaj: Sadržaj: I. I. Uvod Uvod - sistem projektovanja II. II. CMOS Analiza Proces kola primenom računara III. III. Potpuno Optimizacija
ВишеMicrosoft Word - Odluka o osnovnim elementima naloga za placanje _3_.doc
Na osnovu člana 44 stav 2 tačka 3 Zakona o Centralnoj banci Crne Gore ("Službeni list Crne Gore", broj 40/10, 46/10 i 06/13) i člana 66 Zakona o platnom prometu ("Službeni list Crne Gore", broj 62/13),
ВишеMicrosoft Word - uputstvo-estudent-v2.docx
Упутство за пријаву на студентске сервисе и пријаву испита Адреса на којој се налазе студенски сервиси је https://estudent.ef.uns.ac.rs Пријава на систем Страница за пријаву на систем има два поља, једно
ВишеLAB 4 - Binarni komparator
UNIVERZITET CRNE GORE ELEKTROTEHNIČKI FAKULTET STUDIJSKI PROGRAM: ELEKTRONIKA,TELEKOMUNIKACIJE I RAČUNARI PREDMET: PROJEKTOVANJE DIGITALNIH SISTEMA FOND ČASOVA: 3 + 0 + 1 LABORATORIJSKA VJEŽBA NAZIV: REALIZACIJA
ВишеSEMINAR
1. Cilj vežbe Lekcija 9 Akvizicija i osnovna obrada slike u LabVIEW Cilj vežbe je da studente upozna sa: Akvizicijom slike. Osnovnim koracima pri obradi slike Zadatak 9.1. Povezati USB kameru i kreirati
ВишеUputstvo za podešavanje za pristup eduroam servisu za Mac OS X Snow Leopard Copyright AMRES
Uputstvo za podešavanje za pristup eduroam servisu za Mac OS X Snow Leopard Copyright AMRES Ovo uputstvo se odnosi na sve Mac računare sa Mac OS X Snow Leopard operativnim sistemom. Podešavanja na različitim
ВишеProjektna dokumentacija Boostowski - mobile
Projektna dokumentacija Boostowski - mobile OPIS BUDUĆEG PROCESA - MOBILNA APLIKACIJA 00 Dobrodošli Ekran dobrodošlice je prvi ekran koji se prikazuje nakon ulaska u mobilnu aplikaciju. Na njemu je ispisana
Више2_Arhitektura racunara
Архитектура рачунара Садржај Типови података Формати инструкција Скуп инструкција Програмски доступни регистри Начини адресирања 2 Типови података Најчешће коришћени типови података су: целобројне величине
ВишеKREIRANJE TORRENTA Ako zelite da kreirate torrent fajl od nekog fajla ili foldera u vasem racunaru a kasnije podeliti sa drugim korisnicima i uploadov
KREIRANJE TORRENTA Ako zelite da kreirate torrent fajl od nekog fajla ili foldera u vasem racunaru a kasnije podeliti sa drugim korisnicima i uploadovati ga na neki od servera predvidjenih u te svthe (Trackera)
ВишеPostoji jedan mali meni dragi alat koji vam omogucuje zastitu od kopiranja,pregledavanja,umnozavanja,pravljenj a duplikata...svih vasih medijskih dato
Postoji jedan mali meni dragi alat koji vam omogucuje zastitu od kopiranja,pregledavanja,umnozavanja,pravljenj a duplikata...svih vasih medijskih datoteka, ukljucujuci PDF, MS Office datoteke, slike i
ВишеMicrosoft Word - KORISNIČKA UPUTA za pripremu računala za rad s Fina potpisnim modulom_RSV_ doc
Uputa za pripremu računala za rad s Fininim potpisnim modulom Zagreb, lipanj 2019. Sadržaj: 1. UVOD... 3 2. POJMOVI I SKRAĆENICE... 3 3. TEHNIČKI PREDUVJETI KORIŠTENJA... 3 4. PODEŠAVANJE INTERNET PREGLEDNIKA
ВишеUputstvo za upotrebu studentskih servisa - gef
Упутство за пријаву на студентске сервисе и пријаву испита Адреса на којој се налазе студенски сервиси је https://student.gef.bg.ac.rs У питању је интернет страница заштићена SSL 3.0 протоколом који изискује
ВишеProjektovanje digitalnih sistema
Projektovanje digitalnih sistema Metodologije dizajna Metodologije dizajna Odozgo ka dolje (top-down) Definiše se blok najvišeg nivoa i identifikuju se manji blokovi neophodni za njegovu implementaciju
ВишеPodešavanje za eduroam – Windows Vista operativni sistem
Podešavanje za eduroam Windows Vista operativni sistem Kako bi korisnik na siguran način pristupio mrežnim resursima i uz pomoć neophodnih podataka (npr. korisničkog imena i lozinke) izvršio proces autentifikacije
ВишеPowerPoint Presentation
II Karakteristike C jezika Programski jezik C je viši programski jezik opšte namene. Tesno je povezan sa UNIX OS uz koji je razvijan. Razvio ga je Dennis Ritchie 1970 u Bell Telephone Laboratories, Inc.
ВишеPowerPoint Presentation
УВОД Дa би рaчунaри нa мрежи могли међусобно да кoмуницирaју и рaзмeњују пoдaткe, пoтрeбнo je: дa сe увeду ПРOТOКOЛИ (утврђeна прaвилa и процедуре за комуникацију) да постоје АДРEСE кoje су jeдинствeнe
ВишеMicrosoft Word - Uputstvo za upotrebu studentskih servisa.doc
Упутство за пријаву на студентске сервисе и пријаву испита Адреса на којој се налазе студенски сервиси је https://student.vps.ns.ac.rs/ У питању је интернет страница заштићена SSL 3.0 протоколом који изискује
ВишеMicrosoft Word - CAD sistemi
U opštem slučaju, se mogu podeliti na 2D i 3D. 2D Prvo pojavljivanje 2D CAD sistema se dogodilo pre više od 30 godina. Do tada su inženjeri koristili table za crtanje (kulman), a zajednički jezik komuniciranja
Више