OPIS RAČUNARSKOG SISTEMA Računarski sistem se sastoji od procesora, operativne memorije, tajmera i terminala. Sve komponente računarskog sistema su me

Слични документи
Algoritmi i arhitekture DSP I

Zbirka resenih zadataka iz arhitekture racunara

Precesor Intel 8086

P1.2 Projektovanje asemblera

Edukacioni racunarski sistem

Microsoft Word - Projekat iz MIPS-a - simCPU.doc

2_Arhitektura racunara

Logicko projektovanje racunarskih sistema I

P11.3 Analiza zivotnog veka, Graf smetnji

Vezbe_AOR1_2014_V1.0

Microsoft PowerPoint - Timer0 16F887.ppt [Compatibility Mode]

PROMENLJIVE, TIPOVI PROMENLJIVIH

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

ИСПИТНА ПИТАЊА (ОКВИРНИ СПИСАК) УОАР2 2018/19 ПРВИ ДЕО ГРАДИВА 1. Написати истинитоносне таблице основних логичких везника (НЕ, И, ИЛИ). 2. Написати и

Programiranje 1 Milena Vujošević - Janičić 2008/2009

Microsoft PowerPoint - Programski_Jezik_C_Organizacija_Izvornog_Programa_I_Greske [Compatibility Mode]

Funkcije predavač: Nadežda Jakšić

RAČUNARSKI SISTEM Ne postoji jedinstvena definicija pojma računarski sistem. Računarski sistem predstavlja skup mašina i pridruženih metoda (realizova

Razvoj programa, Code::Blocks, struktura programa, printf, scanf, konverzioni karakteri predavač: Nadežda Jakšić

1

Орт колоквијум

I grupa 1. Napisati program koji izračunava i ispisuje zbir 4 najveća od pet brojeva unetih sa standardnog ulaza. ulaz izlaz Analiza: 1.

23. siječnja od 13:00 do 14:00 Školsko natjecanje / Osnove informatike Srednje škole RJEŠENJA ZADATAKA S OBJAŠNJENJIMA Sponzori Medijski pokrovi

Prikaz znakova u računalu

Uvod u organizaciju i arhitekturu računara 2 1

Generated by Foxit PDF Creator Foxit Software For evaluation only. Operativni sistem U računarstvu, operativni sistem (OS

JEZGRO OPERATIVNOG SISTEMA I UPRAVLJANJE PROCESIMA 1. Šta je jezgro, a šta proces? Jezgro (nukleus ili kernel) je osnovni deo svakog operativnog siste

P1.3 Projektovanje makroasemblera

P9.1 Dodela resursa, Bojenje grafa

Microsoft PowerPoint - Bitovi [Compatibility Mode]

Увод у организацију и архитектуру рачунара 1

P11.2 Izbor instrukcija, IBURG

` 1.Врсте меморије На основу начина чувања података делимо их на меморије које привремено чувају податке (док је рачунар укључен) и меморије које трај

Logičke izjave i logičke funkcije

Grananje u programu predavač: Nadežda Jakšić

Microsoft Word - 11 Pokazivaci

Tutoring System for Distance Learning of Java Programming Language

RACUNARSKA ELEKTRONIKA – VEŽBE 3

Nastavna cjelina: 1. Jezik računala Kataloška tema: 1.1. Bit 1.2. Brojevi zapisani četvorkom bitova Nastavna jedinica: 1.1. Bit   1.2. Brojevi zapisan

_sheets.dvi

COMARC/A Format

Logicko projektovanje racunarskih sistema I

Dijagrami sekvenci

Microsoft PowerPoint - 03-Slozenost [Compatibility Mode]

AR2019

Microsoft PowerPoint - ARS_Ch_6 - IO sustavi.ppt

LAB PRAKTIKUM OR1 _ETR_

POSLOVNI INFORMACIONI SISTEMI I RA^UNARSKE

Tutoring System for Distance Learning of Java Programming Language

Državno natjecanje / Osnove informatike Srednje škole Zadaci U sljedećim pitanjima na odgovore odgovaraš upisivanjem slova koji se nalazi ispred

Microsoft PowerPoint - 5. Predavanje-w2.pptx

Р220 - Увод у архитектуру рачунара Саша Малков [Р220] Увод у архитектуру рачунара 10 Саша Малков Универзитет у Београду Математички факултет 2013/2014

P11.1 Izbor instrukcija, najveci zalogaj

PowerPoint Presentation

KorisnickoA5TercF1

kriteriji ocjenjivanja - informatika 8

Uvod u računarstvo 2+2

P1.0 Uvod

ELEKTROTEHNIČKI FAKULTET, UNIVERZITET U BEOGRADU KATEDRA ZA ELEKTRONIKU UVOD U ELEKTRONIKU - 13E041UE LABORATORIJSKA VEŽBA Primena mikrokontrolera

Vektorski procesori Najveći izvor paralelizma su DoAll petlje kako je već definisano u poglavlju o paralelizaciji petlji. Paralelizam tih petlji, ako

Programiranje za UNIX Okruženje unix procesa

RAČUNALO

Microsoft Word - 02 Elementi programskog jezika Pascal

PowerPoint Presentation

Microsoft Word - SIORT1_2019_K1_resenje.docx

INF INFORMATIKA INF.27.HR.R.K1.20 INF D-S INF D-S027.indd :50:41

Испит из Основа рачунарске технике OO /2018 ( ) Р е ш е њ е Задатак 5 Асинхрони RS флип флопреализован помоћу НИЛИ кола дат је на след

13E114PAR, 13S113PAR DOMAĆI ZADATAK 2018/2019. Cilj domaćeg zadatka je formiranje petlje softverske protočnosti za minimalni broj ciklusa.

Programski jezik C

PROGRAMIRANJE Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Algoritam je postupak raščlanjivanja problema na jednostavnije

УНИВЕРЗИТЕТ У НИШУ ПРИРОДНО-МАТЕМАТИЧКИ ФАКУЛТЕТ Департман за рачунарске науке Писмени део испита из предмета Увод у рачунарство 1. [7 пое

Microsoft PowerPoint Tema 1. Osnovni informaticki pojmovi (4 casa)

Konverzije, operatori, matematičke funkcije predavač: Nadežda Jakšić

УНИВЕРЗИТЕТ У БЕОГРАДУ МАШИНСКИ ФАКУЛТЕТ Предмет: КОМПЈУТЕРСКА СИМУЛАЦИЈА И ВЕШТАЧКА ИНТЕЛИГЕНЦИЈА Задатак број: Лист/листова: 1/1 Задатак 5.1 Pостоје

Microsoft Word - pravila RTGS-precišcen tekst2007 (2).doc

Računarski softver Da bi računarski sistem mogao da radi, pored hardvera mora biti opremljen i odgovarajućim programima koji će njime upravljati.ova k

PHP kod

1198. Agencija za elektronske komunikacije i poštansku djelatnost, na osnovu člana 11 stav 4 i člana 98 Zakona o elektronskim komunikacijama (''Sl. li

P9.2 Optimizujuci kompajler, prednji deo

Microsoft PowerPoint - PRI2014 KORIGOVANO [Compatibility Mode]

Орт колоквијум

Drugi kolokvij iz predmeta Operacijski sustavi 2. srpnja Napomene: PISATI ČITKO! Zadatke 7-10 rješavati na ovom papiru ili uz njih napisati "na

Microsoft PowerPoint - MR - Vjezbe - 03.ppt [Compatibility Mode]

Microsoft PowerPoint - 12a PEK EMT VHDL 1 od 4 - Uvod (2011).ppt [Compatibility Mode]

Inženjering informacionih sistema

Microsoft Word - Plan raspodjele radio-frekvencija iz opsega MHz_predlog.docx

Uvod u računarstvo 2+2

MB600EN1

Техничко решење: Софтвер за симулацију стохастичког ортогоналног мерила сигнала, његовог интеграла и диференцијала Руководилац пројекта: Владимир Вуји

NACRT

Microsoft PowerPoint - JavaP9_2019

I колоквијум из Основа рачунарске технике I СИ- 2017/2018 ( ) Р е ш е њ е Задатак 1 Тачка А Потребно је прво пронаћи вредности функција f(x

UNIVERZITET UKSHIN HOTI PRIZREN FAKULTET RAČUNARSKIH NAUKA PROGRAM: TIT - BOS NASTAVNI PLAN-PROGRAM SYLLABUS Nivo studija Bachelor Program TIT-Bos Aka

Uvod u PHP

PowerPoint Presentation

Javna rasprava o Nacrtu odluke o transakcijskim računima

UVOD Svaki složeni postupak koji se može izraziti pomoću algoritma sa konačnim brojem elementarnih operacija, može se predati računaru na izvršenje. J

Univerzitet u Novom Sadu Tehnički fakultet Mihajlo Pupin Zrenjanin Seminarski rad Predmet: Konkuretno programiranje doc. dr Dejan Lacmanovic Zorica Br

Classroom Expectations

Транскрипт:

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 i terminal, kao periferije, su povezani sa procesorom i preko linija za slanje zahteva za prekid. Slika 1. predstavlja uprošćen šematski prikaz posmatranog računarskog sistema. MEM TIM CPU TERM Opis procesora Slika 1. Šematski prikaz računarskog sistema U nastavku je opisan deo 16bitnog dvoadresnog procesora sa VonNeuman arhitekturom. Adresibilna jedinica je jedan bajt, a raspored bajtova u reči je littleendian. Veličina memorijskog adresnog prostora je 2 16 B. Počev od adrese 0xFF00 memorijskog adresnog prostora nalazi se prostor veličine 256 bajtova rezervisan za memorijski mapirane registre (registri kojima se pristupa instrukcijama za pristup memorijskom adresnom prostoru). Počev od adrese 0x0000 memorijskog adresnog prostora nalazi se IVT (interrupt vector table) sa osam ulaza. Svaki ulaz zauzima dva bajta i sadrži adresu odgovarajuće prekidne rutine. Ulazi u IVT odgovaraju sledećim prekidnim rutinama: ulaz 0 sadrži adresu prekidne rutine koja se izvršava prilikom pokretanja odnosno resetovanja čitavog procesora (ne izvodi se kompletna sekvenca obrade prekida već se samo vrši skok na adresu koja se nalazi u okviru datog ulaza), ulaz 1 sadrži adresu prekidne rutine koja se izvršava ukoliko se pokuša izvršavanje nekorektne instrukcije (nepostojeći operacioni kod, neispravan način adresiranja itd.), ulaz 2 sadrži adresu prekidne rutine koja se izvršava kada stigne zahtev za prekid od tajmera (opis principa rada tajmera i način njegove konfiguracije dat je u zasebnom poglavlju), ulaz 3 sadrži adresu prekidne rutine koja se izvršava kada stigne zahtev za prekid od terminala (opis principa rada terminala dat je u zasebnom poglavlju) i ostali ulazi su slobodni za korišćenje od strane programera. Procesor poseduje osam opštenamenskih 16bitnih registara označenih sa r<num> gde <num> može imati vrednosti od nula do sedam. Moguće je zasebno koristiti viših ili nižih osam bita svakog od opštenamenskih registara kao 8bitni registar označen sa r<num>h ili r<num>l, respektivno. Registar r7

se koristi kao pc registar (pokazuje na instrukciju koja se u memoriji nalazi neposredno iza trenutno izvršavane instrukcije). Registar r6 se koristi kao sp registar (pokazuje na zauzetu lokaciju na vrhu steka, a stek raste ka nižim adresama). Pored opštenamenskih registara postoji psw registar (statusna reč procesora). 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 I Tl Tr N C O Z Značenje flegova u psw registru: Z (Zero) rezultat prethodne operacije je nula, O (Overflow) prekoračenje, C (Carry) prenos, N (Negative) rezultat je negativan, Tr (Timer) maskiranje prekida od tajmera (0 omogućen, 1 maskiran), Tl (Terminal) maskiranje prekida od terminala (0 omogućen, 1 maskiran) i I (Interrupt) globalno maskiranje spoljašnjih prekida (0 omogućeni, 1 maskirani). Instrukcije mogu biti veličine od jedan do sedam bajtova. Instrukcija u najopštijem slučaju ima sledeći format: I II III IV V VI VII InstrDescr Op1Descr Im/Di/Ad Im/Di/Ad Op2Descr Im/Di/Ad Im/Di/Ad Prvi bajt instrukcije sadrži operacioni kod i dodatne informacije o instrukciji. Naredni bajtovi instrukcije koriste se za kodiranje operanada. Pojedinačni operand može zahtevati jedan, dva ili tri bajta za kodiranje u zavisnosti od načina adresiranja. Detaljan opis InstrDescr i Op<num>Descr bajtova instrukcije dat je u nastavku. 7 6 5 4 3 2 1 0 OC 4 OC 3 OC 2 OC 1 OC 0 S Un Un Značenje bitova InstrDescr bajta instrukcije: OC 4OC 3OC 2OC 1OC 0 operacioni kod instrukcije, S (Size) veličina operanada instrukcije (0 jedan bajt; 1 dva bajta) i Un (Unused) neiskorišćeni bitovi koji imaju fiksnu vrednost nula. 7 6 5 4 3 2 1 0 AM 2 AM 1 AM 0 R 3 R 2 R 1 R 0 L/H Značenje bitova Op<num>Descr bajta instrukcije: AM 2AM 1AM 0 kodiran način adresiranja pri čemu adresiranje može biti: o 0x0 neposredno; vrednost operanda je kodirana u okviru instrukcije pomoću jednog ili dva Im/Di/Ad bajta u zavisnosti od veličine operanda; neposredno adresiranje nije validan način adresiranja za destinacioni operand,

o 0x1 registarsko direktno; vrednost operanda nalazi se u registru čiji je broj kodiran u okviru instrukcije (nema Im/Di/Ad bajtova), o 0x2 registarsko indirektno bez pomeraja; vrednost operanda nalazi se u memoriji na adresi ukazanoj vrednošću registra čiji je broj kodiran u okviru instrukcije (nema Im/Di/Ad bajtova), o 0x3 registarsko indirektno sa 8bitnim označenim pomerajem; vrednost operanda nalazi se u memoriji na adresi ukazanoj zbirom vrednosti registra, čiji je broj kodiran u okviru instrukcije, i vrednosti koja se nalazi u jednom Im/Di/Ad bajtu, o 0x4 registarsko indirektno sa 16bitnim označenim pomerajem; vrednost operanda nalazi se u memoriji na adresi ukazanoj zbirom vrednosti registra, čiji je broj kodiran u okviru instrukcije, i vrednosti koja se nalazi u dva Im/Di/Ad bajta i o 0x5 memorijsko; vrednost operanda nalazi se u memoriji na adresi ukazanoj vrednošću koja se nalazi u dva Im/Di/Ad bajta, R 2R 1R 0 kodiran broj korišćenog registra (psw registar se kodira vrednošću 0xF) i L/H (Low/High) naznaka da li se koristi nižih ili viših osam bita registra (0 nižih; 1 viših) u slučaju registarskog direktnog adresiranja za operand veličine jednog bajta. Mnemonik OC Efekat Flegovi koji se menjaju halt 1 Zaustavlja izvršavanje instrukcija xchg dst, src 2 int dst 3 temp<=dst; dst<=src; src<=temp; push psw; pc<=mem16[(dst mod 8)*2]; mov dst, src 4 dst<=src; Z N add dst, src 5 dst<=dst+src; Z O C N sub dst, src 6 dst<=dstsrc; Z O C N mul dst, src 7 dst<=dst*src; Z N div dst, src 8 dst<=dst/src; Z N cmp dst, src 9 temp<=dstsrc; Z O C N not dst 10 dst<=~dst; Z N and dst, src 11 dst<=dst&src; Z N or dst, src 12 dst<=dst src; Z N xor dst, src 13 dst<=dst^src; Z N test dst, src 14 temp<=dst&src; Z N

shl dst, src 15 dst<=dst<<src; Z C N shr dst, src 16 dst<=dst>>src; Z C N push src 17 pop dst 18 sp<=sp2; mem16[sp]<=src; dst<=mem16[sp]; sp<=sp+2; jmp dst 19 jeq dst 20 jne dst 21 jgt dst 22 call dst 23 if (equal_condition_is_met) if (not_equal_condition_is_met) if (signed_greater_condition_is_met) push pc; ret 24 pop pc; iret 25 pop psw; pop pc; psw Dodatne napomene: sve aritmetičke operacije se izvode tako da odgovaraju označenim celim brojevima, iza mnemonika asemblerske naredbe, bez belih znakova, može se navesti sufiks b ili w kako bi se naznačila veličina operanada date instrukcije, instrukcije cmp i test nigde ne čuvaju direktni rezultat odgovarajuće operacije, već samo u skladu sa rezultatom postavljaju nove vrednosti flegova u psw registru i kombinacije instrukcija i operanada, za koje ne postoji razumno tumačenje, smatrati greškom. Sintaksa operanada u okviru asemblerskih naredbi: <val> neposredno adresiranje vrednosti <val> &<symbol_name> neposredno adresiranje vrednosti simbola <symbol_name> r<num> registarsko direktno adresiranje r<num>[<val>] registarsko indirektno sa označenim pomerajem r<num>[<symbol_name>] registarsko indirektno sa označenim pomerajem $<symbol_name> pc relativno adresiranje simbola <symbol_name> <symbol_name> apsolutno adresiranje simbola <symbol_name> *<val> apsolutno adresiranje podatka u memoriji na adresi ukazanoj vrednošću <val>

Primer kodirane instrukcije movw sp[0], 0x1234 jeste: Opis terminala 0x24 0x4C 0x00 0x34 0x12 Terminal predstavlja ulazno/izlaznu periferiju koja se sastoji od displeja i tastature. Terminal poseduje dva memorijski mapirana registra. Na adresi 0xFF00 memorijskog adresnog prostora nalazi se data_out registar izlaznih podataka. Upisom vrednosti u data_out registar na tekućoj poziciji displeja ispisuje se znak koji prema ASCII tabeli odgovara upisanoj vrednosti. Na adresi 0xFF02 memorijskog adresnog prostora nalazi se data_in registar ulaznih podataka. Kada se pritisne neki taster (1) upisuje se ASCII kod pritisnutog tastera u data_in registar i (2) terminal, kao periferija posmatranog procesora, generiše zahtev za prekid (u okviru prekidne rutine, koja obrađuje ovaj zahtev za prekid, čitanjem vrednosti data_in registra može se saznati koji taster je pritisnut). Opis tajmera Tajmer kao periferija periodično generiše zahtev za prekid. Perioda generisanja zahteva za prekid definisana je sadržajem timer_cfg konfiguracionog registra tajmera. Registar timer_cfg je memorijski mapiran registar i nalazi se na adresi 0xFF10 memorijskog adresnog prostora. Njegova inicijalna vrednost nakon pokretanja odnosno resetovanja računarskog sistema jeste 0x0000. 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 T 2 T 1 T 0 Perioda generisanja zahteva za prekid u zavisnosti od T 2T 1T 0 vrednosti je sledeća: 0x0 > 500ms, 0x1 > 1000ms, 0x2 > 1500ms, 0x3 > 2000ms, 0x4 > 5000ms, 0x5 > 10s, 0x6 > 30s i 0x7 > 60s.