<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="sr">
	<id>https://siwiki.rs/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mladen+%C5%BDurki%C4%87</id>
	<title>SI Wiki - Кориснички доприноси [sr]</title>
	<link rel="self" type="application/atom+xml" href="https://siwiki.rs/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mladen+%C5%BDurki%C4%87"/>
	<link rel="alternate" type="text/html" href="https://siwiki.rs/wiki/%D0%9F%D0%BE%D1%81%D0%B5%D0%B1%D0%BD%D0%BE:%D0%94%D0%BE%D0%BF%D1%80%D0%B8%D0%BD%D0%BE%D1%81%D0%B8/Mladen_%C5%BDurki%C4%87"/>
	<updated>2026-06-04T01:10:59Z</updated>
	<subtitle>Кориснички доприноси</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9F%D1%80%D0%BE%D1%98%D0%B5%D0%BA%D1%82%D0%BE%D0%B2%D0%B0%D1%9A%D0%B5_%D1%81%D0%BE%D1%84%D1%82%D0%B2%D0%B5%D1%80%D0%B0/%D0%9A2_2021&amp;diff=3230</id>
		<title>Пројектовање софтвера/К2 2021</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9F%D1%80%D0%BE%D1%98%D0%B5%D0%BA%D1%82%D0%BE%D0%B2%D0%B0%D1%9A%D0%B5_%D1%81%D0%BE%D1%84%D1%82%D0%B2%D0%B5%D1%80%D0%B0/%D0%9A2_2021&amp;diff=3230"/>
		<updated>2021-12-09T16:41:07Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* 3. zadatak */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
{{rešenja}}&lt;br /&gt;
&lt;br /&gt;
== 1. zadatak ==&lt;br /&gt;
Izabrati odgovarajuću sintaksu za sekvenciranje poruka, koja odgovara sledećem opisu:&lt;br /&gt;
&lt;br /&gt;
U toku posmatrane interakcije, u aktivnosti koja sledi na strani prijema 2. poruke dolazi do konkuretnog grananja; u niti B se poziva 1. operacija po redu, koja izaziva aktivnost u kojoj se kao 4. poruka po redu, dok god je uslov &amp;lt;code&amp;gt;x&amp;gt;5&amp;lt;/code&amp;gt; ispunjen, pokreće aktivnost iz koje se poziva operacija &amp;lt;code&amp;gt;f()&amp;lt;/code&amp;gt; kao 3. po redu.&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;single&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;2B.1.4*[x&amp;gt;5].3:f()&amp;lt;/span&amp;gt;&lt;br /&gt;
# 3.1B.4[x&amp;gt;5].2:f()&lt;br /&gt;
# 2.B1.4*||[x&amp;gt;5].3:f()&lt;br /&gt;
# 2.1B.*[x&amp;gt;5]4.3:f()&lt;br /&gt;
# 2.B1.[x&amp;gt;5]*4.3:f()&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 2. zadatak ==&lt;br /&gt;
Povezati načine pristupa drugoj strani konektora kod dijagrama komunikacije sa njihovim ukrasima:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Opcije&lt;br /&gt;
! Pristup&lt;br /&gt;
! Ukras&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div data-solution=&amp;quot;select&amp;quot; data-options=&amp;quot;a,b,c,d,e,f,g&amp;quot;&amp;gt;&lt;br /&gt;
* Objektu uloge se pristupa preko primerka asocijacije - veze &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;b&amp;lt;/span&amp;gt;&lt;br /&gt;
* Objekat uloge je u nekom okružujućem dosegu imena &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;c&amp;lt;/span&amp;gt;&lt;br /&gt;
* Objekat uloge je argument operacije &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;e&amp;lt;/span&amp;gt;&lt;br /&gt;
* Objekat uloge je u lokalnom dosegu imena &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;d&amp;lt;/span&amp;gt;&lt;br /&gt;
* Objekat uloge sam sebi može da šalje poruku &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;f&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# argument&lt;br /&gt;
# association&lt;br /&gt;
# global&lt;br /&gt;
# local&lt;br /&gt;
# parameter&lt;br /&gt;
# self&lt;br /&gt;
# this&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 3. zadatak ==&lt;br /&gt;
Kako se na jeziku UML označava sekcija slučaja korišćenja, u kojoj se naznače tačke ponašanja u kojim se dati slučaj korišćenja proširuje drugim slučajevima korišćenja?&lt;br /&gt;
&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot; data-solution=&amp;quot;text&amp;quot;&amp;gt;extension points&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 4. zadatak ==&lt;br /&gt;
Koje od navedenih tvrdnji su tačne za sledeći dijagram stanja:&lt;br /&gt;
[[Датотека:PS K2 2021 zadatak 3.svg|center|frame|Slika uz četvrti zadatak.]]&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# Ovakav automat stanja prihvata kao ispravnu i kompletnu praznu sekvencu znakova.&lt;br /&gt;
# Ovakav automat stanja prihvata kao ispravnu i kompletnu sledeću sekvencu znakova: &amp;lt;code&amp;gt;;&amp;lt;/code&amp;gt;&lt;br /&gt;
# Ovo je primer automata &#039;&#039;Moor&#039;&#039;-ovog tipa.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Ovakav automat stanja prihvata kao ispravnu i kompletnu sledeću sekvencu znakova: &amp;lt;code&amp;gt;&amp;lt;&amp;gt;;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Ovakav automat stanja prihvata kao ispravnu i kompletnu sledeću sekvencu znakova: &amp;lt;code&amp;gt;&amp;lt;a&amp;gt;bbb;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Ovaj automat radi beskonačno.&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 5. zadatak ==&lt;br /&gt;
Sistem modelovan priloženim dijagramom stanja se pušta u rad. Redom se dešavaju događaji e1, e3, e2. Navesti akcije koje sistem izvršava kao posledicu navedene sekvence događaja, po redosledu izvršavanja. Odgovor (sekvencu akcija) dati navođenjem naziva akcija razdvojenih zapetama, bez razmaka. Primer: ako se redom izvršavaju akcije sa nazivima akcija1, akcija2 i akcija3, odgovor treba dati u formatu &amp;quot;akcija1,akcija2,akcija3&amp;quot; (bez znakova navoda).&lt;br /&gt;
[[Датотека:PS K2 2021 zadatak 5.svg|center|frame|Slika uz peti zadatak.]]&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot; data-solution=&amp;quot;text&amp;quot;&amp;gt;z,z1,z11,t11,f1,z12,t12,t1,t,f3,z,z1,z12,t12,t1,t,f2,x,x1&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 6. zadatak ==&lt;br /&gt;
Koje od sledećih tvrdnji su tačne za projektni uzorak &#039;&#039;Iterator&#039;&#039;:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Kurzor je naziv specifične vrste iteratora.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Unutrašnji iterator je fleksibilniji od spoljašnjeg.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Kod spoljašnjeg iteratora je na klijentu odgovornost za progres obilaska.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Agregat ne sme da definiše algoritam obilaska ni za jednu vrstu iteratora.&lt;br /&gt;
# Unutrašnji iterator mora posedovati javni metod za dohvatanje tekućeg elementa.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 7. zadatak ==&lt;br /&gt;
Koje od navedenih tvrdnji su tačne za projektni uzorak &#039;&#039;Stanje&#039;&#039;:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# Predstavlja klasni uzorak ponašanja.&lt;br /&gt;
# Mana uzorka je što prelasci između stanja konteksta nisu eksplicitni.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Objekti stanja se često realizuju preko projektnog uzorka &#039;&#039;Unikat&#039;&#039;.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Prilikom promene stanja, spolja izgleda kao da objekat konteksta menja svoju klasu.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Konkretan objekat stanja ne sme da menja stanje svog konteksta.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 8. zadatak ==&lt;br /&gt;
Koje od navedenih tvrdnji su tačne za projektni uzorak &#039;&#039;Podsetnik&#039;&#039;?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Klasa &#039;&#039;Podsetnik&#039;&#039; ispoljava dva interfejsa - uski prema klasi &#039;&#039;Čuvar&#039;&#039; i široki prema klasi &#039;&#039;Subjekat&#039;&#039;.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &#039;&#039;Čuvar&#039;&#039; proverava i koristi stanje objekta &#039;&#039;Podsetnik&#039;&#039;.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&#039;&#039;Subjekat&#039;&#039; odlučuje u kom trenutku će da sačuva svoje kompletno stanje ili deo stanja.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&#039;&#039;Subjekat&#039;&#039; kreira objekat &#039;&#039;Podsetnika&#039;&#039;.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Objekat &#039;&#039;Podsetnika&#039;&#039; nema unutrašnje stanje.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 9. zadatak ==&lt;br /&gt;
Koje od navedenih tvrdnji su tačne za projektni uzorak &#039;&#039;Muva&#039;&#039;?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# Klijenti stvaraju objekte muve njenim kloniranjem ili direktnom konstrukcijom.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Objekti deljenih muva mogu biti varijacije &#039;&#039;Unikata&#039;&#039; sa ograničenim brojem objekata.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Glavna mana ovog uzorka su potencijalni troškovi pronalaženja ili izračunavanja spoljašnjeg stanja muve.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Često se kombinuje sa uzorkom &#039;&#039;Sastav&#039;&#039;, tako da se formira stablo sa deljenim muvama u čvorovima i nedeljivim muvama u listovima.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Koristi se sa ciljem da se izbegne hiperprodukcija objekata.&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 10. zadatak ==&lt;br /&gt;
Koje od navedenih tvrdnji su tačne za projektni uzorak Adapter?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# Klasa &#039;&#039;Cilj&#039;&#039; predstavlja klasu koju treba adaptirati prema očekivanom interfejsu za klijenta.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Objektni uzorak &#039;&#039;Adapter&#039;&#039; treba koristiti kada je potrebno istovremeno adaptirati više potklasa neke klase.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Klasa &#039;&#039;Adapter&#039;&#039; sme imati metode koje nisu deo interfejsa &#039;&#039;Cilj&#039;&#039;.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Dvosmerni adapter i klasni i objektni adapter.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Klasni uzorak &#039;&#039;Adapter&#039;&#039; dopušta klasi &#039;&#039;Adapter&#039;&#039; da nadjača i tako redefiniše neke metode adaptirane klase.&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Рокови]]&lt;br /&gt;
[[Категорија:Пројектовање софтвера]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9F%D1%80%D0%BE%D1%98%D0%B5%D0%BA%D1%82%D0%BE%D0%B2%D0%B0%D1%9A%D0%B5_%D1%81%D0%BE%D1%84%D1%82%D0%B2%D0%B5%D1%80%D0%B0/%D0%9A2_2021&amp;diff=3229</id>
		<title>Пројектовање софтвера/К2 2021</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9F%D1%80%D0%BE%D1%98%D0%B5%D0%BA%D1%82%D0%BE%D0%B2%D0%B0%D1%9A%D0%B5_%D1%81%D0%BE%D1%84%D1%82%D0%B2%D0%B5%D1%80%D0%B0/%D0%9A2_2021&amp;diff=3229"/>
		<updated>2021-12-09T16:40:37Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* 3. zadatak - izbacena slika koja je u sledećem zdtku*/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
{{rešenja}}&lt;br /&gt;
&lt;br /&gt;
== 1. zadatak ==&lt;br /&gt;
Izabrati odgovarajuću sintaksu za sekvenciranje poruka, koja odgovara sledećem opisu:&lt;br /&gt;
&lt;br /&gt;
U toku posmatrane interakcije, u aktivnosti koja sledi na strani prijema 2. poruke dolazi do konkuretnog grananja; u niti B se poziva 1. operacija po redu, koja izaziva aktivnost u kojoj se kao 4. poruka po redu, dok god je uslov &amp;lt;code&amp;gt;x&amp;gt;5&amp;lt;/code&amp;gt; ispunjen, pokreće aktivnost iz koje se poziva operacija &amp;lt;code&amp;gt;f()&amp;lt;/code&amp;gt; kao 3. po redu.&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;single&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;2B.1.4*[x&amp;gt;5].3:f()&amp;lt;/span&amp;gt;&lt;br /&gt;
# 3.1B.4[x&amp;gt;5].2:f()&lt;br /&gt;
# 2.B1.4*||[x&amp;gt;5].3:f()&lt;br /&gt;
# 2.1B.*[x&amp;gt;5]4.3:f()&lt;br /&gt;
# 2.B1.[x&amp;gt;5]*4.3:f()&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 2. zadatak ==&lt;br /&gt;
Povezati načine pristupa drugoj strani konektora kod dijagrama komunikacije sa njihovim ukrasima:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Opcije&lt;br /&gt;
! Pristup&lt;br /&gt;
! Ukras&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div data-solution=&amp;quot;select&amp;quot; data-options=&amp;quot;a,b,c,d,e,f,g&amp;quot;&amp;gt;&lt;br /&gt;
* Objektu uloge se pristupa preko primerka asocijacije - veze &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;b&amp;lt;/span&amp;gt;&lt;br /&gt;
* Objekat uloge je u nekom okružujućem dosegu imena &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;c&amp;lt;/span&amp;gt;&lt;br /&gt;
* Objekat uloge je argument operacije &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;e&amp;lt;/span&amp;gt;&lt;br /&gt;
* Objekat uloge je u lokalnom dosegu imena &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;d&amp;lt;/span&amp;gt;&lt;br /&gt;
* Objekat uloge sam sebi može da šalje poruku &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;f&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# argument&lt;br /&gt;
# association&lt;br /&gt;
# global&lt;br /&gt;
# local&lt;br /&gt;
# parameter&lt;br /&gt;
# self&lt;br /&gt;
# this&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 3. zadatak ==&lt;br /&gt;
Kako se na jeziku UML označava sekcija slučaja korišćenja, u kojoj se naznače tačke ponašanja u kojim se dati slučaj korišćenja proširuje drugim slučajevima korišćenja?&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot; data-solution=&amp;quot;text&amp;quot;&amp;gt;extension points&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 4. zadatak ==&lt;br /&gt;
Koje od navedenih tvrdnji su tačne za sledeći dijagram stanja:&lt;br /&gt;
[[Датотека:PS K2 2021 zadatak 3.svg|center|frame|Slika uz četvrti zadatak.]]&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# Ovakav automat stanja prihvata kao ispravnu i kompletnu praznu sekvencu znakova.&lt;br /&gt;
# Ovakav automat stanja prihvata kao ispravnu i kompletnu sledeću sekvencu znakova: &amp;lt;code&amp;gt;;&amp;lt;/code&amp;gt;&lt;br /&gt;
# Ovo je primer automata &#039;&#039;Moor&#039;&#039;-ovog tipa.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Ovakav automat stanja prihvata kao ispravnu i kompletnu sledeću sekvencu znakova: &amp;lt;code&amp;gt;&amp;lt;&amp;gt;;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Ovakav automat stanja prihvata kao ispravnu i kompletnu sledeću sekvencu znakova: &amp;lt;code&amp;gt;&amp;lt;a&amp;gt;bbb;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Ovaj automat radi beskonačno.&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 5. zadatak ==&lt;br /&gt;
Sistem modelovan priloženim dijagramom stanja se pušta u rad. Redom se dešavaju događaji e1, e3, e2. Navesti akcije koje sistem izvršava kao posledicu navedene sekvence događaja, po redosledu izvršavanja. Odgovor (sekvencu akcija) dati navođenjem naziva akcija razdvojenih zapetama, bez razmaka. Primer: ako se redom izvršavaju akcije sa nazivima akcija1, akcija2 i akcija3, odgovor treba dati u formatu &amp;quot;akcija1,akcija2,akcija3&amp;quot; (bez znakova navoda).&lt;br /&gt;
[[Датотека:PS K2 2021 zadatak 5.svg|center|frame|Slika uz peti zadatak.]]&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot; data-solution=&amp;quot;text&amp;quot;&amp;gt;z,z1,z11,t11,f1,z12,t12,t1,t,f3,z,z1,z12,t12,t1,t,f2,x,x1&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 6. zadatak ==&lt;br /&gt;
Koje od sledećih tvrdnji su tačne za projektni uzorak &#039;&#039;Iterator&#039;&#039;:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Kurzor je naziv specifične vrste iteratora.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Unutrašnji iterator je fleksibilniji od spoljašnjeg.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Kod spoljašnjeg iteratora je na klijentu odgovornost za progres obilaska.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Agregat ne sme da definiše algoritam obilaska ni za jednu vrstu iteratora.&lt;br /&gt;
# Unutrašnji iterator mora posedovati javni metod za dohvatanje tekućeg elementa.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 7. zadatak ==&lt;br /&gt;
Koje od navedenih tvrdnji su tačne za projektni uzorak &#039;&#039;Stanje&#039;&#039;:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# Predstavlja klasni uzorak ponašanja.&lt;br /&gt;
# Mana uzorka je što prelasci između stanja konteksta nisu eksplicitni.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Objekti stanja se često realizuju preko projektnog uzorka &#039;&#039;Unikat&#039;&#039;.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Prilikom promene stanja, spolja izgleda kao da objekat konteksta menja svoju klasu.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Konkretan objekat stanja ne sme da menja stanje svog konteksta.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 8. zadatak ==&lt;br /&gt;
Koje od navedenih tvrdnji su tačne za projektni uzorak &#039;&#039;Podsetnik&#039;&#039;?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Klasa &#039;&#039;Podsetnik&#039;&#039; ispoljava dva interfejsa - uski prema klasi &#039;&#039;Čuvar&#039;&#039; i široki prema klasi &#039;&#039;Subjekat&#039;&#039;.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &#039;&#039;Čuvar&#039;&#039; proverava i koristi stanje objekta &#039;&#039;Podsetnik&#039;&#039;.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&#039;&#039;Subjekat&#039;&#039; odlučuje u kom trenutku će da sačuva svoje kompletno stanje ili deo stanja.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&#039;&#039;Subjekat&#039;&#039; kreira objekat &#039;&#039;Podsetnika&#039;&#039;.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Objekat &#039;&#039;Podsetnika&#039;&#039; nema unutrašnje stanje.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 9. zadatak ==&lt;br /&gt;
Koje od navedenih tvrdnji su tačne za projektni uzorak &#039;&#039;Muva&#039;&#039;?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# Klijenti stvaraju objekte muve njenim kloniranjem ili direktnom konstrukcijom.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Objekti deljenih muva mogu biti varijacije &#039;&#039;Unikata&#039;&#039; sa ograničenim brojem objekata.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Glavna mana ovog uzorka su potencijalni troškovi pronalaženja ili izračunavanja spoljašnjeg stanja muve.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Često se kombinuje sa uzorkom &#039;&#039;Sastav&#039;&#039;, tako da se formira stablo sa deljenim muvama u čvorovima i nedeljivim muvama u listovima.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Koristi se sa ciljem da se izbegne hiperprodukcija objekata.&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 10. zadatak ==&lt;br /&gt;
Koje od navedenih tvrdnji su tačne za projektni uzorak Adapter?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# Klasa &#039;&#039;Cilj&#039;&#039; predstavlja klasu koju treba adaptirati prema očekivanom interfejsu za klijenta.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Objektni uzorak &#039;&#039;Adapter&#039;&#039; treba koristiti kada je potrebno istovremeno adaptirati više potklasa neke klase.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Klasa &#039;&#039;Adapter&#039;&#039; sme imati metode koje nisu deo interfejsa &#039;&#039;Cilj&#039;&#039;.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Dvosmerni adapter i klasni i objektni adapter.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Klasni uzorak &#039;&#039;Adapter&#039;&#039; dopušta klasi &#039;&#039;Adapter&#039;&#039; da nadjača i tako redefiniše neke metode adaptirane klase.&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Рокови]]&lt;br /&gt;
[[Категорија:Пројектовање софтвера]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9F%D1%80%D0%BE%D1%98%D0%B5%D0%BA%D1%82%D0%BE%D0%B2%D0%B0%D1%9A%D0%B5_%D1%81%D0%BE%D1%84%D1%82%D0%B2%D0%B5%D1%80%D0%B0/%D0%9A2_2021&amp;diff=3228</id>
		<title>Пројектовање софтвера/К2 2021</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9F%D1%80%D0%BE%D1%98%D0%B5%D0%BA%D1%82%D0%BE%D0%B2%D0%B0%D1%9A%D0%B5_%D1%81%D0%BE%D1%84%D1%82%D0%B2%D0%B5%D1%80%D0%B0/%D0%9A2_2021&amp;diff=3228"/>
		<updated>2021-12-09T16:40:06Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* 4. zadatak - slika je bila u 3.*/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
{{rešenja}}&lt;br /&gt;
&lt;br /&gt;
== 1. zadatak ==&lt;br /&gt;
Izabrati odgovarajuću sintaksu za sekvenciranje poruka, koja odgovara sledećem opisu:&lt;br /&gt;
&lt;br /&gt;
U toku posmatrane interakcije, u aktivnosti koja sledi na strani prijema 2. poruke dolazi do konkuretnog grananja; u niti B se poziva 1. operacija po redu, koja izaziva aktivnost u kojoj se kao 4. poruka po redu, dok god je uslov &amp;lt;code&amp;gt;x&amp;gt;5&amp;lt;/code&amp;gt; ispunjen, pokreće aktivnost iz koje se poziva operacija &amp;lt;code&amp;gt;f()&amp;lt;/code&amp;gt; kao 3. po redu.&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;single&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;2B.1.4*[x&amp;gt;5].3:f()&amp;lt;/span&amp;gt;&lt;br /&gt;
# 3.1B.4[x&amp;gt;5].2:f()&lt;br /&gt;
# 2.B1.4*||[x&amp;gt;5].3:f()&lt;br /&gt;
# 2.1B.*[x&amp;gt;5]4.3:f()&lt;br /&gt;
# 2.B1.[x&amp;gt;5]*4.3:f()&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 2. zadatak ==&lt;br /&gt;
Povezati načine pristupa drugoj strani konektora kod dijagrama komunikacije sa njihovim ukrasima:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Opcije&lt;br /&gt;
! Pristup&lt;br /&gt;
! Ukras&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div data-solution=&amp;quot;select&amp;quot; data-options=&amp;quot;a,b,c,d,e,f,g&amp;quot;&amp;gt;&lt;br /&gt;
* Objektu uloge se pristupa preko primerka asocijacije - veze &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;b&amp;lt;/span&amp;gt;&lt;br /&gt;
* Objekat uloge je u nekom okružujućem dosegu imena &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;c&amp;lt;/span&amp;gt;&lt;br /&gt;
* Objekat uloge je argument operacije &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;e&amp;lt;/span&amp;gt;&lt;br /&gt;
* Objekat uloge je u lokalnom dosegu imena &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;d&amp;lt;/span&amp;gt;&lt;br /&gt;
* Objekat uloge sam sebi može da šalje poruku &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;f&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# argument&lt;br /&gt;
# association&lt;br /&gt;
# global&lt;br /&gt;
# local&lt;br /&gt;
# parameter&lt;br /&gt;
# self&lt;br /&gt;
# this&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 3. zadatak ==&lt;br /&gt;
Kako se na jeziku UML označava sekcija slučaja korišćenja, u kojoj se naznače tačke ponašanja u kojim se dati slučaj korišćenja proširuje drugim slučajevima korišćenja?&lt;br /&gt;
[[Датотека:PS K2 2021 zadatak 3.svg|center|frame|Slika uz treći zadatak.]]&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot; data-solution=&amp;quot;text&amp;quot;&amp;gt;extension points&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 4. zadatak ==&lt;br /&gt;
Koje od navedenih tvrdnji su tačne za sledeći dijagram stanja:&lt;br /&gt;
[[Датотека:PS K2 2021 zadatak 3.svg|center|frame|Slika uz četvrti zadatak.]]&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# Ovakav automat stanja prihvata kao ispravnu i kompletnu praznu sekvencu znakova.&lt;br /&gt;
# Ovakav automat stanja prihvata kao ispravnu i kompletnu sledeću sekvencu znakova: &amp;lt;code&amp;gt;;&amp;lt;/code&amp;gt;&lt;br /&gt;
# Ovo je primer automata &#039;&#039;Moor&#039;&#039;-ovog tipa.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Ovakav automat stanja prihvata kao ispravnu i kompletnu sledeću sekvencu znakova: &amp;lt;code&amp;gt;&amp;lt;&amp;gt;;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Ovakav automat stanja prihvata kao ispravnu i kompletnu sledeću sekvencu znakova: &amp;lt;code&amp;gt;&amp;lt;a&amp;gt;bbb;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Ovaj automat radi beskonačno.&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 5. zadatak ==&lt;br /&gt;
Sistem modelovan priloženim dijagramom stanja se pušta u rad. Redom se dešavaju događaji e1, e3, e2. Navesti akcije koje sistem izvršava kao posledicu navedene sekvence događaja, po redosledu izvršavanja. Odgovor (sekvencu akcija) dati navođenjem naziva akcija razdvojenih zapetama, bez razmaka. Primer: ako se redom izvršavaju akcije sa nazivima akcija1, akcija2 i akcija3, odgovor treba dati u formatu &amp;quot;akcija1,akcija2,akcija3&amp;quot; (bez znakova navoda).&lt;br /&gt;
[[Датотека:PS K2 2021 zadatak 5.svg|center|frame|Slika uz peti zadatak.]]&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot; data-solution=&amp;quot;text&amp;quot;&amp;gt;z,z1,z11,t11,f1,z12,t12,t1,t,f3,z,z1,z12,t12,t1,t,f2,x,x1&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 6. zadatak ==&lt;br /&gt;
Koje od sledećih tvrdnji su tačne za projektni uzorak &#039;&#039;Iterator&#039;&#039;:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Kurzor je naziv specifične vrste iteratora.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Unutrašnji iterator je fleksibilniji od spoljašnjeg.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Kod spoljašnjeg iteratora je na klijentu odgovornost za progres obilaska.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Agregat ne sme da definiše algoritam obilaska ni za jednu vrstu iteratora.&lt;br /&gt;
# Unutrašnji iterator mora posedovati javni metod za dohvatanje tekućeg elementa.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 7. zadatak ==&lt;br /&gt;
Koje od navedenih tvrdnji su tačne za projektni uzorak &#039;&#039;Stanje&#039;&#039;:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# Predstavlja klasni uzorak ponašanja.&lt;br /&gt;
# Mana uzorka je što prelasci između stanja konteksta nisu eksplicitni.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Objekti stanja se često realizuju preko projektnog uzorka &#039;&#039;Unikat&#039;&#039;.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Prilikom promene stanja, spolja izgleda kao da objekat konteksta menja svoju klasu.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Konkretan objekat stanja ne sme da menja stanje svog konteksta.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 8. zadatak ==&lt;br /&gt;
Koje od navedenih tvrdnji su tačne za projektni uzorak &#039;&#039;Podsetnik&#039;&#039;?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Klasa &#039;&#039;Podsetnik&#039;&#039; ispoljava dva interfejsa - uski prema klasi &#039;&#039;Čuvar&#039;&#039; i široki prema klasi &#039;&#039;Subjekat&#039;&#039;.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &#039;&#039;Čuvar&#039;&#039; proverava i koristi stanje objekta &#039;&#039;Podsetnik&#039;&#039;.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&#039;&#039;Subjekat&#039;&#039; odlučuje u kom trenutku će da sačuva svoje kompletno stanje ili deo stanja.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&#039;&#039;Subjekat&#039;&#039; kreira objekat &#039;&#039;Podsetnika&#039;&#039;.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Objekat &#039;&#039;Podsetnika&#039;&#039; nema unutrašnje stanje.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 9. zadatak ==&lt;br /&gt;
Koje od navedenih tvrdnji su tačne za projektni uzorak &#039;&#039;Muva&#039;&#039;?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# Klijenti stvaraju objekte muve njenim kloniranjem ili direktnom konstrukcijom.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Objekti deljenih muva mogu biti varijacije &#039;&#039;Unikata&#039;&#039; sa ograničenim brojem objekata.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Glavna mana ovog uzorka su potencijalni troškovi pronalaženja ili izračunavanja spoljašnjeg stanja muve.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Često se kombinuje sa uzorkom &#039;&#039;Sastav&#039;&#039;, tako da se formira stablo sa deljenim muvama u čvorovima i nedeljivim muvama u listovima.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Koristi se sa ciljem da se izbegne hiperprodukcija objekata.&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 10. zadatak ==&lt;br /&gt;
Koje od navedenih tvrdnji su tačne za projektni uzorak Adapter?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# Klasa &#039;&#039;Cilj&#039;&#039; predstavlja klasu koju treba adaptirati prema očekivanom interfejsu za klijenta.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Objektni uzorak &#039;&#039;Adapter&#039;&#039; treba koristiti kada je potrebno istovremeno adaptirati više potklasa neke klase.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Klasa &#039;&#039;Adapter&#039;&#039; sme imati metode koje nisu deo interfejsa &#039;&#039;Cilj&#039;&#039;.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Dvosmerni adapter i klasni i objektni adapter.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Klasni uzorak &#039;&#039;Adapter&#039;&#039; dopušta klasi &#039;&#039;Adapter&#039;&#039; da nadjača i tako redefiniše neke metode adaptirane klase.&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Рокови]]&lt;br /&gt;
[[Категорија:Пројектовање софтвера]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%A0%D0%B0%D1%87%D1%83%D0%BD%D0%B0%D1%80%D1%81%D0%BA%D0%B5_%D0%BC%D1%80%D0%B5%D0%B6%D0%B5_2/%D0%9F%D0%B8%D1%82%D0%B0%D1%9A%D0%B0&amp;diff=3070</id>
		<title>Рачунарске мреже 2/Питања</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%A0%D0%B0%D1%87%D1%83%D0%BD%D0%B0%D1%80%D1%81%D0%BA%D0%B5_%D0%BC%D1%80%D0%B5%D0%B6%D0%B5_2/%D0%9F%D0%B8%D1%82%D0%B0%D1%9A%D0%B0&amp;diff=3070"/>
		<updated>2021-10-31T19:16:36Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Pitanje 11 typo*/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
Ovde su skupljena razna pitanja iz izvora poput RM1 baze pitanja koja se može naći u odeljku sa [[Рачунарске мреже 1#Корисне везе|korisnim vezama]] na stranici predmeta.&lt;br /&gt;
{{rešenja}}&lt;br /&gt;
&lt;br /&gt;
== K1 ==&lt;br /&gt;
=== Pitanje 1 ===&lt;br /&gt;
Ako ruter A sa ulogom &#039;&#039;route reflector&#039;&#039;-a dobije rutu od rutera koji je njegov klijent, ruta može da bude prosleđena:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;eBGP susedima rutera A&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;klijentima rutera A&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;iBGP susedima koji nisu klijenti A&amp;lt;/span&amp;gt;&lt;br /&gt;
# nikome&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pitanje 2 ===&lt;br /&gt;
&#039;&#039;Route reflector&#039;&#039; i njegovi klijenti čine:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# autonomni sistem&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;klaster&amp;lt;/span&amp;gt;&lt;br /&gt;
# konfederaciju&lt;br /&gt;
# federaciju&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pitanje 3 ===&lt;br /&gt;
Internet provajderi su primer:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;single&amp;quot;&amp;gt;&lt;br /&gt;
# autonomnog sistema sa jednim izlazom&lt;br /&gt;
# autonomnog sistema sa više izlaza bez tranzita saobraćaja&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;autonomnog sistema sa više izlaza i tranzitom saobraćaja&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pitanje 4 ===&lt;br /&gt;
&#039;&#039;MED&#039;&#039; atribut je:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;single&amp;quot;&amp;gt;&lt;br /&gt;
# dobro poznat opcioni atribut &lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;opcioni netranzitivni atribut&amp;lt;/span&amp;gt;&lt;br /&gt;
# opcioni tranzitivni atribut &lt;br /&gt;
# dobro poznat obavezan atribut &lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pitanje 5 ===&lt;br /&gt;
&#039;&#039;AS-Set&#039;&#039;&#039; atribut pokazuje:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;single&amp;quot;&amp;gt;&lt;br /&gt;
# ID rutera koji je agregirao rutu&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;skup autonomnih sistema iz kojih potiču komponente agregirane rute&amp;lt;/span&amp;gt;&lt;br /&gt;
# da li je data ruta agregirana&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pitanje 6 ===&lt;br /&gt;
Za BGP je tačno sledeće:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&#039;&#039;Next Hop&#039;&#039; je obavezan atribut u svim BGP Update-ima&amp;lt;/span&amp;gt;&lt;br /&gt;
# iBGP ima manju administrativnu distancu od eBGP&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Ruta dobijena putem iBGP-a sme da bude oglašena eBGP susedima&amp;lt;/span&amp;gt;&lt;br /&gt;
# &#039;&#039;AS-Set&#039;&#039; je obavezan atribut u svim BGP Update-ima&lt;br /&gt;
# Koristi ICMP za prenos svojih poruka&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;eBGP ima manju administrativnu distancu od iBGP&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pitanje 7 ===&lt;br /&gt;
&#039;&#039;Local preference&#039;&#039; atribut:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;određuje kako će saobraćaj izlaziti iz datog AS&amp;lt;/span&amp;gt;&lt;br /&gt;
# se dodeljuje rutama koje izlaze iz datog AS&lt;br /&gt;
# određuje kako će saobraćaj ulaziti u dati AS&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;se dodeljuje rutama koje ulaze u dati AS&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pitanje 8 ===&lt;br /&gt;
Autonomni sistem AS1 je podeljen u 4 pod-autonomnih sistema koji čine konfederaciju. Svaki pod-AS ima po 3 rutera. Koliko mora da bude iBGP sesija unutar AS1 da bi mreža pravilno funkcionisala?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;single&amp;quot;&amp;gt;&lt;br /&gt;
# 4&lt;br /&gt;
# 14&lt;br /&gt;
# 13&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;15&amp;lt;/span&amp;gt;&lt;br /&gt;
# 12&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pitanje 9 ===&lt;br /&gt;
Autonomni sistem ima 10 rutera. Od toga postoji jedan &#039;&#039;route reflector&#039;&#039; koji ima 7 svojih klijenata. Ostali ruteri su klasični iBGP ruteri. Koliko najmanje mora da postoji iBGP sesija da bi autonomni sistem pravilno funkcionisao?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;single&amp;quot;&amp;gt;&lt;br /&gt;
# 7&lt;br /&gt;
# 45&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;10&amp;lt;/span&amp;gt;&lt;br /&gt;
# 12&lt;br /&gt;
# 9&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pitanje 10 ===&lt;br /&gt;
&#039;&#039;Local preference&#039;&#039; atribut se pridružuje rutama koje:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;single&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;ulaze u ruter&amp;lt;/span&amp;gt;&lt;br /&gt;
# izlaze iz rutera&lt;br /&gt;
# i ulaze u ruter i izlaze iz rutera&lt;br /&gt;
# ništa od navedenog&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pitanje 11 ===&lt;br /&gt;
BGP kao kriterijum za izbor najbolje rute koristi sledeće:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# kašnjenje duž linka&lt;br /&gt;
# &#039;&#039;Aggregator&#039;&#039; atribut&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&#039;&#039;Origin&#039;&#039; atribut&amp;lt;/span&amp;gt;&lt;br /&gt;
# propusni opseg linka&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;vreme dolaska rute u ruter&amp;lt;/span&amp;gt;&lt;br /&gt;
# ukupan broj rutera na putanji&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pitanje 12 ===&lt;br /&gt;
Atribut &#039;&#039;Community&#039;&#039; se koristi za :&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;single&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;uticanje na rute u udaljenim AS&amp;lt;/span&amp;gt;&lt;br /&gt;
# informisanje drugih rutera o promenama u ruting tabeli &lt;br /&gt;
# sprečavanja petlji u rutiranju&lt;br /&gt;
# ništa od navedenog&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pitanje 13 ===&lt;br /&gt;
Za BGP je tačno sledeće:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# Koristi UDP za prenos svojih poruka&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Koristi TCP za prenos svojih poruka&amp;lt;/span&amp;gt;&lt;br /&gt;
# BGP metrika je broj rutera na putanji&lt;br /&gt;
# iBGP susedi moraju da budu direktno povezani&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;iBGP ruter ne prosleđuje iBGP susedima rutu dobijenu od iBGP suseda&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pitanje 14 ===&lt;br /&gt;
Pravilo sinhronizacije unutar AS glasi:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;single&amp;quot;&amp;gt;&lt;br /&gt;
# Da bi se neka ruta oglasila eBGP susedu, mora pre toga da bude dobijena od iBGP suseda &lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Da bi se neka ruta oglasila eBGP susedu, mora pre toga da bude oglasena network komandom&amp;lt;/span&amp;gt;&lt;br /&gt;
# Da bi se neka ruta oglasila eBGP susedu, mora pre toga da bude u ruting tabeli dobijena iz nekog internog protokola rutiranja &lt;br /&gt;
# Da bi se neka ruta oglasila eBGP susedu, ne sme da bude dobijena od eBGP suseda &lt;br /&gt;
# Da bi se neka ruta oglasila eBGP susedu, ne sme da bude dobijena od iBGP suseda &lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pitanje 15 ===&lt;br /&gt;
Šta je tačno?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# Simetričnost saobraćaja označava situaciju gde se saobraćaj šalje naizmenično na dva linka&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Simetričan saobraćaj je onaj koji u oba smera između dve lokacije putuje istom putanjom&amp;lt;/span&amp;gt;&lt;br /&gt;
# Simetričnost saobraćaja označava situaciju kada su količine odlaznog i dolaznog saobraćaja iste&lt;br /&gt;
# Simetričnost saobraćaja služi za obezbeđenje rezervnih putanja saobraćaja&lt;br /&gt;
# Simetričan saobraćaj otežava otkrivanje problema u mreži&lt;br /&gt;
# Ništa od navedenog&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pitanje 16 ===&lt;br /&gt;
Redosled kriterijuma za izbor najbolje rute u BGP je sledeći:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot; data-solution=&amp;quot;multiple&amp;quot;&amp;gt;&lt;br /&gt;
# kraći &#039;&#039;AS-Path&#039;&#039;, veća &#039;&#039;LP&#039;&#039; vrednost, niža &#039;&#039;MED&#039;&#039; vrednost&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;veća &#039;&#039;LP&#039;&#039; vrednost, kraći &#039;&#039;AS-Path&#039;&#039;, niža &#039;&#039;MED&#039;&#039; vrednost&amp;lt;/span&amp;gt;&lt;br /&gt;
# niža &#039;&#039;MED&#039;&#039; vrednost, kraći &#039;&#039;AS-Path&#039;&#039;, veća &#039;&#039;LP&#039;&#039; vrednost&lt;br /&gt;
# veća &#039;&#039;LP&#039;&#039; vrednost, kraći &#039;&#039;AS-Path&#039;&#039;, viša &#039;&#039;MED&#039;&#039; vrednost&lt;br /&gt;
# kraći &#039;&#039;AS-Path&#039;&#039;, veća &#039;&#039;LP&#039;&#039; vrednost, niža &#039;&#039;MED&#039;&#039; vrednost&lt;br /&gt;
# niža &#039;&#039;MED&#039;&#039; vrednost, veća &#039;&#039;LP&#039;&#039; vrednost, kraći &#039;&#039;AS-Path&#039;&#039;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Рокови]]&lt;br /&gt;
[[Категорија:Рачунарске мреже 2]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%98%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%B8_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B8_1&amp;diff=3039</id>
		<title>Информациони системи 1</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%98%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%B8_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B8_1&amp;diff=3039"/>
		<updated>2021-10-21T11:07:33Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Начин оцењивања - PR уместо P */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
Информациони системи 1 је обавезан предмет из петог семестра.&lt;br /&gt;
&lt;br /&gt;
== Странице ==&lt;br /&gt;
* [https://rti.etf.bg.ac.rs/rti/temp/is1_proba Страница предмета]&lt;br /&gt;
&lt;br /&gt;
== Корисне везе ==&lt;br /&gt;
{{Материјали&lt;br /&gt;
| vuk = 11oSzQNNsC_pXCYTZirbMi4moyoi-TRqG&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Начин оцењивања ==&lt;br /&gt;
* &amp;lt;math&amp;gt;K_1, K_2&amp;lt;/math&amp;gt; — Бодови са колоквијума (0-15). &#039;&#039;&#039;На сваки колоквијум је могуће изаћи само једном.&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;math&amp;gt;L_1&amp;lt;/math&amp;gt; — Бодови са прве лабораторијске вежбе (0-8)&lt;br /&gt;
* &amp;lt;math&amp;gt;L_2&amp;lt;/math&amp;gt; — Бодови са друге лабораторијске вежбе (0-12)&lt;br /&gt;
* &amp;lt;math&amp;gt;PR&amp;lt;/math&amp;gt; — Бодови са пројекта (0-20)&lt;br /&gt;
* &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; — Бодови са испита (0-30)&lt;br /&gt;
* Укупни бодови: &amp;lt;math&amp;gt;P = K_1 + K_2 + L_1 + L_2 + PR + I&amp;lt;/math&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Бодови&lt;br /&gt;
| &amp;lt;math&amp;gt;P \leq 50&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;50 &amp;lt; P \leq 60&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;60 &amp;lt; P \leq 70&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;70 &amp;lt; P \leq 80&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;80 &amp;lt; P \leq 90&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;90 &amp;lt; P&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! Оцена&lt;br /&gt;
| 5 || 6 || 7 || 8 || 9 || 10&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Рачунање ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;calculator&amp;quot;&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt;K_1&amp;lt;/math&amp;gt;: &amp;lt;span data-variable=&amp;quot;K1&amp;quot; data-max=&amp;quot;15&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt;K_2&amp;lt;/math&amp;gt;: &amp;lt;span data-variable=&amp;quot;K2&amp;quot; data-max=&amp;quot;15&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt;L_1&amp;lt;/math&amp;gt;: &amp;lt;span data-variable=&amp;quot;L1&amp;quot; data-max=&amp;quot;8&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt;L_2&amp;lt;/math&amp;gt;: &amp;lt;span data-variable=&amp;quot;L2&amp;quot; data-max=&amp;quot;12&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt;PR&amp;lt;/math&amp;gt;: &amp;lt;span data-variable=&amp;quot;PR&amp;quot; data-max=&amp;quot;20&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt;: &amp;lt;span data-variable=&amp;quot;I&amp;quot; data-max=&amp;quot;30&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt;P&amp;lt;/math&amp;gt;: &amp;lt;span data-variable=&amp;quot;P&amp;quot; data-expression=&amp;quot;K1 K2 L1 L2 PR I + + + + +&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
* Оцена: &amp;lt;span data-expression=&amp;quot;P 10 / ceil 5 max 10 min&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Потребна помоћ ==&lt;br /&gt;
* {{zadaci|postavke}}&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Пети семестар]]&lt;br /&gt;
[[Категорија:Обавезни предмети]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%88%D1%83%D0%BB_2021&amp;diff=2644</id>
		<title>ОРТ2/Јул 2021</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%88%D1%83%D0%BB_2021&amp;diff=2644"/>
		<updated>2021-07-06T00:48:31Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Операциона јединица */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
{{нерешено}}&lt;br /&gt;
&lt;br /&gt;
== Поставка ==&lt;br /&gt;
&lt;br /&gt;
Посматра се део рачунара који чине меморија и процесор. Меморија је капацитета 2&amp;lt;sup&amp;gt;16&amp;lt;/sup&amp;gt; бајтова. Ширина меморијске речи је 1 бајт. Процесор је са једноадресним форматом инструкција.Адресе и подаци су дужине 16 бита и заузимају по две суседне меморијске локације, при чему се старији бајт налази на нижој, а млађи бајт на вишој адреси.&lt;br /&gt;
&lt;br /&gt;
У процесору постоји регистар програмског бројача PC дужине 2 бајта, адресни регистар меморије MAR дужине 2 бајта, прихватни регистар податка меморије MDR дужине 1 бајт, прихватни регистар инструкције IR дужине 4 бајта, акумулатор A дужине 2 бајта, прихватни регистар податка B дужине 2 бајта, регистри опште намене R0 до R31 дужине 2 бајта, програмска статусна реч PSW дужине 1 бајт. Инструкције су дужине 1, 2, 3 или 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Битови 7 и 6 првог бајта инструкције су 11 за све инструкције скока. Код инструкција условног скока битови 5 и 4 првог бајта инструкције су 00, док код инструкција безусловног скока битови 5 и 4 првог бајта инструкције су 11. Инструкција условног скока је инструкција условног скока уколико постоји пренос/позајмица (JC), а инструкције безусловног скока су инструкција безусловног скока (JMP) и инструкција скока на потпрограм (JSR). Битовима 3 до 0 првог бајта инструкције специфира се код операције и на основу тога су за инструкције JC, JMP и JSR усвојени кодови операције 11000000, 11110000 и 11110001, респективно. Инструкције JC, JMP и JSR се реализују као апсолутни скокови, при чему је адреса дата другим и трећим бајтом инструкције. Дужина инструкција је 3 бајта.&lt;br /&gt;
&lt;br /&gt;
Битови 7 и 6 првог бајта инструкције су 00 за све адресне и безадресне инструкције.&lt;br /&gt;
&lt;br /&gt;
Бит 5 првог бајта инструкције је 0 за безадресне инструкције. Безадресне инструкције су инструкције стављања садржаја акумулатора на стек (PUSH), пуњења акумулатора садржајем са стека (POP) и повратка из потпрограма (RTS). Битовима 4 до 0 првог бајта инструкције специфицира се код операције за безадресне инструкције. На основу тога су за инструкције PUSH, POP и RTS усвојени кодови операција 00000000, 00000001 и 00000011, респективно. Дужина инструкција је 1 бајт.&lt;br /&gt;
&lt;br /&gt;
Битови 5 и 4 првог бајта инструкције су 11 за адресне инструкције. Адресне инструкције су инструкција преноса у акумулатор (LD), инструкција преноса из акумулатора (ST), логичка инструкција комплементирања операнда која смешта резултат у акумулатор (NOT), инструкција логичког померања операнда једно место улево која смешта резултат у акумулатор (LSL) и инструкција безусловног скока на срачунату адресу (JADR). Битовима 3 до 0 првог бајта инструкције специфицира се код операције за адресне инструкције. На основу тога су за инструкције LD, ST, NOT, LSL и JADR усвојени кодови операција 00110000, 00110001, 00110010, 00110011 и 00110100 респективно. Дужина инструкција је 2 или 4 бајта и зависи од специфицираног начина адресирања.&lt;br /&gt;
&lt;br /&gt;
Начини адресирања су специфицирани битовима 7, 6 и 5 другог бајта инструкције и то на следећи начин: 000-меморијско директно адресирање (memdir), 001-регистарско директно адресирање (regdir), 010-регистарско индиректно (regind), 011-релативно адресирање са померајем (pcrel), и 100-непосредно адресирање (immed). Код меморијског директног адресирања 16 битна адреса меморијске локације је дата трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код регистарског директног и регистарског индиректног адресирања, користи се неки од регистара опште намене R0 до R31 специфицираних битовима од 4 до 0 другог бајта. Дужина инструкција је 2 бајта. Код релативног адресирања са померајем трећи и четврти бајт инструкције садрже 16 битни померај који је дат као целобројна величина без знака. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код непосредног адресирања 16 битни операнд дат је трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Стек расте према вишим меморијским локацијама, а регистар SP указује на прву слободну меморијску локацију. Процесор нема могућност обраде прекида&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;1. (К2) (20)&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Написати израз за генерисање сигнала gradr који је активан уколико прочитана инструкција има грешку при адресирању.&lt;br /&gt;
# Написати изразе за генерисање сигнала свих начина адресирања. IR регистар се попуњава од виших ка нижим битовима.&lt;br /&gt;
# Написати изразе за генерисање сигнала операција и то само за JC и NOT.&lt;br /&gt;
# Нацртати дијаграм тока фаза формирања адресе и читања операнда и фазе извршавање инструкције.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;2. (К3) (20)&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Пројектовати део операционе јединице процесора која је потребна да се изврши (FETCH, ADDR и EXEC) инструкција &amp;lt;strong&amp;gt;NOT 000Dh&amp;lt;/strong&amp;gt;.&lt;br /&gt;
# Дати су почетни садржаји регистара и индикатора: PC=1000h, SP=3000h, ACC=0001h, R0=0002h, R1=030Ch, R2=10A2h, R3=FAE3h, N=0, Z=0, V=0 и C=0. Индикатори статусне речи на које инструкција не утиче треба да остану непромењени. Извршити 7 сукцесивних наредби и за сваку наредбу одредити следеће: у фази читања инструкције - меморијске адресе са којих је прочитана инструкција, садржај регистра IR, инструкцију која је прочитана и нови садржај регистра PC; у фази одређивања адресе операнда и читања операнда - меморијске адресе са којих је прочитана адреса операнда, меморијске адресе са којих је прочитан операнд, вредност операнда и нови садржај регистара опште намене који су у овој фази промењени; у фази извршавања операције - меморијске адресе којима се у овој фази приступа, садржај акумулатора A и индикатора N, Z, V и C након извршавања инструкције и нови садржај регистара и меморијских локација који су у овој фази промењени. Резултате представити у табелама 1, 2 и 3 формулара.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Садржај дела меморије из поставке задатка&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 000A || 000B || 000C || 000D || 000E || 000F || 0010 || 0011 || 0012 || 0013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  10  ||  01  ||  00  ||  C1  ||  21  ||  77  ||  11  ||  00  ||  0A  ||  83&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1000 || 1001 || 1002 || 1003 || 1004 || 1005 || 1006 || 1007 || 1008 || 1009&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  30  ||  20  ||  F0  ||  10  ||  06  ||  10  ||  00  ||  31  ||  00  ||  00&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 100A || 100B || 100C || 100D || 100E || 100F || 1010 || 1011 || 1012 || 1013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  13  ||  32  ||  00  ||  00  ||  13  ||  C0  ||  00  ||  10  ||  01  ||  52&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1014 || 1015 || 1016 || 1017 || 1018 || 1019 || 101A || 101B || 101C || 101D&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  22  ||  41  ||  F0  ||  00  ||  03  ||  E3  ||  21  ||  B8  ||  10  ||  13&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Решење ==&lt;br /&gt;
=== Кодови операција ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Класа инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Условни скок&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| colspan=&amp;quot;5&amp;quot; | Код операције&lt;br /&gt;
| Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Код операције&lt;br /&gt;
| Адресне инструкције&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Инструкција&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 2. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Условни скок&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JC&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JMP&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| JSR&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| PUSH&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| POP&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| RTS&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Адресне инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| LD&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| ST&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| NOT&amp;lt;br /&amp;gt;&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| LSL&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JADR&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR23..16&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Адресирање&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 23&lt;br /&gt;
| 22&lt;br /&gt;
| 21&lt;br /&gt;
| 20&lt;br /&gt;
| 19&amp;lt;br /&amp;gt;&lt;br /&gt;
| 18&amp;lt;br /&amp;gt;&lt;br /&gt;
| 17&lt;br /&gt;
| 16&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Мем. дир.&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. дир.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. инд.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| PC релативно&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Непосредно&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Операциона јединица ===&lt;br /&gt;
{{делимично решено}}&lt;br /&gt;
&lt;br /&gt;
=== Меморија ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Адресе у меморији са којих је учитана инструкција&lt;br /&gt;
! IR31..24&amp;lt;br /&amp;gt;&lt;br /&gt;
! IR23..16&lt;br /&gt;
! IR15..8&lt;br /&gt;
! IR7..0&lt;br /&gt;
! Инструкција&lt;br /&gt;
! PC&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1000, 1001&lt;br /&gt;
| 30&lt;br /&gt;
| 20&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| LD R0&amp;lt;br /&amp;gt;&lt;br /&gt;
| 1002&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| 1002, 1003, 1004&lt;br /&gt;
| F0&lt;br /&gt;
| 10&lt;br /&gt;
| 06&lt;br /&gt;
| &lt;br /&gt;
| JMP 1006h&lt;br /&gt;
| 1005&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| 1006&lt;br /&gt;
| 00&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| PUSH&lt;br /&gt;
| 1007&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| 1007, 1008, 1009, 100A&lt;br /&gt;
| 31&lt;br /&gt;
| 00&lt;br /&gt;
| 00&lt;br /&gt;
| 13&lt;br /&gt;
| ST 0013h&lt;br /&gt;
| 100B&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| 100B, 100C, 100D, 100E&lt;br /&gt;
| 32&lt;br /&gt;
| 00&lt;br /&gt;
| 00&lt;br /&gt;
| 13&lt;br /&gt;
| NOT 0013h&lt;br /&gt;
| 100F&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| 100F, 1010, 1011&lt;br /&gt;
| C0&lt;br /&gt;
| 00&lt;br /&gt;
| 10&lt;br /&gt;
| &lt;br /&gt;
| JC 0010h&lt;br /&gt;
| 1012&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| 1012&lt;br /&gt;
| 01&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| POP&lt;br /&gt;
| 1013&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Адресе у меморији или регистри&amp;lt;br /&amp;gt;са којих је учитана адреса операнда&lt;br /&gt;
! Адресе у меморији или регистри &amp;lt;br /&amp;gt;са којих је учитан операнд&lt;br /&gt;
! Операнд&lt;br /&gt;
! Нови садржај регистара опште намене&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| 0002&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| &lt;br /&gt;
| 0013, 0014&lt;br /&gt;
| 0002&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Меморијске адресе којима се &amp;lt;br /&amp;gt;приступа у овој фази&lt;br /&gt;
! Акумулатор&amp;lt;br /&amp;gt;&lt;br /&gt;
! N&lt;br /&gt;
! Z&lt;br /&gt;
! V&lt;br /&gt;
! C&lt;br /&gt;
! Нови садржај регистара и меморијских локација&amp;lt;br /&amp;gt;који су промењени у овој фази&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| &lt;br /&gt;
| 0002&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| &lt;br /&gt;
| 0002&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| PC = 1006&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| 3000, 3001&lt;br /&gt;
| 0002&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| MEM[3000] = 00, MEM[3001] = 02, SP = 3002&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| &lt;br /&gt;
| 0002&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| MEM[0013] = 00, MEM[0014] = 02&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| &lt;br /&gt;
| FFFD&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| &lt;br /&gt;
| FFFD&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| 3001, 3000&lt;br /&gt;
| 0002&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| SP = 3000&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категорија:ОРТ2]]&lt;br /&gt;
[[Категорија:Рокови]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%88%D1%83%D0%BB_2021&amp;diff=2643</id>
		<title>ОРТ2/Јул 2021</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%88%D1%83%D0%BB_2021&amp;diff=2643"/>
		<updated>2021-07-06T00:48:24Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Операциона јединица */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
{{нерешено}}&lt;br /&gt;
&lt;br /&gt;
== Поставка ==&lt;br /&gt;
&lt;br /&gt;
Посматра се део рачунара који чине меморија и процесор. Меморија је капацитета 2&amp;lt;sup&amp;gt;16&amp;lt;/sup&amp;gt; бајтова. Ширина меморијске речи је 1 бајт. Процесор је са једноадресним форматом инструкција.Адресе и подаци су дужине 16 бита и заузимају по две суседне меморијске локације, при чему се старији бајт налази на нижој, а млађи бајт на вишој адреси.&lt;br /&gt;
&lt;br /&gt;
У процесору постоји регистар програмског бројача PC дужине 2 бајта, адресни регистар меморије MAR дужине 2 бајта, прихватни регистар податка меморије MDR дужине 1 бајт, прихватни регистар инструкције IR дужине 4 бајта, акумулатор A дужине 2 бајта, прихватни регистар податка B дужине 2 бајта, регистри опште намене R0 до R31 дужине 2 бајта, програмска статусна реч PSW дужине 1 бајт. Инструкције су дужине 1, 2, 3 или 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Битови 7 и 6 првог бајта инструкције су 11 за све инструкције скока. Код инструкција условног скока битови 5 и 4 првог бајта инструкције су 00, док код инструкција безусловног скока битови 5 и 4 првог бајта инструкције су 11. Инструкција условног скока је инструкција условног скока уколико постоји пренос/позајмица (JC), а инструкције безусловног скока су инструкција безусловног скока (JMP) и инструкција скока на потпрограм (JSR). Битовима 3 до 0 првог бајта инструкције специфира се код операције и на основу тога су за инструкције JC, JMP и JSR усвојени кодови операције 11000000, 11110000 и 11110001, респективно. Инструкције JC, JMP и JSR се реализују као апсолутни скокови, при чему је адреса дата другим и трећим бајтом инструкције. Дужина инструкција је 3 бајта.&lt;br /&gt;
&lt;br /&gt;
Битови 7 и 6 првог бајта инструкције су 00 за све адресне и безадресне инструкције.&lt;br /&gt;
&lt;br /&gt;
Бит 5 првог бајта инструкције је 0 за безадресне инструкције. Безадресне инструкције су инструкције стављања садржаја акумулатора на стек (PUSH), пуњења акумулатора садржајем са стека (POP) и повратка из потпрограма (RTS). Битовима 4 до 0 првог бајта инструкције специфицира се код операције за безадресне инструкције. На основу тога су за инструкције PUSH, POP и RTS усвојени кодови операција 00000000, 00000001 и 00000011, респективно. Дужина инструкција је 1 бајт.&lt;br /&gt;
&lt;br /&gt;
Битови 5 и 4 првог бајта инструкције су 11 за адресне инструкције. Адресне инструкције су инструкција преноса у акумулатор (LD), инструкција преноса из акумулатора (ST), логичка инструкција комплементирања операнда која смешта резултат у акумулатор (NOT), инструкција логичког померања операнда једно место улево која смешта резултат у акумулатор (LSL) и инструкција безусловног скока на срачунату адресу (JADR). Битовима 3 до 0 првог бајта инструкције специфицира се код операције за адресне инструкције. На основу тога су за инструкције LD, ST, NOT, LSL и JADR усвојени кодови операција 00110000, 00110001, 00110010, 00110011 и 00110100 респективно. Дужина инструкција је 2 или 4 бајта и зависи од специфицираног начина адресирања.&lt;br /&gt;
&lt;br /&gt;
Начини адресирања су специфицирани битовима 7, 6 и 5 другог бајта инструкције и то на следећи начин: 000-меморијско директно адресирање (memdir), 001-регистарско директно адресирање (regdir), 010-регистарско индиректно (regind), 011-релативно адресирање са померајем (pcrel), и 100-непосредно адресирање (immed). Код меморијског директног адресирања 16 битна адреса меморијске локације је дата трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код регистарског директног и регистарског индиректног адресирања, користи се неки од регистара опште намене R0 до R31 специфицираних битовима од 4 до 0 другог бајта. Дужина инструкција је 2 бајта. Код релативног адресирања са померајем трећи и четврти бајт инструкције садрже 16 битни померај који је дат као целобројна величина без знака. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код непосредног адресирања 16 битни операнд дат је трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Стек расте према вишим меморијским локацијама, а регистар SP указује на прву слободну меморијску локацију. Процесор нема могућност обраде прекида&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;1. (К2) (20)&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Написати израз за генерисање сигнала gradr који је активан уколико прочитана инструкција има грешку при адресирању.&lt;br /&gt;
# Написати изразе за генерисање сигнала свих начина адресирања. IR регистар се попуњава од виших ка нижим битовима.&lt;br /&gt;
# Написати изразе за генерисање сигнала операција и то само за JC и NOT.&lt;br /&gt;
# Нацртати дијаграм тока фаза формирања адресе и читања операнда и фазе извршавање инструкције.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;2. (К3) (20)&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Пројектовати део операционе јединице процесора која је потребна да се изврши (FETCH, ADDR и EXEC) инструкција &amp;lt;strong&amp;gt;NOT 000Dh&amp;lt;/strong&amp;gt;.&lt;br /&gt;
# Дати су почетни садржаји регистара и индикатора: PC=1000h, SP=3000h, ACC=0001h, R0=0002h, R1=030Ch, R2=10A2h, R3=FAE3h, N=0, Z=0, V=0 и C=0. Индикатори статусне речи на које инструкција не утиче треба да остану непромењени. Извршити 7 сукцесивних наредби и за сваку наредбу одредити следеће: у фази читања инструкције - меморијске адресе са којих је прочитана инструкција, садржај регистра IR, инструкцију која је прочитана и нови садржај регистра PC; у фази одређивања адресе операнда и читања операнда - меморијске адресе са којих је прочитана адреса операнда, меморијске адресе са којих је прочитан операнд, вредност операнда и нови садржај регистара опште намене који су у овој фази промењени; у фази извршавања операције - меморијске адресе којима се у овој фази приступа, садржај акумулатора A и индикатора N, Z, V и C након извршавања инструкције и нови садржај регистара и меморијских локација који су у овој фази промењени. Резултате представити у табелама 1, 2 и 3 формулара.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Садржај дела меморије из поставке задатка&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 000A || 000B || 000C || 000D || 000E || 000F || 0010 || 0011 || 0012 || 0013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  10  ||  01  ||  00  ||  C1  ||  21  ||  77  ||  11  ||  00  ||  0A  ||  83&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1000 || 1001 || 1002 || 1003 || 1004 || 1005 || 1006 || 1007 || 1008 || 1009&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  30  ||  20  ||  F0  ||  10  ||  06  ||  10  ||  00  ||  31  ||  00  ||  00&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 100A || 100B || 100C || 100D || 100E || 100F || 1010 || 1011 || 1012 || 1013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  13  ||  32  ||  00  ||  00  ||  13  ||  C0  ||  00  ||  10  ||  01  ||  52&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1014 || 1015 || 1016 || 1017 || 1018 || 1019 || 101A || 101B || 101C || 101D&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  22  ||  41  ||  F0  ||  00  ||  03  ||  E3  ||  21  ||  B8  ||  10  ||  13&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Решење ==&lt;br /&gt;
=== Кодови операција ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Класа инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Условни скок&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| colspan=&amp;quot;5&amp;quot; | Код операције&lt;br /&gt;
| Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Код операције&lt;br /&gt;
| Адресне инструкције&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Инструкција&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 2. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Условни скок&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JC&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JMP&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| JSR&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| PUSH&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| POP&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| RTS&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Адресне инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| LD&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| ST&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| NOT&amp;lt;br /&amp;gt;&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| LSL&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JADR&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR23..16&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Адресирање&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 23&lt;br /&gt;
| 22&lt;br /&gt;
| 21&lt;br /&gt;
| 20&lt;br /&gt;
| 19&amp;lt;br /&amp;gt;&lt;br /&gt;
| 18&amp;lt;br /&amp;gt;&lt;br /&gt;
| 17&lt;br /&gt;
| 16&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Мем. дир.&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. дир.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. инд.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| PC релативно&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Непосредно&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Операциона јединица ===&lt;br /&gt;
&lt;br /&gt;
=== Меморија ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Адресе у меморији са којих је учитана инструкција&lt;br /&gt;
! IR31..24&amp;lt;br /&amp;gt;&lt;br /&gt;
! IR23..16&lt;br /&gt;
! IR15..8&lt;br /&gt;
! IR7..0&lt;br /&gt;
! Инструкција&lt;br /&gt;
! PC&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1000, 1001&lt;br /&gt;
| 30&lt;br /&gt;
| 20&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| LD R0&amp;lt;br /&amp;gt;&lt;br /&gt;
| 1002&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| 1002, 1003, 1004&lt;br /&gt;
| F0&lt;br /&gt;
| 10&lt;br /&gt;
| 06&lt;br /&gt;
| &lt;br /&gt;
| JMP 1006h&lt;br /&gt;
| 1005&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| 1006&lt;br /&gt;
| 00&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| PUSH&lt;br /&gt;
| 1007&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| 1007, 1008, 1009, 100A&lt;br /&gt;
| 31&lt;br /&gt;
| 00&lt;br /&gt;
| 00&lt;br /&gt;
| 13&lt;br /&gt;
| ST 0013h&lt;br /&gt;
| 100B&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| 100B, 100C, 100D, 100E&lt;br /&gt;
| 32&lt;br /&gt;
| 00&lt;br /&gt;
| 00&lt;br /&gt;
| 13&lt;br /&gt;
| NOT 0013h&lt;br /&gt;
| 100F&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| 100F, 1010, 1011&lt;br /&gt;
| C0&lt;br /&gt;
| 00&lt;br /&gt;
| 10&lt;br /&gt;
| &lt;br /&gt;
| JC 0010h&lt;br /&gt;
| 1012&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| 1012&lt;br /&gt;
| 01&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| POP&lt;br /&gt;
| 1013&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Адресе у меморији или регистри&amp;lt;br /&amp;gt;са којих је учитана адреса операнда&lt;br /&gt;
! Адресе у меморији или регистри &amp;lt;br /&amp;gt;са којих је учитан операнд&lt;br /&gt;
! Операнд&lt;br /&gt;
! Нови садржај регистара опште намене&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| 0002&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| &lt;br /&gt;
| 0013, 0014&lt;br /&gt;
| 0002&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Меморијске адресе којима се &amp;lt;br /&amp;gt;приступа у овој фази&lt;br /&gt;
! Акумулатор&amp;lt;br /&amp;gt;&lt;br /&gt;
! N&lt;br /&gt;
! Z&lt;br /&gt;
! V&lt;br /&gt;
! C&lt;br /&gt;
! Нови садржај регистара и меморијских локација&amp;lt;br /&amp;gt;који су промењени у овој фази&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| &lt;br /&gt;
| 0002&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| &lt;br /&gt;
| 0002&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| PC = 1006&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| 3000, 3001&lt;br /&gt;
| 0002&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| MEM[3000] = 00, MEM[3001] = 02, SP = 3002&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| &lt;br /&gt;
| 0002&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| MEM[0013] = 00, MEM[0014] = 02&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| &lt;br /&gt;
| FFFD&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| &lt;br /&gt;
| FFFD&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| 3001, 3000&lt;br /&gt;
| 0002&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| SP = 3000&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категорија:ОРТ2]]&lt;br /&gt;
[[Категорија:Рокови]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%88%D1%83%D0%BB_2021&amp;diff=2642</id>
		<title>ОРТ2/Јул 2021</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%88%D1%83%D0%BB_2021&amp;diff=2642"/>
		<updated>2021-07-06T00:46:48Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Решење  - Меморија цела - проверити, чекам рез*/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
{{нерешено}}&lt;br /&gt;
&lt;br /&gt;
== Поставка ==&lt;br /&gt;
&lt;br /&gt;
Посматра се део рачунара који чине меморија и процесор. Меморија је капацитета 2&amp;lt;sup&amp;gt;16&amp;lt;/sup&amp;gt; бајтова. Ширина меморијске речи је 1 бајт. Процесор је са једноадресним форматом инструкција.Адресе и подаци су дужине 16 бита и заузимају по две суседне меморијске локације, при чему се старији бајт налази на нижој, а млађи бајт на вишој адреси.&lt;br /&gt;
&lt;br /&gt;
У процесору постоји регистар програмског бројача PC дужине 2 бајта, адресни регистар меморије MAR дужине 2 бајта, прихватни регистар податка меморије MDR дужине 1 бајт, прихватни регистар инструкције IR дужине 4 бајта, акумулатор A дужине 2 бајта, прихватни регистар податка B дужине 2 бајта, регистри опште намене R0 до R31 дужине 2 бајта, програмска статусна реч PSW дужине 1 бајт. Инструкције су дужине 1, 2, 3 или 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Битови 7 и 6 првог бајта инструкције су 11 за све инструкције скока. Код инструкција условног скока битови 5 и 4 првог бајта инструкције су 00, док код инструкција безусловног скока битови 5 и 4 првог бајта инструкције су 11. Инструкција условног скока је инструкција условног скока уколико постоји пренос/позајмица (JC), а инструкције безусловног скока су инструкција безусловног скока (JMP) и инструкција скока на потпрограм (JSR). Битовима 3 до 0 првог бајта инструкције специфира се код операције и на основу тога су за инструкције JC, JMP и JSR усвојени кодови операције 11000000, 11110000 и 11110001, респективно. Инструкције JC, JMP и JSR се реализују као апсолутни скокови, при чему је адреса дата другим и трећим бајтом инструкције. Дужина инструкција је 3 бајта.&lt;br /&gt;
&lt;br /&gt;
Битови 7 и 6 првог бајта инструкције су 00 за све адресне и безадресне инструкције.&lt;br /&gt;
&lt;br /&gt;
Бит 5 првог бајта инструкције је 0 за безадресне инструкције. Безадресне инструкције су инструкције стављања садржаја акумулатора на стек (PUSH), пуњења акумулатора садржајем са стека (POP) и повратка из потпрограма (RTS). Битовима 4 до 0 првог бајта инструкције специфицира се код операције за безадресне инструкције. На основу тога су за инструкције PUSH, POP и RTS усвојени кодови операција 00000000, 00000001 и 00000011, респективно. Дужина инструкција је 1 бајт.&lt;br /&gt;
&lt;br /&gt;
Битови 5 и 4 првог бајта инструкције су 11 за адресне инструкције. Адресне инструкције су инструкција преноса у акумулатор (LD), инструкција преноса из акумулатора (ST), логичка инструкција комплементирања операнда која смешта резултат у акумулатор (NOT), инструкција логичког померања операнда једно место улево која смешта резултат у акумулатор (LSL) и инструкција безусловног скока на срачунату адресу (JADR). Битовима 3 до 0 првог бајта инструкције специфицира се код операције за адресне инструкције. На основу тога су за инструкције LD, ST, NOT, LSL и JADR усвојени кодови операција 00110000, 00110001, 00110010, 00110011 и 00110100 респективно. Дужина инструкција је 2 или 4 бајта и зависи од специфицираног начина адресирања.&lt;br /&gt;
&lt;br /&gt;
Начини адресирања су специфицирани битовима 7, 6 и 5 другог бајта инструкције и то на следећи начин: 000-меморијско директно адресирање (memdir), 001-регистарско директно адресирање (regdir), 010-регистарско индиректно (regind), 011-релативно адресирање са померајем (pcrel), и 100-непосредно адресирање (immed). Код меморијског директног адресирања 16 битна адреса меморијске локације је дата трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код регистарског директног и регистарског индиректног адресирања, користи се неки од регистара опште намене R0 до R31 специфицираних битовима од 4 до 0 другог бајта. Дужина инструкција је 2 бајта. Код релативног адресирања са померајем трећи и четврти бајт инструкције садрже 16 битни померај који је дат као целобројна величина без знака. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код непосредног адресирања 16 битни операнд дат је трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Стек расте према вишим меморијским локацијама, а регистар SP указује на прву слободну меморијску локацију. Процесор нема могућност обраде прекида&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;1. (К2) (20)&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Написати израз за генерисање сигнала gradr који је активан уколико прочитана инструкција има грешку при адресирању.&lt;br /&gt;
# Написати изразе за генерисање сигнала свих начина адресирања. IR регистар се попуњава од виших ка нижим битовима.&lt;br /&gt;
# Написати изразе за генерисање сигнала операција и то само за JC и NOT.&lt;br /&gt;
# Нацртати дијаграм тока фаза формирања адресе и читања операнда и фазе извршавање инструкције.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;2. (К3) (20)&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Пројектовати део операционе јединице процесора која је потребна да се изврши (FETCH, ADDR и EXEC) инструкција &amp;lt;strong&amp;gt;NOT 000Dh&amp;lt;/strong&amp;gt;.&lt;br /&gt;
# Дати су почетни садржаји регистара и индикатора: PC=1000h, SP=3000h, ACC=0001h, R0=0002h, R1=030Ch, R2=10A2h, R3=FAE3h, N=0, Z=0, V=0 и C=0. Индикатори статусне речи на које инструкција не утиче треба да остану непромењени. Извршити 7 сукцесивних наредби и за сваку наредбу одредити следеће: у фази читања инструкције - меморијске адресе са којих је прочитана инструкција, садржај регистра IR, инструкцију која је прочитана и нови садржај регистра PC; у фази одређивања адресе операнда и читања операнда - меморијске адресе са којих је прочитана адреса операнда, меморијске адресе са којих је прочитан операнд, вредност операнда и нови садржај регистара опште намене који су у овој фази промењени; у фази извршавања операције - меморијске адресе којима се у овој фази приступа, садржај акумулатора A и индикатора N, Z, V и C након извршавања инструкције и нови садржај регистара и меморијских локација који су у овој фази промењени. Резултате представити у табелама 1, 2 и 3 формулара.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Садржај дела меморије из поставке задатка&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 000A || 000B || 000C || 000D || 000E || 000F || 0010 || 0011 || 0012 || 0013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  10  ||  01  ||  00  ||  C1  ||  21  ||  77  ||  11  ||  00  ||  0A  ||  83&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1000 || 1001 || 1002 || 1003 || 1004 || 1005 || 1006 || 1007 || 1008 || 1009&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  30  ||  20  ||  F0  ||  10  ||  06  ||  10  ||  00  ||  31  ||  00  ||  00&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 100A || 100B || 100C || 100D || 100E || 100F || 1010 || 1011 || 1012 || 1013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  13  ||  32  ||  00  ||  00  ||  13  ||  C0  ||  00  ||  10  ||  01  ||  52&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1014 || 1015 || 1016 || 1017 || 1018 || 1019 || 101A || 101B || 101C || 101D&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  22  ||  41  ||  F0  ||  00  ||  03  ||  E3  ||  21  ||  B8  ||  10  ||  13&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Решење ==&lt;br /&gt;
=== Кодови операција ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Класа инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Условни скок&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| colspan=&amp;quot;5&amp;quot; | Код операције&lt;br /&gt;
| Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Код операције&lt;br /&gt;
| Адресне инструкције&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Инструкција&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 2. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Условни скок&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JC&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JMP&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| JSR&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| PUSH&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| POP&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| RTS&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Адресне инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| LD&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| ST&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| NOT&amp;lt;br /&amp;gt;&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| LSL&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JADR&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR23..16&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Адресирање&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 23&lt;br /&gt;
| 22&lt;br /&gt;
| 21&lt;br /&gt;
| 20&lt;br /&gt;
| 19&amp;lt;br /&amp;gt;&lt;br /&gt;
| 18&amp;lt;br /&amp;gt;&lt;br /&gt;
| 17&lt;br /&gt;
| 16&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Мем. дир.&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. дир.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. инд.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| PC релативно&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Непосредно&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Операциона јединица ===&lt;br /&gt;
{{делимично решено}}&lt;br /&gt;
&lt;br /&gt;
=== Меморија ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Адресе у меморији са којих је учитана инструкција&lt;br /&gt;
! IR31..24&amp;lt;br /&amp;gt;&lt;br /&gt;
! IR23..16&lt;br /&gt;
! IR15..8&lt;br /&gt;
! IR7..0&lt;br /&gt;
! Инструкција&lt;br /&gt;
! PC&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1000, 1001&lt;br /&gt;
| 30&lt;br /&gt;
| 20&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| LD R0&amp;lt;br /&amp;gt;&lt;br /&gt;
| 1002&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| 1002, 1003, 1004&lt;br /&gt;
| F0&lt;br /&gt;
| 10&lt;br /&gt;
| 06&lt;br /&gt;
| &lt;br /&gt;
| JMP 1006h&lt;br /&gt;
| 1005&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| 1006&lt;br /&gt;
| 00&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| PUSH&lt;br /&gt;
| 1007&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| 1007, 1008, 1009, 100A&lt;br /&gt;
| 31&lt;br /&gt;
| 00&lt;br /&gt;
| 00&lt;br /&gt;
| 13&lt;br /&gt;
| ST 0013h&lt;br /&gt;
| 100B&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| 100B, 100C, 100D, 100E&lt;br /&gt;
| 32&lt;br /&gt;
| 00&lt;br /&gt;
| 00&lt;br /&gt;
| 13&lt;br /&gt;
| NOT 0013h&lt;br /&gt;
| 100F&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| 100F, 1010, 1011&lt;br /&gt;
| C0&lt;br /&gt;
| 00&lt;br /&gt;
| 10&lt;br /&gt;
| &lt;br /&gt;
| JC 0010h&lt;br /&gt;
| 1012&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| 1012&lt;br /&gt;
| 01&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| POP&lt;br /&gt;
| 1013&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Адресе у меморији или регистри&amp;lt;br /&amp;gt;са којих је учитана адреса операнда&lt;br /&gt;
! Адресе у меморији или регистри &amp;lt;br /&amp;gt;са којих је учитан операнд&lt;br /&gt;
! Операнд&lt;br /&gt;
! Нови садржај регистара опште намене&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| 0002&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| &lt;br /&gt;
| 0013, 0014&lt;br /&gt;
| 0002&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Меморијске адресе којима се &amp;lt;br /&amp;gt;приступа у овој фази&lt;br /&gt;
! Акумулатор&amp;lt;br /&amp;gt;&lt;br /&gt;
! N&lt;br /&gt;
! Z&lt;br /&gt;
! V&lt;br /&gt;
! C&lt;br /&gt;
! Нови садржај регистара и меморијских локација&amp;lt;br /&amp;gt;који су промењени у овој фази&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| &lt;br /&gt;
| 0002&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| &lt;br /&gt;
| 0002&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| PC = 1006&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| 3000, 3001&lt;br /&gt;
| 0002&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| MEM[3000] = 00, MEM[3001] = 02, SP = 3002&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| &lt;br /&gt;
| 0002&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| MEM[0013] = 00, MEM[0014] = 02&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| &lt;br /&gt;
| FFFD&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| &lt;br /&gt;
| FFFD&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| 3001, 3000&lt;br /&gt;
| 0002&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| SP = 3000&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категорија:ОРТ2]]&lt;br /&gt;
[[Категорија:Рокови]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%88%D1%83%D0%BB_2021&amp;diff=2641</id>
		<title>ОРТ2/Јул 2021</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%88%D1%83%D0%BB_2021&amp;diff=2641"/>
		<updated>2021-07-06T00:28:10Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Решење */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
{{нерешено}}&lt;br /&gt;
&lt;br /&gt;
== Поставка ==&lt;br /&gt;
&lt;br /&gt;
Посматра се део рачунара који чине меморија и процесор. Меморија је капацитета 2&amp;lt;sup&amp;gt;16&amp;lt;/sup&amp;gt; бајтова. Ширина меморијске речи је 1 бајт. Процесор је са једноадресним форматом инструкција.Адресе и подаци су дужине 16 бита и заузимају по две суседне меморијске локације, при чему се старији бајт налази на нижој, а млађи бајт на вишој адреси.&lt;br /&gt;
&lt;br /&gt;
У процесору постоји регистар програмског бројача PC дужине 2 бајта, адресни регистар меморије MAR дужине 2 бајта, прихватни регистар податка меморије MDR дужине 1 бајт, прихватни регистар инструкције IR дужине 4 бајта, акумулатор A дужине 2 бајта, прихватни регистар податка B дужине 2 бајта, регистри опште намене R0 до R31 дужине 2 бајта, програмска статусна реч PSW дужине 1 бајт. Инструкције су дужине 1, 2, 3 или 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Битови 7 и 6 првог бајта инструкције су 11 за све инструкције скока. Код инструкција условног скока битови 5 и 4 првог бајта инструкције су 00, док код инструкција безусловног скока битови 5 и 4 првог бајта инструкције су 11. Инструкција условног скока је инструкција условног скока уколико постоји пренос/позајмица (JC), а инструкције безусловног скока су инструкција безусловног скока (JMP) и инструкција скока на потпрограм (JSR). Битовима 3 до 0 првог бајта инструкције специфира се код операције и на основу тога су за инструкције JC, JMP и JSR усвојени кодови операције 11000000, 11110000 и 11110001, респективно. Инструкције JC, JMP и JSR се реализују као апсолутни скокови, при чему је адреса дата другим и трећим бајтом инструкције. Дужина инструкција је 3 бајта.&lt;br /&gt;
&lt;br /&gt;
Битови 7 и 6 првог бајта инструкције су 00 за све адресне и безадресне инструкције.&lt;br /&gt;
&lt;br /&gt;
Бит 5 првог бајта инструкције је 0 за безадресне инструкције. Безадресне инструкције су инструкције стављања садржаја акумулатора на стек (PUSH), пуњења акумулатора садржајем са стека (POP) и повратка из потпрограма (RTS). Битовима 4 до 0 првог бајта инструкције специфицира се код операције за безадресне инструкције. На основу тога су за инструкције PUSH, POP и RTS усвојени кодови операција 00000000, 00000001 и 00000011, респективно. Дужина инструкција је 1 бајт.&lt;br /&gt;
&lt;br /&gt;
Битови 5 и 4 првог бајта инструкције су 11 за адресне инструкције. Адресне инструкције су инструкција преноса у акумулатор (LD), инструкција преноса из акумулатора (ST), логичка инструкција комплементирања операнда која смешта резултат у акумулатор (NOT), инструкција логичког померања операнда једно место улево која смешта резултат у акумулатор (LSL) и инструкција безусловног скока на срачунату адресу (JADR). Битовима 3 до 0 првог бајта инструкције специфицира се код операције за адресне инструкције. На основу тога су за инструкције LD, ST, NOT, LSL и JADR усвојени кодови операција 00110000, 00110001, 00110010, 00110011 и 00110100 респективно. Дужина инструкција је 2 или 4 бајта и зависи од специфицираног начина адресирања.&lt;br /&gt;
&lt;br /&gt;
Начини адресирања су специфицирани битовима 7, 6 и 5 другог бајта инструкције и то на следећи начин: 000-меморијско директно адресирање (memdir), 001-регистарско директно адресирање (regdir), 010-регистарско индиректно (regind), 011-релативно адресирање са померајем (pcrel), и 100-непосредно адресирање (immed). Код меморијског директног адресирања 16 битна адреса меморијске локације је дата трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код регистарског директног и регистарског индиректног адресирања, користи се неки од регистара опште намене R0 до R31 специфицираних битовима од 4 до 0 другог бајта. Дужина инструкција је 2 бајта. Код релативног адресирања са померајем трећи и четврти бајт инструкције садрже 16 битни померај који је дат као целобројна величина без знака. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код непосредног адресирања 16 битни операнд дат је трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Стек расте према вишим меморијским локацијама, а регистар SP указује на прву слободну меморијску локацију. Процесор нема могућност обраде прекида&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;1. (К2) (20)&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Написати израз за генерисање сигнала gradr који је активан уколико прочитана инструкција има грешку при адресирању.&lt;br /&gt;
# Написати изразе за генерисање сигнала свих начина адресирања. IR регистар се попуњава од виших ка нижим битовима.&lt;br /&gt;
# Написати изразе за генерисање сигнала операција и то само за JC и NOT.&lt;br /&gt;
# Нацртати дијаграм тока фаза формирања адресе и читања операнда и фазе извршавање инструкције.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;2. (К3) (20)&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Пројектовати део операционе јединице процесора која је потребна да се изврши (FETCH, ADDR и EXEC) инструкција &amp;lt;strong&amp;gt;NOT 000Dh&amp;lt;/strong&amp;gt;.&lt;br /&gt;
# Дати су почетни садржаји регистара и индикатора: PC=1000h, SP=3000h, ACC=0001h, R0=0002h, R1=030Ch, R2=10A2h, R3=FAE3h, N=0, Z=0, V=0 и C=0. Индикатори статусне речи на које инструкција не утиче треба да остану непромењени. Извршити 7 сукцесивних наредби и за сваку наредбу одредити следеће: у фази читања инструкције - меморијске адресе са којих је прочитана инструкција, садржај регистра IR, инструкцију која је прочитана и нови садржај регистра PC; у фази одређивања адресе операнда и читања операнда - меморијске адресе са којих је прочитана адреса операнда, меморијске адресе са којих је прочитан операнд, вредност операнда и нови садржај регистара опште намене који су у овој фази промењени; у фази извршавања операције - меморијске адресе којима се у овој фази приступа, садржај акумулатора A и индикатора N, Z, V и C након извршавања инструкције и нови садржај регистара и меморијских локација који су у овој фази промењени. Резултате представити у табелама 1, 2 и 3 формулара.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Садржај дела меморије из поставке задатка&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 000A || 000B || 000C || 000D || 000E || 000F || 0010 || 0011 || 0012 || 0013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  10  ||  01  ||  00  ||  C1  ||  21  ||  77  ||  11  ||  00  ||  0A  ||  83&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1000 || 1001 || 1002 || 1003 || 1004 || 1005 || 1006 || 1007 || 1008 || 1009&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  30  ||  20  ||  F0  ||  10  ||  06  ||  10  ||  00  ||  31  ||  00  ||  00&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 100A || 100B || 100C || 100D || 100E || 100F || 1010 || 1011 || 1012 || 1013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  13  ||  32  ||  00  ||  00  ||  13  ||  C0  ||  00  ||  10  ||  01  ||  52&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1014 || 1015 || 1016 || 1017 || 1018 || 1019 || 101A || 101B || 101C || 101D&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  22  ||  41  ||  F0  ||  00  ||  03  ||  E3  ||  21  ||  B8  ||  10  ||  13&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Решење ==&lt;br /&gt;
=== Кодови операција ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Класа инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Условни скок&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| colspan=&amp;quot;5&amp;quot; | Код операције&lt;br /&gt;
| Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Код операције&lt;br /&gt;
| Адресне инструкције&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Инструкција&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 2. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Условни скок&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JC&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JMP&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| JSR&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| PUSH&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| POP&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| RTS&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Адресне инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| LD&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| ST&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| NOT&amp;lt;br /&amp;gt;&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| LSL&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JADR&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR23..16&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Адресирање&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 23&lt;br /&gt;
| 22&lt;br /&gt;
| 21&lt;br /&gt;
| 20&lt;br /&gt;
| 19&amp;lt;br /&amp;gt;&lt;br /&gt;
| 18&amp;lt;br /&amp;gt;&lt;br /&gt;
| 17&lt;br /&gt;
| 16&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Мем. дир.&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. дир.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. инд.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| PC релативно&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Непосредно&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Категорија:ОРТ2]]&lt;br /&gt;
[[Категорија:Рокови]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%88%D1%83%D0%BB_2021&amp;diff=2640</id>
		<title>ОРТ2/Јул 2021</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%88%D1%83%D0%BB_2021&amp;diff=2640"/>
		<updated>2021-07-06T00:25:45Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Решење - Кодови операција - табела*/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
{{нерешено}}&lt;br /&gt;
&lt;br /&gt;
== Поставка ==&lt;br /&gt;
&lt;br /&gt;
Посматра се део рачунара који чине меморија и процесор. Меморија је капацитета 2&amp;lt;sup&amp;gt;16&amp;lt;/sup&amp;gt; бајтова. Ширина меморијске речи је 1 бајт. Процесор је са једноадресним форматом инструкција.Адресе и подаци су дужине 16 бита и заузимају по две суседне меморијске локације, при чему се старији бајт налази на нижој, а млађи бајт на вишој адреси.&lt;br /&gt;
&lt;br /&gt;
У процесору постоји регистар програмског бројача PC дужине 2 бајта, адресни регистар меморије MAR дужине 2 бајта, прихватни регистар податка меморије MDR дужине 1 бајт, прихватни регистар инструкције IR дужине 4 бајта, акумулатор A дужине 2 бајта, прихватни регистар податка B дужине 2 бајта, регистри опште намене R0 до R31 дужине 2 бајта, програмска статусна реч PSW дужине 1 бајт. Инструкције су дужине 1, 2, 3 или 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Битови 7 и 6 првог бајта инструкције су 11 за све инструкције скока. Код инструкција условног скока битови 5 и 4 првог бајта инструкције су 00, док код инструкција безусловног скока битови 5 и 4 првог бајта инструкције су 11. Инструкција условног скока је инструкција условног скока уколико постоји пренос/позајмица (JC), а инструкције безусловног скока су инструкција безусловног скока (JMP) и инструкција скока на потпрограм (JSR). Битовима 3 до 0 првог бајта инструкције специфира се код операције и на основу тога су за инструкције JC, JMP и JSR усвојени кодови операције 11000000, 11110000 и 11110001, респективно. Инструкције JC, JMP и JSR се реализују као апсолутни скокови, при чему је адреса дата другим и трећим бајтом инструкције. Дужина инструкција је 3 бајта.&lt;br /&gt;
&lt;br /&gt;
Битови 7 и 6 првог бајта инструкције су 00 за све адресне и безадресне инструкције.&lt;br /&gt;
&lt;br /&gt;
Бит 5 првог бајта инструкције је 0 за безадресне инструкције. Безадресне инструкције су инструкције стављања садржаја акумулатора на стек (PUSH), пуњења акумулатора садржајем са стека (POP) и повратка из потпрограма (RTS). Битовима 4 до 0 првог бајта инструкције специфицира се код операције за безадресне инструкције. На основу тога су за инструкције PUSH, POP и RTS усвојени кодови операција 00000000, 00000001 и 00000011, респективно. Дужина инструкција је 1 бајт.&lt;br /&gt;
&lt;br /&gt;
Битови 5 и 4 првог бајта инструкције су 11 за адресне инструкције. Адресне инструкције су инструкција преноса у акумулатор (LD), инструкција преноса из акумулатора (ST), логичка инструкција комплементирања операнда која смешта резултат у акумулатор (NOT), инструкција логичког померања операнда једно место улево која смешта резултат у акумулатор (LSL) и инструкција безусловног скока на срачунату адресу (JADR). Битовима 3 до 0 првог бајта инструкције специфицира се код операције за адресне инструкције. На основу тога су за инструкције LD, ST, NOT, LSL и JADR усвојени кодови операција 00110000, 00110001, 00110010, 00110011 и 00110100 респективно. Дужина инструкција је 2 или 4 бајта и зависи од специфицираног начина адресирања.&lt;br /&gt;
&lt;br /&gt;
Начини адресирања су специфицирани битовима 7, 6 и 5 другог бајта инструкције и то на следећи начин: 000-меморијско директно адресирање (memdir), 001-регистарско директно адресирање (regdir), 010-регистарско индиректно (regind), 011-релативно адресирање са померајем (pcrel), и 100-непосредно адресирање (immed). Код меморијског директног адресирања 16 битна адреса меморијске локације је дата трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код регистарског директног и регистарског индиректног адресирања, користи се неки од регистара опште намене R0 до R31 специфицираних битовима од 4 до 0 другог бајта. Дужина инструкција је 2 бајта. Код релативног адресирања са померајем трећи и четврти бајт инструкције садрже 16 битни померај који је дат као целобројна величина без знака. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код непосредног адресирања 16 битни операнд дат је трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Стек расте према вишим меморијским локацијама, а регистар SP указује на прву слободну меморијску локацију. Процесор нема могућност обраде прекида&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;1. (К2) (20)&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Написати израз за генерисање сигнала gradr који је активан уколико прочитана инструкција има грешку при адресирању.&lt;br /&gt;
# Написати изразе за генерисање сигнала свих начина адресирања. IR регистар се попуњава од виших ка нижим битовима.&lt;br /&gt;
# Написати изразе за генерисање сигнала операција и то само за JC и NOT.&lt;br /&gt;
# Нацртати дијаграм тока фаза формирања адресе и читања операнда и фазе извршавање инструкције.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;2. (К3) (20)&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Пројектовати део операционе јединице процесора која је потребна да се изврши (FETCH, ADDR и EXEC) инструкција &amp;lt;strong&amp;gt;NOT 000Dh&amp;lt;/strong&amp;gt;.&lt;br /&gt;
# Дати су почетни садржаји регистара и индикатора: PC=1000h, SP=3000h, ACC=0001h, R0=0002h, R1=030Ch, R2=10A2h, R3=FAE3h, N=0, Z=0, V=0 и C=0. Индикатори статусне речи на које инструкција не утиче треба да остану непромењени. Извршити 7 сукцесивних наредби и за сваку наредбу одредити следеће: у фази читања инструкције - меморијске адресе са којих је прочитана инструкција, садржај регистра IR, инструкцију која је прочитана и нови садржај регистра PC; у фази одређивања адресе операнда и читања операнда - меморијске адресе са којих је прочитана адреса операнда, меморијске адресе са којих је прочитан операнд, вредност операнда и нови садржај регистара опште намене који су у овој фази промењени; у фази извршавања операције - меморијске адресе којима се у овој фази приступа, садржај акумулатора A и индикатора N, Z, V и C након извршавања инструкције и нови садржај регистара и меморијских локација који су у овој фази промењени. Резултате представити у табелама 1, 2 и 3 формулара.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Садржај дела меморије из поставке задатка&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 000A || 000B || 000C || 000D || 000E || 000F || 0010 || 0011 || 0012 || 0013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  10  ||  01  ||  00  ||  C1  ||  21  ||  77  ||  11  ||  00  ||  0A  ||  83&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1000 || 1001 || 1002 || 1003 || 1004 || 1005 || 1006 || 1007 || 1008 || 1009&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  30  ||  20  ||  F0  ||  10  ||  06  ||  10  ||  00  ||  31  ||  00  ||  00&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 100A || 100B || 100C || 100D || 100E || 100F || 1010 || 1011 || 1012 || 1013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  13  ||  32  ||  00  ||  00  ||  13  ||  C0  ||  00  ||  10  ||  01  ||  52&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1014 || 1015 || 1016 || 1017 || 1018 || 1019 || 101A || 101B || 101C || 101D&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  22  ||  41  ||  F0  ||  00  ||  03  ||  E3  ||  21  ||  B8  ||  10  ||  13&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Решење ==&lt;br /&gt;
== Решење ==&lt;br /&gt;
=== Кодови операција ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Класа инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Условни скок&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| colspan=&amp;quot;5&amp;quot; | Код операције&lt;br /&gt;
| Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Код операције&lt;br /&gt;
| Адресне инструкције&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Инструкција&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 2. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Условни скок&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JC&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JMP&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| JSR&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| PUSH&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| POP&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| RTS&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Адресне инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| LD&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| ST&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| NOT&amp;lt;br /&amp;gt;&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| LSL&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JADR&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR23..16&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Адресирање&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 23&lt;br /&gt;
| 22&lt;br /&gt;
| 21&lt;br /&gt;
| 20&lt;br /&gt;
| 19&amp;lt;br /&amp;gt;&lt;br /&gt;
| 18&amp;lt;br /&amp;gt;&lt;br /&gt;
| 17&lt;br /&gt;
| 16&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Мем. дир.&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. дир.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. инд.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| PC релативно&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Непосредно&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Категорија:ОРТ2]]&lt;br /&gt;
[[Категорија:Рокови]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%9A3_2021&amp;diff=2639</id>
		<title>ОРТ2/К3 2021</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%9A3_2021&amp;diff=2639"/>
		<updated>2021-07-06T00:03:36Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Меморија */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
&lt;br /&gt;
== Поставка ==&lt;br /&gt;
Посматра се део рачунара који чине меморија и процесор. Меморија је капацитета 2&amp;lt;sup&amp;gt;16&amp;lt;/sup&amp;gt; бајтова. Ширина меморијске речи је 1 бајт. Процесор је са једноадресним форматом инструкција. Адресе и подаци су дужине 16 бита и заузимају по две суседне меморијске локације, при чему се старији бајт налази на нижој, а млађи бајт на вишој адреси.&lt;br /&gt;
&lt;br /&gt;
У процесору постоји регистар програмског бројача PC дужине 2 бајта, адресни регистар меморије MAR дужине 2 бајта, прихватни регистар податка меморије MDR дужине 1 бајт, прихватни регистар инструкције IR дужине 4 бајта, акумулатор A дужине 2 бајта, прихватни регистар податка B дужине 2 бајта, регистри опште намене R0 до R15 дужине 2 бајта, програмска статусна реч PSW дужине 1 бајт. Инструкције су дужине 1, 2, 3 или 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Бит 7 првог бајта инструкције је 0 за све инструкције скока. Код инструкција условног скока бит 6 првог бајта инструкције је 0, док код инструкција безусловног скока бит 6 првог бајта инструкције је 1. Инструкција условног скока је инструкција условног скока уколико резултат није нула (JNZ), а инструкције безусловног скока су инструкција безусловног скока (JMP). Битовима 5 до 0 првог бајта инструкције специфицира се код операције и на основу тога су за инструкције JNZ и JMP усвојени кодови операције 00000000 и 01000000, респективно. Инструкције JNZ и JMP се реализују као апсолутни скокови, при чему је адреса дата другим и трећим бајтом инструкције. Дужина инструкција је 3 бајта.&lt;br /&gt;
&lt;br /&gt;
Бит 7 првог бајта инструкције је 1 за све адресне и безадресне инструкције.&lt;br /&gt;
&lt;br /&gt;
Битови 6 и 5 првог бајта инструкције су 01 за безадресне инструкције. Безадресне инструкције су инструкције стављања садржаја акумулатора на стек (PUSH), пуњења акумулатора садржајем са стека (POP) и декрементирање акумулатора (DEC). Битовима 4 до 0 првог бајта инструкције специфицира се код операције за безадресне инструкције. На основу тога су за инструкције PUSH, POP и DEC усвојени кодови операција 10100000, 10100001 и 10100010, респективно. Дужина инструкција је 1 бајт.&lt;br /&gt;
&lt;br /&gt;
Битови 6 и 5 првог бајта инструкције су 11 за адресне инструкције. Адресне инструкције су инструкција преноса у акумулатор (LD), инструкција преноса из акумулатора (ST), логичка инструкција &amp;quot;или&amp;quot; (OR), инструкција ротирања операнда једно место удесно која смешта резултат у акумулатор (ROR), инструкција безусловног скока на срачунату адресу (JADR), инструкција сабирања (ADD) и инструкција одузимања (SUB). Битовима 4 до 0 првог бајта инструкције специфицира се код операције за адресне инструкције. На основу тога су за инструкције LD, ST, OR, ROR, JADR, ADD и SUB усвојени кодови операција 11100000, 11100001, 11100010, 11100011, 11100100, 11100101 и 11100110 респективно. Дужина инструкција је 2 или 4 бајта и зависи од специфицираног начина адресирања.&lt;br /&gt;
&lt;br /&gt;
Начини адресирања су специфицирани битовима 7, 6 и 5 другог бајта инструкције и то на следећи начин: 000-меморијско директно адресирање (memdir), 001-регистарско индиректно адресирање (regind), 010-регистарско директно адресирање (regdir), 011-релативно адресирање са померајем (pcrel), 100-непосредно адресирање (immed) и 101-регистарско индиректно са померајем адресирање (regindpom). Код меморијског директног адресирања 16 битна адреса меморијске локације је дата трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Регистарско индиректно адресирање користи неке од регистара опште намене R0 до R15 специфициране битовима од 3 до 0 другог бајта. Бит 4 другог бајта инструкције се не користи. Дужина инструкција је 2 бајта. Регистарско директно адресирање користи неке од регистара опште намене R0 до R15 специфициране битовима од 3 до 0 другог бајта. Бит 4 другог бајта инструкције се не користи. Дужина инструкција је 2 бајта. Код релативног адресирања са померајем трећи и четврти бајт инструкције садрже 16 битни померај који је дат као целобројна величина са знаком. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код непосредног адресирања 16 битни операнд дат је трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код регистарског индиректног адресирања са померајем трећи и четврти бајт инструкције садрже 16 битни померај који је дат као целобројна величина са знаком. Један од регистара опште намене R0 до R15 који се користи специфициран је битовима од 3 до 0 другог бајта инструкције. Бит 4 другог бајта инструкције се не користи. Дужина инструкција је 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Стек расте према вишим меморијским локацијама, а регистар SP указује на последњу заузету меморијску локацију. Процесор нема могућност обраде прекида.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Пројектовати део операционе јединице процесора која је потребна да се изврши (FETCH + ADDR + EXEC) инструкција &#039;&#039;&#039;JADR (1234h)&#039;&#039;&#039;.&lt;br /&gt;
# Дати су почетни садржаји регистара и индикатора: PC=1000h, SP=2000h, ACC = 0002h, R0=00F2h, R1=000Ch, R2=00A2h, R3=FFE3h, N=0, Z=0, V=0 и C=0. Индикатори статусне речи на које инструкције не утиче треба да остану непромењени. Извршити 7 сукцесивних наредби и за сваку наредбу одредити следеће: у фази читања инструкције - меморијске адресе са којих је прочитана инструкција, садржај регистра IR, инструкцију која је прочитана и нови садржај регистра PC; у фази одређивања адресе операнда и читања операнда - меморијске адресе са којих је прочитана адреса операнда, меморијске адресе са којих је прочитан операнд, вредност операнда и нови садржај регистара опште намене који су у овој фази промењени; у фази извршавања операције - меморијске адресе којима се у овој фази приступа, садржај акумулатора A и индикатора N, Z, V и C након извршавања инструкције и нови садржај регистара и меморијских локација који су у овој фази промењени. Резултате представити у табелама 1, 2 и 3 формулара.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Садржај дела меморије из поставке задатка&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 000A || 000B || 000C || 000D || 000E || 000F || 0010 || 0011 || 0012 || 0013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  10  ||  01  ||  00  ||  C1  ||  21  ||  77  ||  11  ||  00  ||  0A  ||  83&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1000 || 1001 || 1002 || 1003 || 1004 || 1005 || 1006 || 1007 || 1008 || 1009&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  E0  ||  00  ||  00  ||  0A  ||  00  ||  10  ||  09  ||  10  ||  E8  ||  A2&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 100A || 100B || 100C || 100D || 100E || 100F || 1010 || 1011 || 1012 || 1013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  E2  ||  60  ||  00  ||  08  ||  A0  ||  40  ||  10  ||  19  ||  00  ||  52&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1014 || 1015 || 1016 || 1017 || 1018 || 1019 || 101A || 101B || 101C || 101D&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  21  ||  41  ||  F0  ||  00  ||  03  ||  E3  ||  21  ||  B8  ||  10  ||  13&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Решење ==&lt;br /&gt;
=== Кодови операција ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Класа инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| colspan=&amp;quot;6&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Условни скок&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;6&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;5&amp;quot; | Код операције&lt;br /&gt;
| Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;5&amp;quot; | Код операције&lt;br /&gt;
| Адресне инструкције&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Инструкција&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 2. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Условни скок&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JNZ&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JMP&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| PUSH&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| POP&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| DEC&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Адресне инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| LD&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| ST&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| OR&amp;lt;br /&amp;gt;&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| ROR&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JADR&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| ADD&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&amp;lt;br /&amp;gt;&lt;br /&gt;
| SUB&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR23..16&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Адресирање&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 23&lt;br /&gt;
| 22&lt;br /&gt;
| 21&lt;br /&gt;
| 20&lt;br /&gt;
| 19&amp;lt;br /&amp;gt;&lt;br /&gt;
| 18&amp;lt;br /&amp;gt;&lt;br /&gt;
| 17&lt;br /&gt;
| 16&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Мем. дир.&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. инд.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. дир.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| PC релативно&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Непосредно&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. инд. са пом.&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Операциона јединица ===&lt;br /&gt;
{{делимично решено}}&lt;br /&gt;
&lt;br /&gt;
=== Меморија ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Адресе у меморији са којих је учитана инструкција&lt;br /&gt;
! IR31..24&amp;lt;br /&amp;gt;&lt;br /&gt;
! IR23..16&lt;br /&gt;
! IR15..8&lt;br /&gt;
! IR7..0&lt;br /&gt;
! Инструкција&lt;br /&gt;
! PC&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1000, 1001, 1002, 1003&lt;br /&gt;
| E0&lt;br /&gt;
| 00&lt;br /&gt;
| 00&lt;br /&gt;
| 0A&lt;br /&gt;
| LD 000Ah&amp;lt;br /&amp;gt;&lt;br /&gt;
| 1004&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| 1004, 1005, 1006&lt;br /&gt;
| 00&lt;br /&gt;
| 10&lt;br /&gt;
| 09&lt;br /&gt;
| &lt;br /&gt;
| JNZ 1009h&lt;br /&gt;
| 1007&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| 1009&lt;br /&gt;
| A2&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| DEC&lt;br /&gt;
| 100A&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| 100A, 100B, 100C, 100D&lt;br /&gt;
| E2&lt;br /&gt;
| 60&lt;br /&gt;
| 00&lt;br /&gt;
| 08&lt;br /&gt;
| OR (PC+08h)&lt;br /&gt;
| 100E&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| 100E&lt;br /&gt;
| A0&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| PUSH&lt;br /&gt;
| 100F&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| 100F, 1010, 1011&lt;br /&gt;
| 40&lt;br /&gt;
| 10&lt;br /&gt;
| 19&lt;br /&gt;
| &lt;br /&gt;
| JMP 1019h&lt;br /&gt;
| 1012&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| 1019, 101A&lt;br /&gt;
| E3&lt;br /&gt;
| 21&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| ROR (R1)&lt;br /&gt;
| 101B&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Адресе у меморији или регистри&amp;lt;br /&amp;gt;са којих је учитана адреса операнда&lt;br /&gt;
! Адресе у меморији или регистри &amp;lt;br /&amp;gt;са којих је учитан операнд&lt;br /&gt;
! Операнд&lt;br /&gt;
! Нови садржај регистара опште намене&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| &lt;br /&gt;
| 000A, 000B&lt;br /&gt;
| 1001&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| &lt;br /&gt;
| 1017, 1018&lt;br /&gt;
| 0003&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| &lt;br /&gt;
| 000C, 000D&lt;br /&gt;
| 00C1&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Меморијске адресе којима се &amp;lt;br /&amp;gt;приступа у овој фази&lt;br /&gt;
! Акумулатор&amp;lt;br /&amp;gt;&lt;br /&gt;
! N&lt;br /&gt;
! Z&lt;br /&gt;
! V&lt;br /&gt;
! C&lt;br /&gt;
! Нови садржај регистара и меморијских локација&amp;lt;br /&amp;gt;који су промењени у овој фази&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| &lt;br /&gt;
| 1001&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| &lt;br /&gt;
| 1001&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| PC = 1009&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| &lt;br /&gt;
| 1000&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| &lt;br /&gt;
| 1003&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| 2001, 2002&lt;br /&gt;
| 1003&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| MEM[2001] = 10, MEM[2002] = 03&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| &lt;br /&gt;
| 1003&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| PC = 1019&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| &lt;br /&gt;
| 8060&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Категорија:ОРТ2]]&lt;br /&gt;
[[Категорија:Рокови]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%9A3_2021&amp;diff=2638</id>
		<title>ОРТ2/К3 2021</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%9A3_2021&amp;diff=2638"/>
		<updated>2021-07-06T00:01:25Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Меморија - трећа фаза - табела*/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
&lt;br /&gt;
== Поставка ==&lt;br /&gt;
Посматра се део рачунара који чине меморија и процесор. Меморија је капацитета 2&amp;lt;sup&amp;gt;16&amp;lt;/sup&amp;gt; бајтова. Ширина меморијске речи је 1 бајт. Процесор је са једноадресним форматом инструкција. Адресе и подаци су дужине 16 бита и заузимају по две суседне меморијске локације, при чему се старији бајт налази на нижој, а млађи бајт на вишој адреси.&lt;br /&gt;
&lt;br /&gt;
У процесору постоји регистар програмског бројача PC дужине 2 бајта, адресни регистар меморије MAR дужине 2 бајта, прихватни регистар податка меморије MDR дужине 1 бајт, прихватни регистар инструкције IR дужине 4 бајта, акумулатор A дужине 2 бајта, прихватни регистар податка B дужине 2 бајта, регистри опште намене R0 до R15 дужине 2 бајта, програмска статусна реч PSW дужине 1 бајт. Инструкције су дужине 1, 2, 3 или 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Бит 7 првог бајта инструкције је 0 за све инструкције скока. Код инструкција условног скока бит 6 првог бајта инструкције је 0, док код инструкција безусловног скока бит 6 првог бајта инструкције је 1. Инструкција условног скока је инструкција условног скока уколико резултат није нула (JNZ), а инструкције безусловног скока су инструкција безусловног скока (JMP). Битовима 5 до 0 првог бајта инструкције специфицира се код операције и на основу тога су за инструкције JNZ и JMP усвојени кодови операције 00000000 и 01000000, респективно. Инструкције JNZ и JMP се реализују као апсолутни скокови, при чему је адреса дата другим и трећим бајтом инструкције. Дужина инструкција је 3 бајта.&lt;br /&gt;
&lt;br /&gt;
Бит 7 првог бајта инструкције је 1 за све адресне и безадресне инструкције.&lt;br /&gt;
&lt;br /&gt;
Битови 6 и 5 првог бајта инструкције су 01 за безадресне инструкције. Безадресне инструкције су инструкције стављања садржаја акумулатора на стек (PUSH), пуњења акумулатора садржајем са стека (POP) и декрементирање акумулатора (DEC). Битовима 4 до 0 првог бајта инструкције специфицира се код операције за безадресне инструкције. На основу тога су за инструкције PUSH, POP и DEC усвојени кодови операција 10100000, 10100001 и 10100010, респективно. Дужина инструкција је 1 бајт.&lt;br /&gt;
&lt;br /&gt;
Битови 6 и 5 првог бајта инструкције су 11 за адресне инструкције. Адресне инструкције су инструкција преноса у акумулатор (LD), инструкција преноса из акумулатора (ST), логичка инструкција &amp;quot;или&amp;quot; (OR), инструкција ротирања операнда једно место удесно која смешта резултат у акумулатор (ROR), инструкција безусловног скока на срачунату адресу (JADR), инструкција сабирања (ADD) и инструкција одузимања (SUB). Битовима 4 до 0 првог бајта инструкције специфицира се код операције за адресне инструкције. На основу тога су за инструкције LD, ST, OR, ROR, JADR, ADD и SUB усвојени кодови операција 11100000, 11100001, 11100010, 11100011, 11100100, 11100101 и 11100110 респективно. Дужина инструкција је 2 или 4 бајта и зависи од специфицираног начина адресирања.&lt;br /&gt;
&lt;br /&gt;
Начини адресирања су специфицирани битовима 7, 6 и 5 другог бајта инструкције и то на следећи начин: 000-меморијско директно адресирање (memdir), 001-регистарско индиректно адресирање (regind), 010-регистарско директно адресирање (regdir), 011-релативно адресирање са померајем (pcrel), 100-непосредно адресирање (immed) и 101-регистарско индиректно са померајем адресирање (regindpom). Код меморијског директног адресирања 16 битна адреса меморијске локације је дата трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Регистарско индиректно адресирање користи неке од регистара опште намене R0 до R15 специфициране битовима од 3 до 0 другог бајта. Бит 4 другог бајта инструкције се не користи. Дужина инструкција је 2 бајта. Регистарско директно адресирање користи неке од регистара опште намене R0 до R15 специфициране битовима од 3 до 0 другог бајта. Бит 4 другог бајта инструкције се не користи. Дужина инструкција је 2 бајта. Код релативног адресирања са померајем трећи и четврти бајт инструкције садрже 16 битни померај који је дат као целобројна величина са знаком. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код непосредног адресирања 16 битни операнд дат је трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код регистарског индиректног адресирања са померајем трећи и четврти бајт инструкције садрже 16 битни померај који је дат као целобројна величина са знаком. Један од регистара опште намене R0 до R15 који се користи специфициран је битовима од 3 до 0 другог бајта инструкције. Бит 4 другог бајта инструкције се не користи. Дужина инструкција је 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Стек расте према вишим меморијским локацијама, а регистар SP указује на последњу заузету меморијску локацију. Процесор нема могућност обраде прекида.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Пројектовати део операционе јединице процесора која је потребна да се изврши (FETCH + ADDR + EXEC) инструкција &#039;&#039;&#039;JADR (1234h)&#039;&#039;&#039;.&lt;br /&gt;
# Дати су почетни садржаји регистара и индикатора: PC=1000h, SP=2000h, ACC = 0002h, R0=00F2h, R1=000Ch, R2=00A2h, R3=FFE3h, N=0, Z=0, V=0 и C=0. Индикатори статусне речи на које инструкције не утиче треба да остану непромењени. Извршити 7 сукцесивних наредби и за сваку наредбу одредити следеће: у фази читања инструкције - меморијске адресе са којих је прочитана инструкција, садржај регистра IR, инструкцију која је прочитана и нови садржај регистра PC; у фази одређивања адресе операнда и читања операнда - меморијске адресе са којих је прочитана адреса операнда, меморијске адресе са којих је прочитан операнд, вредност операнда и нови садржај регистара опште намене који су у овој фази промењени; у фази извршавања операције - меморијске адресе којима се у овој фази приступа, садржај акумулатора A и индикатора N, Z, V и C након извршавања инструкције и нови садржај регистара и меморијских локација који су у овој фази промењени. Резултате представити у табелама 1, 2 и 3 формулара.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Садржај дела меморије из поставке задатка&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 000A || 000B || 000C || 000D || 000E || 000F || 0010 || 0011 || 0012 || 0013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  10  ||  01  ||  00  ||  C1  ||  21  ||  77  ||  11  ||  00  ||  0A  ||  83&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1000 || 1001 || 1002 || 1003 || 1004 || 1005 || 1006 || 1007 || 1008 || 1009&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  E0  ||  00  ||  00  ||  0A  ||  00  ||  10  ||  09  ||  10  ||  E8  ||  A2&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 100A || 100B || 100C || 100D || 100E || 100F || 1010 || 1011 || 1012 || 1013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  E2  ||  60  ||  00  ||  08  ||  A0  ||  40  ||  10  ||  19  ||  00  ||  52&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1014 || 1015 || 1016 || 1017 || 1018 || 1019 || 101A || 101B || 101C || 101D&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  21  ||  41  ||  F0  ||  00  ||  03  ||  E3  ||  21  ||  B8  ||  10  ||  13&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Решење ==&lt;br /&gt;
=== Кодови операција ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Класа инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| colspan=&amp;quot;6&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Условни скок&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;6&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;5&amp;quot; | Код операције&lt;br /&gt;
| Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;5&amp;quot; | Код операције&lt;br /&gt;
| Адресне инструкције&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Инструкција&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 2. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Условни скок&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JNZ&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JMP&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| PUSH&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| POP&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| DEC&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Адресне инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| LD&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| ST&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| OR&amp;lt;br /&amp;gt;&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| ROR&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JADR&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| ADD&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&amp;lt;br /&amp;gt;&lt;br /&gt;
| SUB&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR23..16&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Адресирање&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 23&lt;br /&gt;
| 22&lt;br /&gt;
| 21&lt;br /&gt;
| 20&lt;br /&gt;
| 19&amp;lt;br /&amp;gt;&lt;br /&gt;
| 18&amp;lt;br /&amp;gt;&lt;br /&gt;
| 17&lt;br /&gt;
| 16&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Мем. дир.&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. инд.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. дир.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| PC релативно&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Непосредно&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. инд. са пом.&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Операциона јединица ===&lt;br /&gt;
{{делимично решено}}&lt;br /&gt;
&lt;br /&gt;
=== Меморија ===&lt;br /&gt;
{{делимично решено}}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Адресе у меморији са којих је учитана инструкција&lt;br /&gt;
! IR31..24&amp;lt;br /&amp;gt;&lt;br /&gt;
! IR23..16&lt;br /&gt;
! IR15..8&lt;br /&gt;
! IR7..0&lt;br /&gt;
! Инструкција&lt;br /&gt;
! PC&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1000, 1001, 1002, 1003&lt;br /&gt;
| E0&lt;br /&gt;
| 00&lt;br /&gt;
| 00&lt;br /&gt;
| 0A&lt;br /&gt;
| LD 000Ah&amp;lt;br /&amp;gt;&lt;br /&gt;
| 1004&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| 1004, 1005, 1006&lt;br /&gt;
| 00&lt;br /&gt;
| 10&lt;br /&gt;
| 09&lt;br /&gt;
| &lt;br /&gt;
| JNZ 1009h&lt;br /&gt;
| 1007&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| 1009&lt;br /&gt;
| A2&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| DEC&lt;br /&gt;
| 100A&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| 100A, 100B, 100C, 100D&lt;br /&gt;
| E2&lt;br /&gt;
| 60&lt;br /&gt;
| 00&lt;br /&gt;
| 08&lt;br /&gt;
| OR (PC+08h)&lt;br /&gt;
| 100E&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| 100E&lt;br /&gt;
| A0&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| PUSH&lt;br /&gt;
| 100F&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| 100F, 1010, 1011&lt;br /&gt;
| 40&lt;br /&gt;
| 10&lt;br /&gt;
| 19&lt;br /&gt;
| &lt;br /&gt;
| JMP 1019h&lt;br /&gt;
| 1012&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| 1019, 101A&lt;br /&gt;
| E3&lt;br /&gt;
| 21&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| ROR (R1)&lt;br /&gt;
| 101B&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Адресе у меморији или регистри&amp;lt;br /&amp;gt;са којих је учитана адреса операнда&lt;br /&gt;
! Адресе у меморији или регистри &amp;lt;br /&amp;gt;са којих је учитан операнд&lt;br /&gt;
! Операнд&lt;br /&gt;
! Нови садржај регистара опште намене&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| &lt;br /&gt;
| 000A, 000B&lt;br /&gt;
| 1001&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| &lt;br /&gt;
| 1017, 1018&lt;br /&gt;
| 0003&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| &lt;br /&gt;
| 000C, 000D&lt;br /&gt;
| 00C1&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Меморијске адресе којима се &amp;lt;br /&amp;gt;приступа у овој фази&lt;br /&gt;
! Акумулатор&amp;lt;br /&amp;gt;&lt;br /&gt;
! N&lt;br /&gt;
! Z&lt;br /&gt;
! V&lt;br /&gt;
! C&lt;br /&gt;
! Нови садржај регистара и меморијских локација&amp;lt;br /&amp;gt;који су промењени у овој фази&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| &lt;br /&gt;
| 1001&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| &lt;br /&gt;
| 1001&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| PC = 1009&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| &lt;br /&gt;
| 1000&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| &lt;br /&gt;
| 1003&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| 2001, 2002&lt;br /&gt;
| 1003&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| MEM[2001] = 10, MEM[2002] = 03&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| &lt;br /&gt;
| 1003&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| PC = 1019&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| &lt;br /&gt;
| 8060&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Категорија:ОРТ2]]&lt;br /&gt;
[[Категорија:Рокови]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%9A3_2021&amp;diff=2637</id>
		<title>ОРТ2/К3 2021</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%9A3_2021&amp;diff=2637"/>
		<updated>2021-07-05T23:47:56Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Меморија - фаза одређивања адресе операнда и читања операнда*/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
&lt;br /&gt;
== Поставка ==&lt;br /&gt;
Посматра се део рачунара који чине меморија и процесор. Меморија је капацитета 2&amp;lt;sup&amp;gt;16&amp;lt;/sup&amp;gt; бајтова. Ширина меморијске речи је 1 бајт. Процесор је са једноадресним форматом инструкција. Адресе и подаци су дужине 16 бита и заузимају по две суседне меморијске локације, при чему се старији бајт налази на нижој, а млађи бајт на вишој адреси.&lt;br /&gt;
&lt;br /&gt;
У процесору постоји регистар програмског бројача PC дужине 2 бајта, адресни регистар меморије MAR дужине 2 бајта, прихватни регистар податка меморије MDR дужине 1 бајт, прихватни регистар инструкције IR дужине 4 бајта, акумулатор A дужине 2 бајта, прихватни регистар податка B дужине 2 бајта, регистри опште намене R0 до R15 дужине 2 бајта, програмска статусна реч PSW дужине 1 бајт. Инструкције су дужине 1, 2, 3 или 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Бит 7 првог бајта инструкције је 0 за све инструкције скока. Код инструкција условног скока бит 6 првог бајта инструкције је 0, док код инструкција безусловног скока бит 6 првог бајта инструкције је 1. Инструкција условног скока је инструкција условног скока уколико резултат није нула (JNZ), а инструкције безусловног скока су инструкција безусловног скока (JMP). Битовима 5 до 0 првог бајта инструкције специфицира се код операције и на основу тога су за инструкције JNZ и JMP усвојени кодови операције 00000000 и 01000000, респективно. Инструкције JNZ и JMP се реализују као апсолутни скокови, при чему је адреса дата другим и трећим бајтом инструкције. Дужина инструкција је 3 бајта.&lt;br /&gt;
&lt;br /&gt;
Бит 7 првог бајта инструкције је 1 за све адресне и безадресне инструкције.&lt;br /&gt;
&lt;br /&gt;
Битови 6 и 5 првог бајта инструкције су 01 за безадресне инструкције. Безадресне инструкције су инструкције стављања садржаја акумулатора на стек (PUSH), пуњења акумулатора садржајем са стека (POP) и декрементирање акумулатора (DEC). Битовима 4 до 0 првог бајта инструкције специфицира се код операције за безадресне инструкције. На основу тога су за инструкције PUSH, POP и DEC усвојени кодови операција 10100000, 10100001 и 10100010, респективно. Дужина инструкција је 1 бајт.&lt;br /&gt;
&lt;br /&gt;
Битови 6 и 5 првог бајта инструкције су 11 за адресне инструкције. Адресне инструкције су инструкција преноса у акумулатор (LD), инструкција преноса из акумулатора (ST), логичка инструкција &amp;quot;или&amp;quot; (OR), инструкција ротирања операнда једно место удесно која смешта резултат у акумулатор (ROR), инструкција безусловног скока на срачунату адресу (JADR), инструкција сабирања (ADD) и инструкција одузимања (SUB). Битовима 4 до 0 првог бајта инструкције специфицира се код операције за адресне инструкције. На основу тога су за инструкције LD, ST, OR, ROR, JADR, ADD и SUB усвојени кодови операција 11100000, 11100001, 11100010, 11100011, 11100100, 11100101 и 11100110 респективно. Дужина инструкција је 2 или 4 бајта и зависи од специфицираног начина адресирања.&lt;br /&gt;
&lt;br /&gt;
Начини адресирања су специфицирани битовима 7, 6 и 5 другог бајта инструкције и то на следећи начин: 000-меморијско директно адресирање (memdir), 001-регистарско индиректно адресирање (regind), 010-регистарско директно адресирање (regdir), 011-релативно адресирање са померајем (pcrel), 100-непосредно адресирање (immed) и 101-регистарско индиректно са померајем адресирање (regindpom). Код меморијског директног адресирања 16 битна адреса меморијске локације је дата трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Регистарско индиректно адресирање користи неке од регистара опште намене R0 до R15 специфициране битовима од 3 до 0 другог бајта. Бит 4 другог бајта инструкције се не користи. Дужина инструкција је 2 бајта. Регистарско директно адресирање користи неке од регистара опште намене R0 до R15 специфициране битовима од 3 до 0 другог бајта. Бит 4 другог бајта инструкције се не користи. Дужина инструкција је 2 бајта. Код релативног адресирања са померајем трећи и четврти бајт инструкције садрже 16 битни померај који је дат као целобројна величина са знаком. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код непосредног адресирања 16 битни операнд дат је трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код регистарског индиректног адресирања са померајем трећи и четврти бајт инструкције садрже 16 битни померај који је дат као целобројна величина са знаком. Један од регистара опште намене R0 до R15 који се користи специфициран је битовима од 3 до 0 другог бајта инструкције. Бит 4 другог бајта инструкције се не користи. Дужина инструкција је 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Стек расте према вишим меморијским локацијама, а регистар SP указује на последњу заузету меморијску локацију. Процесор нема могућност обраде прекида.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Пројектовати део операционе јединице процесора која је потребна да се изврши (FETCH + ADDR + EXEC) инструкција &#039;&#039;&#039;JADR (1234h)&#039;&#039;&#039;.&lt;br /&gt;
# Дати су почетни садржаји регистара и индикатора: PC=1000h, SP=2000h, ACC = 0002h, R0=00F2h, R1=000Ch, R2=00A2h, R3=FFE3h, N=0, Z=0, V=0 и C=0. Индикатори статусне речи на које инструкције не утиче треба да остану непромењени. Извршити 7 сукцесивних наредби и за сваку наредбу одредити следеће: у фази читања инструкције - меморијске адресе са којих је прочитана инструкција, садржај регистра IR, инструкцију која је прочитана и нови садржај регистра PC; у фази одређивања адресе операнда и читања операнда - меморијске адресе са којих је прочитана адреса операнда, меморијске адресе са којих је прочитан операнд, вредност операнда и нови садржај регистара опште намене који су у овој фази промењени; у фази извршавања операције - меморијске адресе којима се у овој фази приступа, садржај акумулатора A и индикатора N, Z, V и C након извршавања инструкције и нови садржај регистара и меморијских локација који су у овој фази промењени. Резултате представити у табелама 1, 2 и 3 формулара.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Садржај дела меморије из поставке задатка&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 000A || 000B || 000C || 000D || 000E || 000F || 0010 || 0011 || 0012 || 0013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  10  ||  01  ||  00  ||  C1  ||  21  ||  77  ||  11  ||  00  ||  0A  ||  83&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1000 || 1001 || 1002 || 1003 || 1004 || 1005 || 1006 || 1007 || 1008 || 1009&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  E0  ||  00  ||  00  ||  0A  ||  00  ||  10  ||  09  ||  10  ||  E8  ||  A2&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 100A || 100B || 100C || 100D || 100E || 100F || 1010 || 1011 || 1012 || 1013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  E2  ||  60  ||  00  ||  08  ||  A0  ||  40  ||  10  ||  19  ||  00  ||  52&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1014 || 1015 || 1016 || 1017 || 1018 || 1019 || 101A || 101B || 101C || 101D&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  21  ||  41  ||  F0  ||  00  ||  03  ||  E3  ||  21  ||  B8  ||  10  ||  13&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Решење ==&lt;br /&gt;
=== Кодови операција ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Класа инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| colspan=&amp;quot;6&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Условни скок&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;6&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;5&amp;quot; | Код операције&lt;br /&gt;
| Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;5&amp;quot; | Код операције&lt;br /&gt;
| Адресне инструкције&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Инструкција&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 2. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Условни скок&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JNZ&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JMP&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| PUSH&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| POP&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| DEC&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Адресне инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| LD&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| ST&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| OR&amp;lt;br /&amp;gt;&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| ROR&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JADR&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| ADD&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&amp;lt;br /&amp;gt;&lt;br /&gt;
| SUB&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR23..16&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Адресирање&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 23&lt;br /&gt;
| 22&lt;br /&gt;
| 21&lt;br /&gt;
| 20&lt;br /&gt;
| 19&amp;lt;br /&amp;gt;&lt;br /&gt;
| 18&amp;lt;br /&amp;gt;&lt;br /&gt;
| 17&lt;br /&gt;
| 16&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Мем. дир.&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. инд.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. дир.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| PC релативно&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Непосредно&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. инд. са пом.&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Операциона јединица ===&lt;br /&gt;
{{делимично решено}}&lt;br /&gt;
&lt;br /&gt;
=== Меморија ===&lt;br /&gt;
{{делимично решено}}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Адресе у меморији са којих је учитана инструкција&lt;br /&gt;
! IR31..24&amp;lt;br /&amp;gt;&lt;br /&gt;
! IR23..16&lt;br /&gt;
! IR15..8&lt;br /&gt;
! IR7..0&lt;br /&gt;
! Инструкција&lt;br /&gt;
! PC&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1000, 1001, 1002, 1003&lt;br /&gt;
| E0&lt;br /&gt;
| 00&lt;br /&gt;
| 00&lt;br /&gt;
| 0A&lt;br /&gt;
| LD 000Ah&amp;lt;br /&amp;gt;&lt;br /&gt;
| 1004&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| 1004, 1005, 1006&lt;br /&gt;
| 00&lt;br /&gt;
| 10&lt;br /&gt;
| 09&lt;br /&gt;
| &lt;br /&gt;
| JNZ 1009h&lt;br /&gt;
| 1007&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| 1009&lt;br /&gt;
| A2&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| DEC&lt;br /&gt;
| 100A&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| 100A, 100B, 100C, 100D&lt;br /&gt;
| E2&lt;br /&gt;
| 60&lt;br /&gt;
| 00&lt;br /&gt;
| 08&lt;br /&gt;
| OR (PC+08h)&lt;br /&gt;
| 100E&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| 100E&lt;br /&gt;
| A0&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| PUSH&lt;br /&gt;
| 100F&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| 100F, 1010, 1011&lt;br /&gt;
| 40&lt;br /&gt;
| 10&lt;br /&gt;
| 19&lt;br /&gt;
| &lt;br /&gt;
| JMP 1019h&lt;br /&gt;
| 1012&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| 1019, 101A&lt;br /&gt;
| E3&lt;br /&gt;
| 21&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| ROR (R1)&lt;br /&gt;
| 101B&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Адресе у меморији или регистри&amp;lt;br /&amp;gt;са којих је учитана адреса операнда&lt;br /&gt;
! Адресе у меморији или регистри &amp;lt;br /&amp;gt;са којих је учитан операнд&lt;br /&gt;
! Операнд&lt;br /&gt;
! Нови садржај регистара опште намене&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| &lt;br /&gt;
| 000A, 000B&lt;br /&gt;
| 1001&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| &lt;br /&gt;
| 1017, 1018&lt;br /&gt;
| 0003&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| &lt;br /&gt;
| 000C, 000D&lt;br /&gt;
| 00C1&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Меморијске адресе којима се &amp;lt;br /&amp;gt;приступа у овој фази&lt;br /&gt;
! Акумулатор&amp;lt;br /&amp;gt;&lt;br /&gt;
! N&lt;br /&gt;
! Z&lt;br /&gt;
! V&lt;br /&gt;
! C&lt;br /&gt;
! Нови садржај регистара и меморијских локација&amp;lt;br /&amp;gt;који су промењени у овој фази&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Категорија:ОРТ2]]&lt;br /&gt;
[[Категорија:Рокови]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%9A3_2021&amp;diff=2636</id>
		<title>ОРТ2/К3 2021</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%9A3_2021&amp;diff=2636"/>
		<updated>2021-07-05T23:44:01Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Меморија - фаза читања инструкције - табела*/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
&lt;br /&gt;
== Поставка ==&lt;br /&gt;
Посматра се део рачунара који чине меморија и процесор. Меморија је капацитета 2&amp;lt;sup&amp;gt;16&amp;lt;/sup&amp;gt; бајтова. Ширина меморијске речи је 1 бајт. Процесор је са једноадресним форматом инструкција. Адресе и подаци су дужине 16 бита и заузимају по две суседне меморијске локације, при чему се старији бајт налази на нижој, а млађи бајт на вишој адреси.&lt;br /&gt;
&lt;br /&gt;
У процесору постоји регистар програмског бројача PC дужине 2 бајта, адресни регистар меморије MAR дужине 2 бајта, прихватни регистар податка меморије MDR дужине 1 бајт, прихватни регистар инструкције IR дужине 4 бајта, акумулатор A дужине 2 бајта, прихватни регистар податка B дужине 2 бајта, регистри опште намене R0 до R15 дужине 2 бајта, програмска статусна реч PSW дужине 1 бајт. Инструкције су дужине 1, 2, 3 или 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Бит 7 првог бајта инструкције је 0 за све инструкције скока. Код инструкција условног скока бит 6 првог бајта инструкције је 0, док код инструкција безусловног скока бит 6 првог бајта инструкције је 1. Инструкција условног скока је инструкција условног скока уколико резултат није нула (JNZ), а инструкције безусловног скока су инструкција безусловног скока (JMP). Битовима 5 до 0 првог бајта инструкције специфицира се код операције и на основу тога су за инструкције JNZ и JMP усвојени кодови операције 00000000 и 01000000, респективно. Инструкције JNZ и JMP се реализују као апсолутни скокови, при чему је адреса дата другим и трећим бајтом инструкције. Дужина инструкција је 3 бајта.&lt;br /&gt;
&lt;br /&gt;
Бит 7 првог бајта инструкције је 1 за све адресне и безадресне инструкције.&lt;br /&gt;
&lt;br /&gt;
Битови 6 и 5 првог бајта инструкције су 01 за безадресне инструкције. Безадресне инструкције су инструкције стављања садржаја акумулатора на стек (PUSH), пуњења акумулатора садржајем са стека (POP) и декрементирање акумулатора (DEC). Битовима 4 до 0 првог бајта инструкције специфицира се код операције за безадресне инструкције. На основу тога су за инструкције PUSH, POP и DEC усвојени кодови операција 10100000, 10100001 и 10100010, респективно. Дужина инструкција је 1 бајт.&lt;br /&gt;
&lt;br /&gt;
Битови 6 и 5 првог бајта инструкције су 11 за адресне инструкције. Адресне инструкције су инструкција преноса у акумулатор (LD), инструкција преноса из акумулатора (ST), логичка инструкција &amp;quot;или&amp;quot; (OR), инструкција ротирања операнда једно место удесно која смешта резултат у акумулатор (ROR), инструкција безусловног скока на срачунату адресу (JADR), инструкција сабирања (ADD) и инструкција одузимања (SUB). Битовима 4 до 0 првог бајта инструкције специфицира се код операције за адресне инструкције. На основу тога су за инструкције LD, ST, OR, ROR, JADR, ADD и SUB усвојени кодови операција 11100000, 11100001, 11100010, 11100011, 11100100, 11100101 и 11100110 респективно. Дужина инструкција је 2 или 4 бајта и зависи од специфицираног начина адресирања.&lt;br /&gt;
&lt;br /&gt;
Начини адресирања су специфицирани битовима 7, 6 и 5 другог бајта инструкције и то на следећи начин: 000-меморијско директно адресирање (memdir), 001-регистарско индиректно адресирање (regind), 010-регистарско директно адресирање (regdir), 011-релативно адресирање са померајем (pcrel), 100-непосредно адресирање (immed) и 101-регистарско индиректно са померајем адресирање (regindpom). Код меморијског директног адресирања 16 битна адреса меморијске локације је дата трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Регистарско индиректно адресирање користи неке од регистара опште намене R0 до R15 специфициране битовима од 3 до 0 другог бајта. Бит 4 другог бајта инструкције се не користи. Дужина инструкција је 2 бајта. Регистарско директно адресирање користи неке од регистара опште намене R0 до R15 специфициране битовима од 3 до 0 другог бајта. Бит 4 другог бајта инструкције се не користи. Дужина инструкција је 2 бајта. Код релативног адресирања са померајем трећи и четврти бајт инструкције садрже 16 битни померај који је дат као целобројна величина са знаком. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код непосредног адресирања 16 битни операнд дат је трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код регистарског индиректног адресирања са померајем трећи и четврти бајт инструкције садрже 16 битни померај који је дат као целобројна величина са знаком. Један од регистара опште намене R0 до R15 који се користи специфициран је битовима од 3 до 0 другог бајта инструкције. Бит 4 другог бајта инструкције се не користи. Дужина инструкција је 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Стек расте према вишим меморијским локацијама, а регистар SP указује на последњу заузету меморијску локацију. Процесор нема могућност обраде прекида.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Пројектовати део операционе јединице процесора која је потребна да се изврши (FETCH + ADDR + EXEC) инструкција &#039;&#039;&#039;JADR (1234h)&#039;&#039;&#039;.&lt;br /&gt;
# Дати су почетни садржаји регистара и индикатора: PC=1000h, SP=2000h, ACC = 0002h, R0=00F2h, R1=000Ch, R2=00A2h, R3=FFE3h, N=0, Z=0, V=0 и C=0. Индикатори статусне речи на које инструкције не утиче треба да остану непромењени. Извршити 7 сукцесивних наредби и за сваку наредбу одредити следеће: у фази читања инструкције - меморијске адресе са којих је прочитана инструкција, садржај регистра IR, инструкцију која је прочитана и нови садржај регистра PC; у фази одређивања адресе операнда и читања операнда - меморијске адресе са којих је прочитана адреса операнда, меморијске адресе са којих је прочитан операнд, вредност операнда и нови садржај регистара опште намене који су у овој фази промењени; у фази извршавања операције - меморијске адресе којима се у овој фази приступа, садржај акумулатора A и индикатора N, Z, V и C након извршавања инструкције и нови садржај регистара и меморијских локација који су у овој фази промењени. Резултате представити у табелама 1, 2 и 3 формулара.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Садржај дела меморије из поставке задатка&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 000A || 000B || 000C || 000D || 000E || 000F || 0010 || 0011 || 0012 || 0013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  10  ||  01  ||  00  ||  C1  ||  21  ||  77  ||  11  ||  00  ||  0A  ||  83&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1000 || 1001 || 1002 || 1003 || 1004 || 1005 || 1006 || 1007 || 1008 || 1009&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  E0  ||  00  ||  00  ||  0A  ||  00  ||  10  ||  09  ||  10  ||  E8  ||  A2&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 100A || 100B || 100C || 100D || 100E || 100F || 1010 || 1011 || 1012 || 1013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  E2  ||  60  ||  00  ||  08  ||  A0  ||  40  ||  10  ||  19  ||  00  ||  52&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1014 || 1015 || 1016 || 1017 || 1018 || 1019 || 101A || 101B || 101C || 101D&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  21  ||  41  ||  F0  ||  00  ||  03  ||  E3  ||  21  ||  B8  ||  10  ||  13&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Решење ==&lt;br /&gt;
=== Кодови операција ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Класа инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| colspan=&amp;quot;6&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Условни скок&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;6&amp;quot; | Код операције&amp;lt;br /&amp;gt;&lt;br /&gt;
| Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;5&amp;quot; | Код операције&lt;br /&gt;
| Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| colspan=&amp;quot;5&amp;quot; | Код операције&lt;br /&gt;
| Адресне инструкције&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR31..24&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Инструкција&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 2. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| 30&lt;br /&gt;
| 29&lt;br /&gt;
| 28&lt;br /&gt;
| 27&lt;br /&gt;
| 26&lt;br /&gt;
| 25&lt;br /&gt;
| 24&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Условни скок&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JNZ&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безусловни скок&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JMP&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| /&lt;br /&gt;
| 3 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Безадресне инструкције&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| PUSH&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| POP&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| DEC&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 1 б&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot; style=&amp;quot;font-weight:bold;&amp;quot; | Адресне инструкције&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| LD&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| ST&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| OR&amp;lt;br /&amp;gt;&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| ROR&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| JADR&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| ADD&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&amp;lt;br /&amp;gt;&lt;br /&gt;
| SUB&lt;br /&gt;
| Адр.&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;8&amp;quot; | Битови IR23..16&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Адресирање&amp;lt;br /&amp;gt;&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 3. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | 4. бајт&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Дужина&lt;br /&gt;
|-&lt;br /&gt;
| 23&lt;br /&gt;
| 22&lt;br /&gt;
| 21&lt;br /&gt;
| 20&lt;br /&gt;
| 19&amp;lt;br /&amp;gt;&lt;br /&gt;
| 18&amp;lt;br /&amp;gt;&lt;br /&gt;
| 17&lt;br /&gt;
| 16&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Мем. дир.&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. инд.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. дир.&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| 2 б&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| PC релативно&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| /&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&amp;lt;br /&amp;gt;&lt;br /&gt;
| /&lt;br /&gt;
| /&lt;br /&gt;
| Непосредно&amp;lt;br /&amp;gt;&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| R&amp;lt;br /&amp;gt;&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| R&lt;br /&gt;
| Рег. инд. са пом.&lt;br /&gt;
| ст.&amp;lt;br /&amp;gt;&lt;br /&gt;
| мл.&lt;br /&gt;
| 4 б&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Операциона јединица ===&lt;br /&gt;
{{делимично решено}}&lt;br /&gt;
&lt;br /&gt;
=== Меморија ===&lt;br /&gt;
{{делимично решено}}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Адресе у меморији са којих је учитана инструкција&lt;br /&gt;
! IR31..24&amp;lt;br /&amp;gt;&lt;br /&gt;
! IR23..16&lt;br /&gt;
! IR15..8&lt;br /&gt;
! IR7..0&lt;br /&gt;
! Инструкција&lt;br /&gt;
! PC&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1000, 1001, 1002, 1003&lt;br /&gt;
| E0&lt;br /&gt;
| 00&lt;br /&gt;
| 00&lt;br /&gt;
| 0A&lt;br /&gt;
| LD 000Ah&amp;lt;br /&amp;gt;&lt;br /&gt;
| 1004&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| 1004, 1005, 1006&lt;br /&gt;
| 00&lt;br /&gt;
| 10&lt;br /&gt;
| 09&lt;br /&gt;
| &lt;br /&gt;
| JNZ 1009h&lt;br /&gt;
| 1007&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| 1009&lt;br /&gt;
| A2&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| DEC&lt;br /&gt;
| 100A&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| 100A, 100B, 100C, 100D&lt;br /&gt;
| E2&lt;br /&gt;
| 60&lt;br /&gt;
| 00&lt;br /&gt;
| 08&lt;br /&gt;
| OR (PC+08h)&lt;br /&gt;
| 100E&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| 100E&lt;br /&gt;
| A0&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| PUSH&lt;br /&gt;
| 100F&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| 100F, 1010, 1011&lt;br /&gt;
| 40&lt;br /&gt;
| 10&lt;br /&gt;
| 19&lt;br /&gt;
| &lt;br /&gt;
| JMP 1019h&lt;br /&gt;
| 1012&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| 1019, 101A&lt;br /&gt;
| E3&lt;br /&gt;
| 21&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| ROR (R1)&lt;br /&gt;
| 101B&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Адресе у меморији или регистри&amp;lt;br /&amp;gt;са којих је учитана адреса операнда&lt;br /&gt;
! Адресе у меморији или регистри &amp;lt;br /&amp;gt;са којих је учитан операнд&lt;br /&gt;
! Операнд&lt;br /&gt;
! Нови садржај регистара опште намене&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! #&amp;lt;br /&amp;gt;&lt;br /&gt;
! Меморијске адресе којима се &amp;lt;br /&amp;gt;приступа у овој фази&lt;br /&gt;
! Акумулатор&amp;lt;br /&amp;gt;&lt;br /&gt;
! N&lt;br /&gt;
! Z&lt;br /&gt;
! V&lt;br /&gt;
! C&lt;br /&gt;
! Нови садржај регистара и меморијских локација&amp;lt;br /&amp;gt;који су промењени у овој фази&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Категорија:ОРТ2]]&lt;br /&gt;
[[Категорија:Рокови]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%88%D1%83%D0%BB_2021&amp;diff=2620</id>
		<title>ОРТ2/Јул 2021</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%88%D1%83%D0%BB_2021&amp;diff=2620"/>
		<updated>2021-07-05T20:48:45Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* ОРТ2 Јул  К2 и К3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Поставка ==&lt;br /&gt;
&lt;br /&gt;
Посматра се део рачунара који чине меморија и процесор. Меморија је капацитета 2&amp;lt;sup&amp;gt;16&amp;lt;/sup&amp;gt; бајтова. Ширина меморијске речи је 1 бајт. Процесор је са једноадресним форматом инструкција.Адресе и подаци су дужине 16 бита и заузимају по две суседне меморијске локације, при чему се старији бајт налази на нижој, а млађи бајт на вишој адреси.&lt;br /&gt;
&lt;br /&gt;
У процесору постоји регистар програмског бројача PC дужине 2 бајта, адресни регистар меморије MAR дужине 2 бајта, прихватни регистар податка меморије MDR дужине 1 бајт, прихватни регистар инструкције IR дужине 4 бајта, акумулатор A дужине 2 бајта, прихватни регистар податка B дужине 2 бајта, регистри опште намене R0 до R31 дужине 2 бајта, програмска статусна реч PSW дужине 1 бајт. Инструкције су дужине 1, 2, 3 или 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Битови 7 и 6 првог бајта инструкције су 11 за све инструкције скока. Код инструкција условног скока битови 5 и 4 првог бајта инструкције су 00, док код инструкција безусловног скока битови 5 и 4 првог бајта инструкције су 11. Инструкција условног скока је инструкција условног скока уколико постоји пренос/позајмица (JC), а инструкције безусловног скока су инструкција безусловног скока (JMP) и инструкција скока на потпрограм (JSR). Битовима 3 до 0 првог бајта инструкције специфира се код операције и на основу тога су за инструкције JC, JMP и JSR усвојени кодови операције 11000000, 11110000 и 11110001, респективно. Инструкције JC, JMP и JSR се реализују као апсолутни скокови, при чему је адреса дата другим и трећим бајтом инструкције. Дужина инструкција је 3 бајта.&lt;br /&gt;
&lt;br /&gt;
Битови 7 и 6 првог бајта инструкције су 00 за све адресне и безадресне инструкције.&lt;br /&gt;
&lt;br /&gt;
Бит 5 првог бајта инструкције је 0 за безадресне инструкције. Безадресне инструкције су инструкције стављања садржаја акумулатора на стек (PUSH), пуњења акумулатора садржајем са стека (POP) и повратка из потпрограма (RTS). Битовима 4 до 0 првог бајта инструкције специфицира се код операције за безадресне инструкције. На основу тога су за инструкције PUSH, POP и RTS усвојени кодови операција 00000000, 00000001 и 00000011, респективно. Дужина инструкција је 1 бајт.&lt;br /&gt;
&lt;br /&gt;
Битови 5 и 4 првог бајта инструкције су 11 за адресне инструкције. Адресне инструкције су инструкција преноса у акумулатор (LD), инструкција преноса из акумулатора (ST), логичка инструкција комплементирања операнда која смешта резултат у акумулатор (NOT), инструкција логичког померања операнда једно место улево која смешта резултат у акумулатор (LSL) и инструкција безусловног скока на срачунату адресу (JADR). Битовима 3 до 0 првог бајта инструкције специфицира се код операције за адресне инструкције. На основу тога су за инструкције LD, ST, NOT, LSL и JADR усвојени кодови операција 00110000, 00110001, 00110010, 00110011 и 00110100 респективно. Дужина инструкција је 2 или 4 бајта и зависи од специфицираног начина адресирања.&lt;br /&gt;
&lt;br /&gt;
Начини адресирања су специфицирани битовима 7, 6 и 5 другог бајта инструкције и то на следећи начин: 000-меморијско директно адресирање (memdir), 001-регистарско директно адресирање (regdir), 010-регистарско индиректно (regind), 011-релативно адресирање са померајем (pcrel), и 100-непосредно адресирање (immed). Код меморијског директног адресирања 16 битна адреса меморијске локације је дата трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код регистарског директног и регистарског индиректног адресирања, користи се неки од регистара опште намене R0 до R31 специфицираних битовима од 4 до 0 другог бајта. Дужина инструкција је 2 бајта. Код релативног адресирања са померајем трећи и четврти бајт инструкције садрже 16 битни померај који је дат као целобројна величина без знака. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код непосредног адресирања 16 битни операнд дат је трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Стек расте према вишим меморијским локацијама, а регистар SP указује на прву слободну меморијску локацију. Процесор нема могућност обраде прекида&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;1. (К2) (20)&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Написати израз за генерисање сигнала gradr који је активан уколико прочитана инструкција има грешку при адресирању.&lt;br /&gt;
# Написати изразе за генерисање сигнала свих начина адресирања. IR регистар се попуњава од виших ка нижим битовима.&lt;br /&gt;
# Написати изразе за генерисање сигнала операција и то само за JC и NOT.&lt;br /&gt;
# Нацртати дијаграм тока фаза формирања адресе и читања операнда и фазе извршавање инструкције.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;2. (К3) (20)&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Пројектовати део операционе јединице процесора која је потребна да се изврши (FETCH, ADDR и EXEC) инструкција &amp;lt;strong&amp;gt;NOT 000Dh&amp;lt;/strong&amp;gt;.&lt;br /&gt;
# Дати су почетни садржаји регистара и индикатора: PC=1000h, SP=3000h, ACC=0001h, R0=0002h, R1=030Ch, R2=10A2h, R3=FAE3h, N=0, Z=0, V=0 и C=0. Индикатори статусне речи на које инструкција не утиче треба да остану непромењени. Извршити 7 сукцесивних наредби и за сваку наредбу одредити следеће: у фази читања инструкције - меморијске адресе са којих је прочитана инструкција, садржај регистра IR, инструкцију која је прочитана и нови садржај регистра PC; у фази одређивања адресе операнда и читања операнда - меморијске адресе са којих је прочитана адреса операнда, меморијске адресе са којих је прочитан операнд, вредност операнда и нови садржај регистара опште намене који су у овој фази промењени; у фази извршавања операције - меморијске адресе којима се у овој фази приступа, садржај акумулатора A и индикатора N, Z, V и C након извршавања инструкције и нови садржај регистара и меморијских локација који су у овој фази промењени. Резултате представити у табелама 1, 2 и 3 формулара.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Садржај дела меморије из поставке задатка&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 000A || 000B || 000C || 000D || 000E || 000F || 0010 || 0011 || 0012 || 0013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  10  ||  01  ||  00  ||  C1  ||  21  ||  77  ||  11  ||  00  ||  0A  ||  83&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1000 || 1001 || 1002 || 1003 || 1004 || 1005 || 1006 || 1007 || 1008 || 1009&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  30  ||  20  ||  F0  ||  10  ||  06  ||  10  ||  00  ||  31  ||  00  ||  00&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 100A || 100B || 100C || 100D || 100E || 100F || 1010 || 1011 || 1012 || 1013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  13  ||  32  ||  00  ||  00  ||  13  ||  C0  ||  00  ||  10  ||  01  ||  52&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1014 || 1015 || 1016 || 1017 || 1018 || 1019 || 101A || 101B || 101C || 101D&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  22  ||  41  ||  F0  ||  00  ||  03  ||  E3  ||  21  ||  B8  ||  10  ||  13&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категорија:ОРТ2]]&lt;br /&gt;
[[Категорија:Рокови]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%9A3_%D0%A4%D0%B5%D0%B1%D1%80%D1%83%D0%B0%D1%80_2021&amp;diff=2606</id>
		<title>ОРТ2/К3 Фебруар 2021</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22/%D0%9A3_%D0%A4%D0%B5%D0%B1%D1%80%D1%83%D0%B0%D1%80_2021&amp;diff=2606"/>
		<updated>2021-07-05T00:32:01Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Колоквијум 3 - Садржај дела меморије из поставке задатка - Иван */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
{{нерешено}}&lt;br /&gt;
&lt;br /&gt;
== Колоквијум 2 ==&lt;br /&gt;
&lt;br /&gt;
Посматра се део рачунара који чине меморија и процесор. Меморија је капацитета 2&amp;lt;sup&amp;gt;16&amp;lt;/sup&amp;gt; бајтова. Ширина меморијске речи је 1 бајт. Процесор је са једноадресним форматом инструкција. Подаци су дужине 8 бита без знака, а адресе дужине 16 бита и заузимају по две суседне меморијске локације, при чему се старији бајт налази на вишој, а млађи бајт на нижој адреси.&lt;br /&gt;
&lt;br /&gt;
У процесору постоји регистар програмског бројача PC дужине 2 бајта, адресни регистар меморије MAR дужине 2 бајта, прихватни регистар податка меморије MDR дужине 1 бајт, прихватни регистар инструкције IR дужине 4 бајта, акумулатор A дужине 1 бајт, прихватни регистар податка B дужине 1 бајт, регистри опште намене R0 до R15 дужине 2 бајта, програмска статусна реч PSW дужине 1 бајт. Инструкције су дужине 1, 2, 3 или 4 бајта.&lt;br /&gt;
&lt;br /&gt;
Приликом читања податка из регистара опште намене, узима се нижих 8 бита.&lt;br /&gt;
&lt;br /&gt;
Битови 7 и 6 првог бајта инструкције су 00 за све инструкције скока. Код инструкција условног скока бит 5 првог бајта инструкције је 0, док код инструкција безусловног скока бит 5 првог бајта инструкције је 1. Инструкција условног скока је инструкција условног скока уколико је резултат нула (JZ), а инструкције безусловног скока су инструкције безусловног скока (JMP) и инструкција скока на потпрограм (JSR). Битовима 4 до 0 првог бајта инструкције специфира се код операције и на основу тога су за инструкције JZ, JMP и JSR усвојени кодови операције 00000000, 00100000 и 00100001, респективно. Инструкције JZ, JMP и JSR се реализују као апсолутни скокови, при чему је адреса дата другим и трећим бајтом инструкције. Дужина инструкција је 3 бајта.&lt;br /&gt;
&lt;br /&gt;
Битови 7 и 6 првог бајта инструкције су 11 за све адресне и безадресне инструкције.&lt;br /&gt;
&lt;br /&gt;
Бит 5 првог бајта инструкције је 0 за безадресне инструкције. Безадресне инструкције су инструкције стављања садржаја акумулатора на стек (PUSH), пуњења акумулатора садржајем са стека (POP), инкрементирање акумулатора (INC) и повратка из потпрограма (RTS). Битовима 4 до 0 првог бајта инструкције специфицира се код операције за безадресне инструкције. На основу тога су за инструкције PUSH, POP, INC и RTS усвојени кодови операција 11000000, 11000001, 11000010 и 11000011, респективно. Дужина инструкција је 1 бајт.&lt;br /&gt;
&lt;br /&gt;
Бит 5 првог бајта инструкције је 1 за адресне инструкције. Адресне инструкције су инструкција преноса у акумулатор (LD), инструкција преноса из акумулатора (ST), логичка инструкција &amp;quot;и&amp;quot; (AND), инструкција аритметичког померања операнда једно место удесно која смешта резултат у акумулатор (ASR) и инструкција безусловног скока на срачунату адресу (JADR). Битовима 4 до 0 првог бајта инструкције специфицира се код операције за адресне инструкције. На основу тога су за инструкције LD, ST, AND, ASR и JADR усвојени кодови операција 11100000, 11100001, 11100010, 11100011 и 11100100 респективно. Дужина инструкција је 2, 3 или 4 бајта и зависи од специфицираног начина адресирања.&lt;br /&gt;
&lt;br /&gt;
Начини адресирања су специфицирани битовима 7, 6 и 5 другог бајта инструкције и то на следећи начин: 000-регистарско индиректно адресирање (regind), 001-регистарско директно адресирање (regdir), 010-меморијско индиректно адресирање (memind), 011-релативно адресирање са померајем (pcrel) и 100-непосредно адресирање (immed). Код регистарско директног и регистарског индиректног адресирања, користи се неки од регистара опште намене R0 до R15 специфицираних битовима од 4 до 1 другог бајта. Бит 0 другог бајта се не користи. Дужина инструкција је 2 бајта. Код меморијског индиректног адресирања 16 битна адреса меморијске локације је дата трећим и четвртим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкције је 4 бајта. Код релативног адресирања са померајем трећи и четврти бајт инструкције садрже 16 битни померај који је дат као целобројна величина без знака. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкција је 4 бајта. Код непосредног адресирања 8 битни операнд дат је трећим бајтом инструкције. Битови 4 до 0 другог бајта инструкције се не користе. Дужина инструкције је 3 бајта.&lt;br /&gt;
&lt;br /&gt;
Стек расте према нижим меморијским локацијама, а регистар SP указује на последњу заузету меморијску локацију. Процесор нема могућност обраде прекида.&lt;br /&gt;
&lt;br /&gt;
Процесор нема подршку за детектовање грешке у адресирању у првој фази, већ тако прочитане инструкције се игноришу у осталим фазама.&lt;br /&gt;
&lt;br /&gt;
Први корак сваке фазе сматрати да се означава са FETCH, ADDR, EXEC.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Написати изразе за генерисање сигнала свих начина адресирања. IR регистар се попуњава од виших ка нижим битовима.&lt;br /&gt;
# Написати изразе за генерисање сигнала операција и то само за INC, AND и ASR.&lt;br /&gt;
# Нацртати дијаграм тока фаза формирања адресе и читања операнда и фазе извршавање операције.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Колоквијум 3 == &lt;br /&gt;
Посматра се део рачунара који чине меморија и процесор. Меморија је капацитета 2&amp;lt;sup&amp;gt;16&amp;lt;/sup&amp;gt; бајтова. Ширина меморијске речи је 1 бајт. Процесор је са једноадресним форматом инструкција. Адресе и подаци су дужине 16 бита и заузимају по две суседне меморијске локације, при чему се старији бајт налази на вишој, а млађи бајт на нижој адреси.&lt;br /&gt;
&lt;br /&gt;
У процесору постоји регистар програмског бројача PC дужине 2 бајта, адресни регистар меморије MAR дужине 2 бајта, прихватни регистар податка меморије MDR дужине 1 бајт, прихватни регистар инструкције IR дужине 3 бајта, акумулатор A дужине 2 бајта, прихватни регистар податка B дужине 2 бајта, регистри опште намене R0 до R3 дужине 2 бајта, програмска статусна реч PSW дужине 1 бајт. Програмска статусна реч PSW садржи битове N, Z, C и V који се ажурирају приликом рада процесора. Инструкције су дужине 1, 2 или 3 бајта.&lt;br /&gt;
&lt;br /&gt;
Битови 7, 6 и 5 првог бајта инструкције је 000 за све инструкције скока. Код инструкције условног скока бит 4 првог бајта инструкције је 0, док код инструкција безусловног скока бит 4 првог бајта инструкције је 1. Инструкција условног скока је инструкција условног скока уколико је резултат негативан (BN) и инструкције безусловног скока су инструкција безусловног скока (JMP) и инструкција скока на потпрограм JSR. Битовима 3 до 0 првог бајта инструкције специфицира се код операције и на основу тога су за инструкције BN, JMP и JSR усвојени кодови операције 00000000, 00010000 и 00010001, респективно. Инструкције JMP и JSR се реализују као апсолутни скокови, при чему је адреса дата другим и трећим бајтом инструкције. Дужина инструкција је 3 бајта. Инструкција BN се реализује као релативни скок у односу на текућу вредност програмског бројача PC, а померај је 8 битна целобројна величина са знаком дата другим бајтом инструкције. Дужина инструкције је 2 бајта.&lt;br /&gt;
&lt;br /&gt;
Битови 7, 6 и 5 првог бајта инструкције је 001 за све безадресне инструкције. Безадресне инструкције су инструкције стављања садржаја акумулатора на стек (PUSH), пуњења акумулатора садржајем са стека (POP) и инструкција комплементирања садржаја акумулатора (NOT). Битовима 4 до 0 првог бајта инструкције специфира се код операције за безадресне инструкције. На основу тога су за инструкције PUSH, POP и NOT усвојени кодови операција 00100000, 00100001 и 00100010, респективно. Дужина инструкција је 1 бајт. &lt;br /&gt;
&lt;br /&gt;
Битови 7, 6 и 5 првог бајта инструкције имају вредности од 010 до 111 за адресне инструкције. Адресне инструкције су инструкција преноса у акумулатор (LD), инструкција преноса из акумулатора (ST), инструкција аритметичког померања удесно за једно место (ASR), инструкција упоређивања акумулатора са операндом (CMP), инструкција сабирања (ADD) и инструкција одузимања (SUB). На основу тога су за инструкције LD, ST, ASR, CMP, ADD и SUB усвојени кодови операција 010, 011, 100, 101, 110 и 111, респективно. Дужина инструкција је 2 или 3 бајта и зависи од специфичног начина адресирања.&lt;br /&gt;
&lt;br /&gt;
Начини адресирања су специфицирани битовима 4, 3 и 2 другог бајта инструкције и то на следећи начин: 000-меморијско директно адресирање (memdir), 001-меморијско индиректно адресирање (memind), 010-регистарско директно адресирање (regdir), 011-регистарско индиректно адресирање (regind), 100-релативно адресирање са померајем (pcrel), 101-непосредно адресирање (immed) и 110-регистарско индиректно адресирање са преинкрементирањем (preincr). Код меморијског директног и меморијског индиректног адресирања 16 битна адреса меморијске локације је дата другим и трећим бајтом инструкције. Битови 1 и 0 првог бајта инструкције се не користе. Дужина инструкције је 3 бајта. Регистарско директно, регистарско индиректно и регистарско индиректно адресирање са преинкрементирањем користе неке од регистара опште намене R0 до R3 специфициране битовима 1 и 0 првог бајта. Дужина инструкција је 1 бајт. Код релативног адресирања са померајем други бајт инструкције садржи 8 битни померај који је дат као целобројна величина са знаком. Битови 1 и 0 првог бајта инструкције се не користе. Дужина инструкција је 2 бајта. Код непосредног адресирања 16 битни операнд дат је другим и трећим бајтом инструкције. Битови 1 и 0 првог бајта инструкције се не користе. Дужина инструкција је 3 бајта.&lt;br /&gt;
&lt;br /&gt;
Стек расте према вишим меморијским локацијама, а регистар SP указује на прву слободну меморијску локацију. Процесор нема могућност обраде прекида.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Пројектовати део операционе јединице процесора (фазе: FETCH, ADDR и EXEC) која је потребна да се изврши инструкција &#039;&#039;&#039;CMP +(R0)&#039;&#039;&#039;. Цртати само неопходне компоненте које су потребне за извршавање наведене инструкције.&lt;br /&gt;
# Дати су почетни садржаји регистара и индикатора: PC=1000h, SP=2000h, ACC=FFF7h, R0=0000h, R1=0001h, R2=0002h, R3=0003h, N=1, Z=0, V=0 и C=0. Индикатори статусне речи на које инструкција не утиче треба да остану непромењени. Извршити 7 сукцесивних наредби и за сваку наредбу одредити следеће: у фази читања инструкције - меморијске адресе са којих је прочитана инструкција, садржај регистра IR, инструкцију која је прочитана и нови садржај регистра PC; у фази одређивања адресе операнда и читања операнда - меморијске адресе са којих је прочитана адреса операнда, меморијске адресе са којих је прочитан операнд, вредност операнда и нови садржај регистара опште намене који су у овој фази промењени; у фази извршавања операције - меморијске адресе којима се у овој фази приступа, садржај акумулатора A и индикатора N, Z, V и C након извршавања инструкције и нови садржај регистара и меморијских локација који су у овој фази промењени. Резултате представити у табелама 1, 2 и 3 формулара.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Садржај дела меморије из поставке задатка&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 0000 || 0001 || 0002 || 0003 || 0004 || 0005 || 0006 || 0007 || 0008 || 0009&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  07  ||  FF  ||  00  ||  00  ||  21  ||  77  ||  11  ||  00  ||  0A  ||  83&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1000 || 1001 || 1002 || 1003 || 1004 || 1005 || 1006 || 1007 || 1008 || 1009&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  60  ||  00  ||  00  ||  D4  ||  F6  ||  FF  ||  00  ||  0C  ||  D4  ||  F6&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 100A || 100B || 100C || 100D || 100E || 100F || 1010 || 1011 || 1012 || 1013&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  FF  ||  30  ||  00  ||  08  ||  A0  ||  40  ||  10  ||  19  ||  00  ||  52&lt;br /&gt;
|-&lt;br /&gt;
! ЛОКАЦИЈА&lt;br /&gt;
| 1014 || 1015 || 1016 || 1017 || 1018 || 1019 || 101A || 101B || 101C || 101D&lt;br /&gt;
|-&lt;br /&gt;
! ВРЕДНОСТ&lt;br /&gt;
|  22  ||  E9  ||  84  ||  02  ||  00  ||  11  ||  00  ||  30  ||  E8  ||  E8&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Категорија:ОРТ2]]&lt;br /&gt;
[[Категорија:Рокови]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%9E2&amp;diff=2385</id>
		<title>ОО2</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%9E2&amp;diff=2385"/>
		<updated>2021-06-27T21:57:59Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Испитни рокови - линк ка ОО1 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
&#039;&#039;&#039;Објектно оријентисано програмирање 2&#039;&#039;&#039; је обавезан предмет у четвртом семестру, настављајући се на [[ОО1|Објектно оријентисано програмирање 1]].&lt;br /&gt;
&lt;br /&gt;
== Странице ==&lt;br /&gt;
* [https://rti.etf.bg.ac.rs/rti/ir2oo2/ Страница предмета]&lt;br /&gt;
&lt;br /&gt;
== Корисне везе ==&lt;br /&gt;
{{Материјали&lt;br /&gt;
| suetf          = ir2oo2&lt;br /&gt;
| vuk            = 1tsApPhN_66xrdBYYFg_4PAivufJ4cBVQ&lt;br /&gt;
| box            = 8381893109&lt;br /&gt;
}}&lt;br /&gt;
* [[github:nikolabebic95/Fakultet/tree/master/Godina2/OO2|&#039;&#039;nikolabebic95&#039;&#039; GitHub налог]]&lt;br /&gt;
&lt;br /&gt;
== Домаћи ==&lt;br /&gt;
Погледати [[ОО1#Домаћи]].&lt;br /&gt;
&lt;br /&gt;
== Лаб вежбе ==&lt;br /&gt;
Исто као и на [[ОО1#Лаб вежбе|ОО1]].&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/Лаб&lt;br /&gt;
| noresultsheader = Тренутно нема модификација.&lt;br /&gt;
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Испитни рокови ==&lt;br /&gt;
Слична прича као и за [[ОО1#Испитни рокови|ОО1]] .&lt;br /&gt;
&lt;br /&gt;
=== Пробни тестови ===&lt;br /&gt;
Овде се налазе пробни тестови дати за вежбу пред колоквијум на Moodle платформи.&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/Пробни тестови&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Колоквијум 1 ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/К1&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Колоквијум 2 ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/К2&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Испит ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/.* \d+$&lt;br /&gt;
| nottitleregexp  = ОО2/К\d&lt;br /&gt;
| nottitleregexp  = ОО2/Пробни тестови&lt;br /&gt;
| nottitleregexp  = ОО2/Лаб&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Начин оцењивања ==&lt;br /&gt;
Исто као и на [[ОО1#Начин оцењивања|ОО1]].&lt;br /&gt;
&lt;br /&gt;
== Литература ==&lt;br /&gt;
Предмет је могуће положити са највишом оценом без коришћења литературе. Градиво предмета покривено је у ширини у уџбеницима:&lt;br /&gt;
* &#039;&#039;&#039;[https://akademska-misao.rs/index.html#/info/book/576 Програмски језик Java са решеним задацима]&#039;&#039;&#039; 3. издање, Ласло Краус, &#039;&#039;Издавач: Академска Мисао, Београд&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;[https://akademska-misao.rs/index.html#/info/book/308 Програмски језик C# са решеним задацима]&#039;&#039;&#039; 1. издање, Ласло Краус, &#039;&#039;Издавач: Академска Мисао, Београд&#039;&#039;&lt;br /&gt;
Збирке су од мањег значаја након увођења новог формата колоквијума:&lt;br /&gt;
* &#039;&#039;&#039;[https://akademska-misao.rs/index.html#/info/book/678 Решени задаци из програмског језика Java]&#039;&#039;&#039; 5. издање, Ласло Краус, &#039;&#039;Издавач: Академска Мисао, Београд&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;[https://akademska-misao.rs/index.html#/info/book/9 Решени задаци из програмског језика C#]&#039;&#039;&#039; 2. издање, Ласло Краус, &#039;&#039;Издавач: Академска Мисао, Београд&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Потребна помоћ ==&lt;br /&gt;
* {{zadaci|postavke}}&lt;br /&gt;
** Од користи су такође модификације добијене на лабораторијским вежбама, како би студенти знали отприлике шта их на лабораторијским вежбама чека.&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Четврти семестар]]&lt;br /&gt;
[[Категорија:Обавезни предмети]]&lt;br /&gt;
[[Категорија:ОО2]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%9E2&amp;diff=2384</id>
		<title>ОО2</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%9E2&amp;diff=2384"/>
		<updated>2021-06-27T21:56:57Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Начин оцењивања - линк */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
&#039;&#039;&#039;Објектно оријентисано програмирање 2&#039;&#039;&#039; је обавезан предмет у четвртом семестру, настављајући се на [[ОО1|Објектно оријентисано програмирање 1]].&lt;br /&gt;
&lt;br /&gt;
== Странице ==&lt;br /&gt;
* [https://rti.etf.bg.ac.rs/rti/ir2oo2/ Страница предмета]&lt;br /&gt;
&lt;br /&gt;
== Корисне везе ==&lt;br /&gt;
{{Материјали&lt;br /&gt;
| suetf          = ir2oo2&lt;br /&gt;
| vuk            = 1tsApPhN_66xrdBYYFg_4PAivufJ4cBVQ&lt;br /&gt;
| box            = 8381893109&lt;br /&gt;
}}&lt;br /&gt;
* [[github:nikolabebic95/Fakultet/tree/master/Godina2/OO2|&#039;&#039;nikolabebic95&#039;&#039; GitHub налог]]&lt;br /&gt;
&lt;br /&gt;
== Домаћи ==&lt;br /&gt;
Погледати [[ОО1#Домаћи]].&lt;br /&gt;
&lt;br /&gt;
== Лаб вежбе ==&lt;br /&gt;
Исто као и на [[ОО1#Лаб вежбе|ОО1]].&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/Лаб&lt;br /&gt;
| noresultsheader = Тренутно нема модификација.&lt;br /&gt;
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Испитни рокови ==&lt;br /&gt;
Слична прича као и за ОО1.&lt;br /&gt;
&lt;br /&gt;
=== Пробни тестови ===&lt;br /&gt;
Овде се налазе пробни тестови дати за вежбу пред колоквијум на Moodle платформи.&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/Пробни тестови&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Колоквијум 1 ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/К1&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Колоквијум 2 ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/К2&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Испит ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/.* \d+$&lt;br /&gt;
| nottitleregexp  = ОО2/К\d&lt;br /&gt;
| nottitleregexp  = ОО2/Пробни тестови&lt;br /&gt;
| nottitleregexp  = ОО2/Лаб&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Начин оцењивања ==&lt;br /&gt;
Исто као и на [[ОО1#Начин оцењивања|ОО1]].&lt;br /&gt;
&lt;br /&gt;
== Литература ==&lt;br /&gt;
Предмет је могуће положити са највишом оценом без коришћења литературе. Градиво предмета покривено је у ширини у уџбеницима:&lt;br /&gt;
* &#039;&#039;&#039;[https://akademska-misao.rs/index.html#/info/book/576 Програмски језик Java са решеним задацима]&#039;&#039;&#039; 3. издање, Ласло Краус, &#039;&#039;Издавач: Академска Мисао, Београд&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;[https://akademska-misao.rs/index.html#/info/book/308 Програмски језик C# са решеним задацима]&#039;&#039;&#039; 1. издање, Ласло Краус, &#039;&#039;Издавач: Академска Мисао, Београд&#039;&#039;&lt;br /&gt;
Збирке су од мањег значаја након увођења новог формата колоквијума:&lt;br /&gt;
* &#039;&#039;&#039;[https://akademska-misao.rs/index.html#/info/book/678 Решени задаци из програмског језика Java]&#039;&#039;&#039; 5. издање, Ласло Краус, &#039;&#039;Издавач: Академска Мисао, Београд&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;[https://akademska-misao.rs/index.html#/info/book/9 Решени задаци из програмског језика C#]&#039;&#039;&#039; 2. издање, Ласло Краус, &#039;&#039;Издавач: Академска Мисао, Београд&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Потребна помоћ ==&lt;br /&gt;
* {{zadaci|postavke}}&lt;br /&gt;
** Од користи су такође модификације добијене на лабораторијским вежбама, како би студенти знали отприлике шта их на лабораторијским вежбама чека.&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Четврти семестар]]&lt;br /&gt;
[[Категорија:Обавезни предмети]]&lt;br /&gt;
[[Категорија:ОО2]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%9E2&amp;diff=2383</id>
		<title>ОО2</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%9E2&amp;diff=2383"/>
		<updated>2021-06-27T21:55:19Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Линк за ОО1*/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
&#039;&#039;&#039;Објектно оријентисано програмирање 2&#039;&#039;&#039; је обавезан предмет у четвртом семестру, настављајући се на [[ОО1|Објектно оријентисано програмирање 1]].&lt;br /&gt;
&lt;br /&gt;
== Странице ==&lt;br /&gt;
* [https://rti.etf.bg.ac.rs/rti/ir2oo2/ Страница предмета]&lt;br /&gt;
&lt;br /&gt;
== Корисне везе ==&lt;br /&gt;
{{Материјали&lt;br /&gt;
| suetf          = ir2oo2&lt;br /&gt;
| vuk            = 1tsApPhN_66xrdBYYFg_4PAivufJ4cBVQ&lt;br /&gt;
| box            = 8381893109&lt;br /&gt;
}}&lt;br /&gt;
* [[github:nikolabebic95/Fakultet/tree/master/Godina2/OO2|&#039;&#039;nikolabebic95&#039;&#039; GitHub налог]]&lt;br /&gt;
&lt;br /&gt;
== Домаћи ==&lt;br /&gt;
Погледати [[ОО1#Домаћи]].&lt;br /&gt;
&lt;br /&gt;
== Лаб вежбе ==&lt;br /&gt;
Исто као и на [[ОО1#Лаб вежбе|ОО1]].&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/Лаб&lt;br /&gt;
| noresultsheader = Тренутно нема модификација.&lt;br /&gt;
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Испитни рокови ==&lt;br /&gt;
Слична прича као и за ОО1.&lt;br /&gt;
&lt;br /&gt;
=== Пробни тестови ===&lt;br /&gt;
Овде се налазе пробни тестови дати за вежбу пред колоквијум на Moodle платформи.&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/Пробни тестови&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Колоквијум 1 ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/К1&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Колоквијум 2 ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/К2&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Испит ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/.* \d+$&lt;br /&gt;
| nottitleregexp  = ОО2/К\d&lt;br /&gt;
| nottitleregexp  = ОО2/Пробни тестови&lt;br /&gt;
| nottitleregexp  = ОО2/Лаб&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Начин оцењивања ==&lt;br /&gt;
Исто као и на ОО1.&lt;br /&gt;
&lt;br /&gt;
== Литература ==&lt;br /&gt;
Предмет је могуће положити са највишом оценом без коришћења литературе. Градиво предмета покривено је у ширини у уџбеницима:&lt;br /&gt;
* &#039;&#039;&#039;[https://akademska-misao.rs/index.html#/info/book/576 Програмски језик Java са решеним задацима]&#039;&#039;&#039; 3. издање, Ласло Краус, &#039;&#039;Издавач: Академска Мисао, Београд&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;[https://akademska-misao.rs/index.html#/info/book/308 Програмски језик C# са решеним задацима]&#039;&#039;&#039; 1. издање, Ласло Краус, &#039;&#039;Издавач: Академска Мисао, Београд&#039;&#039;&lt;br /&gt;
Збирке су од мањег значаја након увођења новог формата колоквијума:&lt;br /&gt;
* &#039;&#039;&#039;[https://akademska-misao.rs/index.html#/info/book/678 Решени задаци из програмског језика Java]&#039;&#039;&#039; 5. издање, Ласло Краус, &#039;&#039;Издавач: Академска Мисао, Београд&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;[https://akademska-misao.rs/index.html#/info/book/9 Решени задаци из програмског језика C#]&#039;&#039;&#039; 2. издање, Ласло Краус, &#039;&#039;Издавач: Академска Мисао, Београд&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Потребна помоћ ==&lt;br /&gt;
* {{zadaci|postavke}}&lt;br /&gt;
** Од користи су такође модификације добијене на лабораторијским вежбама, како би студенти знали отприлике шта их на лабораторијским вежбама чека.&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Четврти семестар]]&lt;br /&gt;
[[Категорија:Обавезни предмети]]&lt;br /&gt;
[[Категорија:ОО2]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%A0%D0%B0%D1%87%D1%83%D0%BD%D0%B0%D1%80%D1%81%D0%BA%D0%B5_%D0%BC%D1%80%D0%B5%D0%B6%D0%B5_1&amp;diff=1891</id>
		<title>Рачунарске мреже 1</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%A0%D0%B0%D1%87%D1%83%D0%BD%D0%B0%D1%80%D1%81%D0%BA%D0%B5_%D0%BC%D1%80%D0%B5%D0%B6%D0%B5_1&amp;diff=1891"/>
		<updated>2021-03-17T12:56:19Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Начин оцењивања */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
&#039;&#039;&#039;Рачунарске мреже 1&#039;&#039;&#039; су обавезан предмет у четвртом семестру.&lt;br /&gt;
&lt;br /&gt;
== Странице ==&lt;br /&gt;
* [https://rti.etf.bg.ac.rs/rti/ir2rm/ Страница предмета]&lt;br /&gt;
* [https://elearning.rcub.bg.ac.rs/moodle/course/view.php?id=1095 &#039;&#039;Moodle&#039;&#039; курс предмета]&lt;br /&gt;
&lt;br /&gt;
== Корисне везе ==&lt;br /&gt;
{{Материјали&lt;br /&gt;
| vuk            = 1--8WGiKMDDu9VxWT_6gr0pNUEGAPPi2K&lt;br /&gt;
| box            = 8376150409&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Предавања ==&lt;br /&gt;
Овде се наводе све битне информације у вези са предавањима на предмету, као и потребни материјали.&lt;br /&gt;
&lt;br /&gt;
== Вежбе ==&lt;br /&gt;
Овде се наводе све битне информације у вези са вежбама на предмету, као и потребни материјали.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
== Пројекат ==&lt;br /&gt;
На предмету од 2020. године постоји пројекат који замењује лабораторијске вежбе. Доступне су следеће поставке пројеката из претходних година:&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = RM1 Projekat \d+.pdf&lt;br /&gt;
| namespace       = File&lt;br /&gt;
| noresultsheader = Тренутно нема поставки пројекта&lt;br /&gt;
| format          = ,\n* [[Медиј:%TITLE%|²{#invoke:String¦sub¦%PAGE%¦24¦-5}²]],,&lt;br /&gt;
| ordermethod     = title&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Испитни рокови ==&lt;br /&gt;
Доступан је [[Рачунарске мреже 1/Испитни пример 2020|испитни пример из 2020. године]] који је пре испита био постављен на &#039;&#039;Moodle&#039;&#039; курсу предмета.&lt;br /&gt;
&lt;br /&gt;
== Начин оцењивања ==&lt;br /&gt;
* &amp;lt;math&amp;gt;K_1, K_2, K_3&amp;lt;/math&amp;gt; — Бодови са првог, другог и трећег колоквијума (0-50)&lt;br /&gt;
* &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; — Бодови са интегралног испита (0-50)&lt;br /&gt;
* &amp;lt;math&amp;gt;T&amp;lt;/math&amp;gt; — Укупни бодови са теоријског дела, рачунају се као &amp;lt;math&amp;gt;T = max\left(\frac{K_1 + K_2 + K_3}{3}, I\right)&amp;lt;/math&amp;gt; (0-50)&lt;br /&gt;
* &amp;lt;math&amp;gt;Z&amp;lt;/math&amp;gt; — Бодови са задатка (0-30)&lt;br /&gt;
* &amp;lt;math&amp;gt;PR&amp;lt;/math&amp;gt; — Бодови са пројекта (0-20)&lt;br /&gt;
* Укупни бодови: &amp;lt;math&amp;gt;P = T + Z + PR&amp;lt;/math&amp;gt;&lt;br /&gt;
* Услов: &amp;lt;math&amp;gt;T \geq 25 \land Z \geq 15&amp;lt;/math&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Бодови&lt;br /&gt;
| &amp;lt;math&amp;gt;P \leq 50&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;50 &amp;lt; P \leq 60&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;60 &amp;lt; P \leq 70&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;70 &amp;lt; P \leq 80&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;80 &amp;lt; P \leq 90&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;90 &amp;lt; P&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! Оцена&lt;br /&gt;
| 5 || 6 || 7 || 8 || 9 || 10&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Четврти семестар]]&lt;br /&gt;
[[Категорија:Обавезни предмети]]&lt;br /&gt;
[[Категорија:Рачунарске мреже 1]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%A0%D0%B0%D1%87%D1%83%D0%BD%D0%B0%D1%80%D1%81%D0%BA%D0%B5_%D0%BC%D1%80%D0%B5%D0%B6%D0%B5_1&amp;diff=1890</id>
		<title>Рачунарске мреже 1</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%A0%D0%B0%D1%87%D1%83%D0%BD%D0%B0%D1%80%D1%81%D0%BA%D0%B5_%D0%BC%D1%80%D0%B5%D0%B6%D0%B5_1&amp;diff=1890"/>
		<updated>2021-03-17T12:54:34Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Начин оцењивања T &amp;gt; 25 (50%)*/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
&#039;&#039;&#039;Рачунарске мреже 1&#039;&#039;&#039; су обавезан предмет у четвртом семестру.&lt;br /&gt;
&lt;br /&gt;
== Странице ==&lt;br /&gt;
* [https://rti.etf.bg.ac.rs/rti/ir2rm/ Страница предмета]&lt;br /&gt;
* [https://elearning.rcub.bg.ac.rs/moodle/course/view.php?id=1095 &#039;&#039;Moodle&#039;&#039; курс предмета]&lt;br /&gt;
&lt;br /&gt;
== Корисне везе ==&lt;br /&gt;
{{Материјали&lt;br /&gt;
| vuk            = 1--8WGiKMDDu9VxWT_6gr0pNUEGAPPi2K&lt;br /&gt;
| box            = 8376150409&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Предавања ==&lt;br /&gt;
Овде се наводе све битне информације у вези са предавањима на предмету, као и потребни материјали.&lt;br /&gt;
&lt;br /&gt;
== Вежбе ==&lt;br /&gt;
Овде се наводе све битне информације у вези са вежбама на предмету, као и потребни материјали.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
== Пројекат ==&lt;br /&gt;
На предмету од 2020. године постоји пројекат који замењује лабораторијске вежбе. Доступне су следеће поставке пројеката из претходних година:&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = RM1 Projekat \d+.pdf&lt;br /&gt;
| namespace       = File&lt;br /&gt;
| noresultsheader = Тренутно нема поставки пројекта&lt;br /&gt;
| format          = ,\n* [[Медиј:%TITLE%|²{#invoke:String¦sub¦%PAGE%¦24¦-5}²]],,&lt;br /&gt;
| ordermethod     = title&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Испитни рокови ==&lt;br /&gt;
Доступан је [[Рачунарске мреже 1/Испитни пример 2020|испитни пример из 2020. године]] који је пре испита био постављен на &#039;&#039;Moodle&#039;&#039; курсу предмета.&lt;br /&gt;
&lt;br /&gt;
== Начин оцењивања ==&lt;br /&gt;
* &amp;lt;math&amp;gt;K_1, K_2, K_3&amp;lt;/math&amp;gt; — Бодови са првог, другог и трећег колоквијума (0-50)&lt;br /&gt;
* &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; — Бодови са интегралног испита (0-50)&lt;br /&gt;
* &amp;lt;math&amp;gt;T&amp;lt;/math&amp;gt; — Укупни бодови са теоријског дела, рачунају се као &amp;lt;math&amp;gt;T = max\left(\frac{K_1 + K_2 + K_3}{3}, I\right)&amp;lt;/math&amp;gt; (0-50)&lt;br /&gt;
* &amp;lt;math&amp;gt;Z&amp;lt;/math&amp;gt; — Бодови са задатка (0-30)&lt;br /&gt;
* &amp;lt;math&amp;gt;PR&amp;lt;/math&amp;gt; — Бодови са пројекта (0-20)&lt;br /&gt;
* Укупни бодови: &amp;lt;math&amp;gt;P = T + Z + PR&amp;lt;/math&amp;gt;&lt;br /&gt;
* Услов: &amp;lt;math&amp;gt;T \geq 25 \land Z \geq 50&amp;lt;/math&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Бодови&lt;br /&gt;
| &amp;lt;math&amp;gt;P \leq 50&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;50 &amp;lt; P \leq 60&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;60 &amp;lt; P \leq 70&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;70 &amp;lt; P \leq 80&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;80 &amp;lt; P \leq 90&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;90 &amp;lt; P&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! Оцена&lt;br /&gt;
| 5 || 6 || 7 || 8 || 9 || 10&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Четврти семестар]]&lt;br /&gt;
[[Категорија:Обавезни предмети]]&lt;br /&gt;
[[Категорија:Рачунарске мреже 1]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%9E2&amp;diff=1751</id>
		<title>ОО2</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%9E2&amp;diff=1751"/>
		<updated>2021-02-19T13:30:37Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Домаћи */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
&#039;&#039;&#039;Објектно оријентисано програмирање 2&#039;&#039;&#039; је обавезан предмет у четвртом семестру, настављајући се на [[ОО1|Објектно оријентисано програмирање 1]].&lt;br /&gt;
&lt;br /&gt;
== Странице ==&lt;br /&gt;
* [https://rti.etf.bg.ac.rs/rti/ir2oo2/ Страница предмета]&lt;br /&gt;
&amp;lt;!--* [http://elearning.rcub.bg.ac.rs Moodle курс]--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Корисне везе ==&lt;br /&gt;
{{Материјали&lt;br /&gt;
| suetf          = ir2oo2&lt;br /&gt;
| vuk            = 1tsApPhN_66xrdBYYFg_4PAivufJ4cBVQ&lt;br /&gt;
| box            = 8381893109&lt;br /&gt;
}}&lt;br /&gt;
* [https://github.com/nikolabebic95/Fakultet/tree/master/Godina2/OO2 Бебићев гитхуб]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Предавања ==&lt;br /&gt;
Овде се наводе све битне информације у вези са предавањима на предмету, као и потребни материјали.&lt;br /&gt;
&lt;br /&gt;
== Вежбе ==&lt;br /&gt;
Овде се наводе све битне информације у вези са вежбама на предмету, као и потребни материјали.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Домаћи ==&lt;br /&gt;
Погледати [[ОО1#Домаћи]].&lt;br /&gt;
&lt;br /&gt;
== Лаб вежбе ==&lt;br /&gt;
Исто као и на ОО1.&lt;br /&gt;
&lt;br /&gt;
== Испитни рокови ==&lt;br /&gt;
Слична прича као и за ОО1.&lt;br /&gt;
=== Пробни тестови ===&lt;br /&gt;
Овде се налазе пробни тестови дати за вежбу пред колоквијум на Moodle платформи.&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/Пробни тестови&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]]\n,,&lt;br /&gt;
}}&lt;br /&gt;
=== Колоквијум 1 ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/К1&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]]\n,,&lt;br /&gt;
}}&lt;br /&gt;
=== Колоквијум 2 ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/К2&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]]\n,,&lt;br /&gt;
}}&lt;br /&gt;
=== Испит ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОО2/.* \d+$&lt;br /&gt;
| nottitleregexp  = ОО2/К\d&lt;br /&gt;
| nottitleregexp  = ОО2/Пробни тестови&lt;br /&gt;
| nottitleregexp  = ОО2/Лаб&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]]\n,,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Начин оцењивања ==&lt;br /&gt;
Исто као и на ОО1.&lt;br /&gt;
&lt;br /&gt;
== Литература ==&lt;br /&gt;
Предмет је могуће положити са највишом оценом без коришћења литературе. Градиво предмета покривено је у ширини у уџбеницима:&lt;br /&gt;
* &#039;&#039;&#039;[https://akademska-misao.rs/index.html#/info/book/576 Програмски језик Java са решеним задацима]&#039;&#039;&#039; 3. издање, Ласло Краус, &#039;&#039;Издавач: Академска Мисао, Београд&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;[https://akademska-misao.rs/index.html#/info/book/308 Програмски језик C# са решеним задацима]&#039;&#039;&#039; 1. издање, Ласло Краус, &#039;&#039;Издавач: Академска Мисао, Београд&#039;&#039;&lt;br /&gt;
Збирке су од мањег значаја након увођења новог формата колоквијума:&lt;br /&gt;
* &#039;&#039;&#039;[https://akademska-misao.rs/index.html#/info/book/678 Решени задаци из програмског језика Java]&#039;&#039;&#039; 5. издање, Ласло Краус, &#039;&#039;Издавач: Академска Мисао, Београд&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;[https://akademska-misao.rs/index.html#/info/book/9 Решени задаци из програмског језика C#]&#039;&#039;&#039; 2. издање, Ласло Краус, &#039;&#039;Издавач: Академска Мисао, Београд&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Четврти семестар]]&lt;br /&gt;
[[Категорија:Обавезни предмети]]&lt;br /&gt;
[[Категорија:ОО2]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22&amp;diff=1659</id>
		<title>ОРТ2</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22&amp;diff=1659"/>
		<updated>2021-02-09T20:51:26Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Начин оцењивања */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
&#039;&#039;&#039;Основи рачунарске технике 2&#039;&#039;&#039; је обавезан предмет у трећем семестру.&lt;br /&gt;
&lt;br /&gt;
== Странице ==&lt;br /&gt;
* [https://rti.etf.bg.ac.rs/rti/ir2ort2/ Страница предмета]&lt;br /&gt;
* [https://elearning.rcub.bg.ac.rs/moodle/course/view.php?id=604 Moodle курс]&lt;br /&gt;
&lt;br /&gt;
== Корисне везе ==&lt;br /&gt;
{{Материјали&lt;br /&gt;
| vuk = 1-4dW6LftaVw6CtwuuXwUEVrnrH9TgfER&lt;br /&gt;
| box = 8374329465&lt;br /&gt;
}}&lt;br /&gt;
* [https://sourceforge.net/projects/circuit/ &#039;&#039;Logisim&#039;&#039;] — Симулатор дигиталне логике који се користи при изради пројекта, као и за решења рокова на викију.&lt;br /&gt;
* &#039;&#039;[[github:reds-heig/logisim-evolution|Logisim-evolution]]&#039;&#039; — Унапређена верзија &#039;&#039;Logisim&#039;&#039;&lt;br /&gt;
* [https://mega.nz/folder/As1A1TZY#z-SnQ4VsucNAwTLQgZjFug Рокови и решења (РТИ)]&lt;br /&gt;
&lt;br /&gt;
== Пројекат ==&lt;br /&gt;
Пројекат се од 2020/21. године ради на &#039;&#039;Logisim&#039;&#039; симулатору дигиталне логике. У одељку [[#Корисне везе|Корисне везе]] изнад доступне су везе за преузимање &#039;&#039;Logisim&#039;&#039; и &#039;&#039;Logisim-evolution&#039;&#039; симулатора, а потребне су и ЕТФ библиотеке са компонентама које су доступне за:&lt;br /&gt;
* Стари &#039;&#039;Logisim&#039;&#039;, на страници предмета под одељком &amp;quot;Пројекат&amp;quot;&lt;br /&gt;
* [[Медиј:ORT2 ETF-evolution.circ|&#039;&#039;Logisim-evolution&#039;&#039;]] - препоручује се именовање преузете датотеке као &amp;lt;code&amp;gt;ETF-evolution.circ&amp;lt;/code&amp;gt;&lt;br /&gt;
Ове библиотеке је најбоље поставити у исти директоријум као шеме које преузимате са викија, али ће вас &#039;&#039;Logisim&#039;&#039; свакако питати да изаберете путању до ових библиотека уколико то не урадите.&lt;br /&gt;
&lt;br /&gt;
== Испитни рокови ==&lt;br /&gt;
=== Колоквијум 1 ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОРТ2/К1&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦6¦-1}²]]\n,,&lt;br /&gt;
}}&lt;br /&gt;
=== Колоквијум 2 ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОРТ2/К2&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦6¦-1}²]]\n,,&lt;br /&gt;
}}&lt;br /&gt;
=== Колоквијум 3 ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОРТ2/К3&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦6¦-1}²]]\n,,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Лаб вежбе ==&lt;br /&gt;
На предмету се одржавају две лабораторијске вежбе од којих свака носи по 5 бодова. Лабораторијска вежба почиње улазним тестом од 10 минута и 3 питања, за који се примери могу наћи на страници предмета у одељку &amp;quot;Лабораторијске вежбе&amp;quot; (питалице су истог облика као на лабораторијској вежби). После улазног теста се прелази на рад у симулатору и за тај део се пишу одговори на задата питања у вези са задатим програмом у документу који се на крају вежбе предаје на мрежни диск. Током лабораторијске вежбе демонстратор такође испитује студента за 3 бода. Уколико је студент на улазном тесту освојио 2 бода, на бодове демонстратора се додаје 1 бод, а уколико је освојио 3 бода, на бодове демонстратора се додају 2 бода. Ако је студент освојио 0 или 1 бод на улазном тесту, не наставља с радом лабораторијске вежбе и добија 0 бодова. Збир бодова са улазног теста и од демонстратора се скалира са процентом урађености дела лабораторијске вежбе са симулатором, и тако се израчунавају коначни бодови на тој лабораторијској вежби.&lt;br /&gt;
&lt;br /&gt;
Укратко:&lt;br /&gt;
* &amp;lt;math&amp;gt;T&amp;lt;/math&amp;gt; — Бодови освојени на улазном тесту (од 0 до 3)&lt;br /&gt;
* &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; — Бодови освојени од демонстратора (од 0 до 3)&lt;br /&gt;
* &amp;lt;math&amp;gt;S&amp;lt;/math&amp;gt; — Проценат урађености дела лабораторијске вежбе са симулатором (од 0 до 1)&lt;br /&gt;
* Коначна оцена: &amp;lt;math&amp;gt;\left\{\begin{array}{ll} 0 &amp;amp; T &amp;lt; 2 \\ (T - 1 + D) \cdot S &amp;amp; T \geq 2 \end{array}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Начин оцењивања ==&lt;br /&gt;
* &#039;&#039;&#039;K1&#039;&#039;&#039;, &#039;&#039;&#039;K2&#039;&#039;&#039;  — Бодови са првог и другог колоквијума, носе по 20 бодова.&lt;br /&gt;
* &#039;&#039;&#039;L1&#039;&#039;&#039;, &#039;&#039;&#039;L2&#039;&#039;&#039; — Бодови са лабораторијских вежби, носе по 5 бодова.&lt;br /&gt;
* &#039;&#039;&#039;I&#039;&#039;&#039; - Испитни део, носи 20 бодова.&lt;br /&gt;
* &#039;&#039;&#039;Projekat&#039;&#039;&#039; — Носи 30 бодова.&lt;br /&gt;
* &#039;&#039;&#039;P&#039;&#039;&#039; — Коначан број бодова: &amp;lt;math&amp;gt;P = K_1 + K_2 + I + L_1 + L_2 + Projekat &amp;lt;/math&amp;gt;.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Бодови&lt;br /&gt;
| &amp;lt;math&amp;gt;P \leq 50&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;50 &amp;lt; P \leq 60&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;60 &amp;lt; P \leq 70&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;70 &amp;lt; P \leq 80&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;80 &amp;lt; P \leq 90&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;90 &amp;lt; P&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! Оцена&lt;br /&gt;
| 5 || 6 || 7 || 8 || 9 || 10&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Трећи семестар]]&lt;br /&gt;
[[Категорија:Обавезни предмети]]&lt;br /&gt;
[[Категорија:ОРТ2]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22&amp;diff=1658</id>
		<title>ОРТ2</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%A0%D0%A22&amp;diff=1658"/>
		<updated>2021-02-09T20:50:48Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Начин оцењивања */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
&#039;&#039;&#039;Основи рачунарске технике 2&#039;&#039;&#039; је обавезан предмет у трећем семестру.&lt;br /&gt;
&lt;br /&gt;
== Странице ==&lt;br /&gt;
* [https://rti.etf.bg.ac.rs/rti/ir2ort2/ Страница предмета]&lt;br /&gt;
* [https://elearning.rcub.bg.ac.rs/moodle/course/view.php?id=604 Moodle курс]&lt;br /&gt;
&lt;br /&gt;
== Корисне везе ==&lt;br /&gt;
{{Материјали&lt;br /&gt;
| vuk = 1-4dW6LftaVw6CtwuuXwUEVrnrH9TgfER&lt;br /&gt;
| box = 8374329465&lt;br /&gt;
}}&lt;br /&gt;
* [https://sourceforge.net/projects/circuit/ &#039;&#039;Logisim&#039;&#039;] — Симулатор дигиталне логике који се користи при изради пројекта, као и за решења рокова на викију.&lt;br /&gt;
* &#039;&#039;[[github:reds-heig/logisim-evolution|Logisim-evolution]]&#039;&#039; — Унапређена верзија &#039;&#039;Logisim&#039;&#039;&lt;br /&gt;
* [https://mega.nz/folder/As1A1TZY#z-SnQ4VsucNAwTLQgZjFug Рокови и решења (РТИ)]&lt;br /&gt;
&lt;br /&gt;
== Пројекат ==&lt;br /&gt;
Пројекат се од 2020/21. године ради на &#039;&#039;Logisim&#039;&#039; симулатору дигиталне логике. У одељку [[#Корисне везе|Корисне везе]] изнад доступне су везе за преузимање &#039;&#039;Logisim&#039;&#039; и &#039;&#039;Logisim-evolution&#039;&#039; симулатора, а потребне су и ЕТФ библиотеке са компонентама које су доступне за:&lt;br /&gt;
* Стари &#039;&#039;Logisim&#039;&#039;, на страници предмета под одељком &amp;quot;Пројекат&amp;quot;&lt;br /&gt;
* [[Медиј:ORT2 ETF-evolution.circ|&#039;&#039;Logisim-evolution&#039;&#039;]] - препоручује се именовање преузете датотеке као &amp;lt;code&amp;gt;ETF-evolution.circ&amp;lt;/code&amp;gt;&lt;br /&gt;
Ове библиотеке је најбоље поставити у исти директоријум као шеме које преузимате са викија, али ће вас &#039;&#039;Logisim&#039;&#039; свакако питати да изаберете путању до ових библиотека уколико то не урадите.&lt;br /&gt;
&lt;br /&gt;
== Испитни рокови ==&lt;br /&gt;
=== Колоквијум 1 ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОРТ2/К1&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦6¦-1}²]]\n,,&lt;br /&gt;
}}&lt;br /&gt;
=== Колоквијум 2 ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОРТ2/К2&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦6¦-1}²]]\n,,&lt;br /&gt;
}}&lt;br /&gt;
=== Колоквијум 3 ===&lt;br /&gt;
{{#dpl:&lt;br /&gt;
| titleregexp     = ОРТ2/К3&lt;br /&gt;
| noresultsheader = Тренутно нема решених рокова.&lt;br /&gt;
| format          = ,* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦6¦-1}²]]\n,,&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Лаб вежбе ==&lt;br /&gt;
На предмету се одржавају две лабораторијске вежбе од којих свака носи по 5 бодова. Лабораторијска вежба почиње улазним тестом од 10 минута и 3 питања, за који се примери могу наћи на страници предмета у одељку &amp;quot;Лабораторијске вежбе&amp;quot; (питалице су истог облика као на лабораторијској вежби). После улазног теста се прелази на рад у симулатору и за тај део се пишу одговори на задата питања у вези са задатим програмом у документу који се на крају вежбе предаје на мрежни диск. Током лабораторијске вежбе демонстратор такође испитује студента за 3 бода. Уколико је студент на улазном тесту освојио 2 бода, на бодове демонстратора се додаје 1 бод, а уколико је освојио 3 бода, на бодове демонстратора се додају 2 бода. Ако је студент освојио 0 или 1 бод на улазном тесту, не наставља с радом лабораторијске вежбе и добија 0 бодова. Збир бодова са улазног теста и од демонстратора се скалира са процентом урађености дела лабораторијске вежбе са симулатором, и тако се израчунавају коначни бодови на тој лабораторијској вежби.&lt;br /&gt;
&lt;br /&gt;
Укратко:&lt;br /&gt;
* &amp;lt;math&amp;gt;T&amp;lt;/math&amp;gt; — Бодови освојени на улазном тесту (од 0 до 3)&lt;br /&gt;
* &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; — Бодови освојени од демонстратора (од 0 до 3)&lt;br /&gt;
* &amp;lt;math&amp;gt;S&amp;lt;/math&amp;gt; — Проценат урађености дела лабораторијске вежбе са симулатором (од 0 до 1)&lt;br /&gt;
* Коначна оцена: &amp;lt;math&amp;gt;\left\{\begin{array}{ll} 0 &amp;amp; T &amp;lt; 2 \\ (T - 1 + D) \cdot S &amp;amp; T \geq 2 \end{array}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Начин оцењивања ==&lt;br /&gt;
* &#039;&#039;&#039;K1&#039;&#039;&#039;, &#039;&#039;&#039;K2&#039;&#039;&#039;  — Бодови са првог и другог колоквијума, носе по 20 бодова.&lt;br /&gt;
* &#039;&#039;&#039;L1&#039;&#039;&#039;, &#039;&#039;&#039;L2&#039;&#039;&#039; — Бодови са лабораторијских вежби, носе по 5 бодова.&lt;br /&gt;
* &#039;&#039;&#039;I&#039;&#039;&#039; - Испитни део, носи 20 бодова.&lt;br /&gt;
* &#039;&#039;&#039;Пројекат&#039;&#039;&#039; — Носи 30 бодова.&lt;br /&gt;
* &#039;&#039;&#039;P&#039;&#039;&#039; — Коначан број бодова: &amp;lt;math&amp;gt;P = K_1 + K_2 + I + L_1 + L_2 + Пројекат&amp;lt;/math&amp;gt;.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Бодови&lt;br /&gt;
| &amp;lt;math&amp;gt;P \leq 50&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;50 &amp;lt; P \leq 60&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;60 &amp;lt; P \leq 70&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;70 &amp;lt; P \leq 80&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;80 &amp;lt; P \leq 90&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;90 &amp;lt; P&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! Оцена&lt;br /&gt;
| 5 || 6 || 7 || 8 || 9 || 10&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Трећи семестар]]&lt;br /&gt;
[[Категорија:Обавезни предмети]]&lt;br /&gt;
[[Категорија:ОРТ2]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9A%D0%BE%D1%80%D0%B8%D1%81%D0%BD%D0%B8%D0%BA:Mladen_%C5%BDurki%C4%87&amp;diff=1483</id>
		<title>Корисник:Mladen Žurkić</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9A%D0%BE%D1%80%D0%B8%D1%81%D0%BD%D0%B8%D0%BA:Mladen_%C5%BDurki%C4%87&amp;diff=1483"/>
		<updated>2020-12-08T21:32:05Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
Kontakt:&lt;br /&gt;
* [https://discordapp.com Discord:] &amp;lt;code&amp;gt;Mostone#8424&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pozdrav!&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9F%D0%9C%D0%A2/%D0%9A2_2019&amp;diff=1482</id>
		<title>ПМТ/К2 2019</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9F%D0%9C%D0%A2/%D0%9A2_2019&amp;diff=1482"/>
		<updated>2020-12-08T21:30:16Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Задатак 1 t_0 = */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
&lt;br /&gt;
== Питање 1 ==&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &#039;&#039;&#039;(3п)&#039;&#039;&#039; Које особине има идеалан систем за пренос? Описати идеални систем за пренос у временском и спектралном домену.&lt;br /&gt;
# &#039;&#039;&#039;(2п)&#039;&#039;&#039; Одредити минималан проток сигнала добијеног применом временског мултиплексирања &amp;lt;math&amp;gt;N = 12&amp;lt;/math&amp;gt; сигнала и ИКМ, ако је максимална учестаност у спектру сваког од сигнала &amp;lt;math&amp;gt;f_m = 10kHz&amp;lt;/math&amp;gt;, а примењена је равномерна квантизација са &amp;lt;math&amp;gt;q = 512&amp;lt;/math&amp;gt; нивоа.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Питање 2 ==&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &#039;&#039;&#039;(2п)&#039;&#039;&#039; Нацртати двострани и једнострани амплитудски спектар сигнала &amp;lt;math&amp;gt;x(t)=U_1 \cos(2\pi f_1 t)&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;U_1=6V&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;f_1=400Hz&amp;lt;/math&amp;gt;. Нацртати спектар снаге сигнала &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt;.&lt;br /&gt;
# &#039;&#039;&#039;(3п)&#039;&#039;&#039; Сигнал &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; добијен је идеалним одабирањем сигнала &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt;, при чему је учестаност одабирања једнака &amp;lt;math&amp;gt;f_1=1000Hz&amp;lt;/math&amp;gt;. Нацртати амплитудски спектар сигнала &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; у опсегу од 0Hz до 3000Hz. Детаљно објаснити на који начин се на основу дискретизованог сигнала &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; може извршити реконструкција сигнала &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Задатак 1 ==&lt;br /&gt;
Дат је сигнал &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; кога чини периодична униполарна поворка правоугаоних импулса периоде &amp;lt;math&amp;gt;T=0.5ms&amp;lt;/math&amp;gt;, времена трајања импулса &amp;lt;math&amp;gt;r=0.1ms&amp;lt;/math&amp;gt; и амплитуде &amp;lt;math&amp;gt;E=1V&amp;lt;/math&amp;gt;. Време почетка импулса је &amp;lt;math&amp;gt;t_0 = -\tau/2&amp;lt;/math&amp;gt;. Познато да је двострани спектар поворке правоугаоних импулса описан изразом&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;X_n = \frac{E\tau}{T}\frac{\sin(\pi n\tau / T)}{(\pi n\tau / T)}.&amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &#039;&#039;&#039;(3п)&#039;&#039;&#039; Нацртати облик амплитудског спектра сигнала &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; у опсегу учестаности до 10kHz. Колико се спектралних компоненти налази у опсегу од 3.4kHz до 8.9kHz (навести учестаност сваке компоненте)? Написати израз за укупну снагу компонената које се налазе у овом опсегу.&lt;br /&gt;
# &#039;&#039;&#039;(2п)&#039;&#039;&#039; Одредити средњу снагу сигнала &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt;, као и средњу снагу сигнала &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; који се добија пропуштањем &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; кроз филтар пропусних ниских учестаности (NF), чија је амплитудска карактеристика описана са&lt;br /&gt;
#: &amp;lt;math&amp;gt;\left|H_{NF}(jf)\right| = \left\{\begin{array}{ll}&lt;br /&gt;
    1, &amp;amp; f_z \leq 3800 Hz, \\&lt;br /&gt;
    0, &amp;amp; ostalo.&lt;br /&gt;
\end{array}&lt;br /&gt;
\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Задатак 2 ==&lt;br /&gt;
Сигнал &amp;lt;math&amp;gt;p(t)&amp;lt;/math&amp;gt; чија максимална учестаност у спектру износи 20kHz преноси се поступком импулсне кодне модулације (ИКМ). Сигнал &amp;lt;math&amp;gt;p(t)&amp;lt;/math&amp;gt; се одабире учестаношћу која је 10% већа од минималне учестаности, одређене теоремом одабирања. Расподела амплитуда одбирака сигнала је униформна у интервалу &amp;lt;math&amp;gt;[-4V, +4V]&amp;lt;/math&amp;gt;. Квантизација одбирака сигнала је униформна са &amp;lt;math&amp;gt;q=16&amp;lt;/math&amp;gt; квантизационих нивоа. Кодирање сигнала врши се простим бинарним кодом почевши од најниже квантизационе вредности.&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &#039;&#039;&#039;(1п)&#039;&#039;&#039; Одредити учестаност одабирања сигнала &amp;lt;math&amp;gt;p(t)&amp;lt;/math&amp;gt; и проток &amp;lt;math&amp;gt;V_b&amp;lt;/math&amp;gt; добијеног ИКМ сигнала.&lt;br /&gt;
# &#039;&#039;&#039;(2п)&#039;&#039;&#039; Одредити вредност три најнижа и три највиша квантизациона нивоа, као и одговарајуће кодне речи на излазу кодера.&lt;br /&gt;
# &#039;&#039;&#039;(1п)&#039;&#039;&#039; Израчунати однос сигнал/шум квантизације (у dB).&lt;br /&gt;
# &#039;&#039;&#039;(1п)&#039;&#039;&#039; Одредити проток &amp;lt;math&amp;gt;V_{b,m}&amp;lt;/math&amp;gt; ИКМ сигнала, ако се врши неравномерна квантизација са &amp;lt;math&amp;gt;q_n=32&amp;lt;/math&amp;gt;, а учестаност одабирања није промењена.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Рокови]]&lt;br /&gt;
[[Категорија:ПМТ]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9A%D0%BE%D1%80%D0%B8%D1%81%D0%BD%D0%B8%D0%BA:Mladen_%C5%BDurki%C4%87&amp;diff=1479</id>
		<title>Корисник:Mladen Žurkić</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9A%D0%BE%D1%80%D0%B8%D1%81%D0%BD%D0%B8%D0%BA:Mladen_%C5%BDurki%C4%87&amp;diff=1479"/>
		<updated>2020-12-08T12:28:30Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: Нова страница: Mladen Žurkić  Kontakt: * [https://discordapp.com Discord:] &amp;lt;code&amp;gt;Mostone#8424&amp;lt;/code&amp;gt;  Pozdrav!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mladen Žurkić&lt;br /&gt;
&lt;br /&gt;
Kontakt:&lt;br /&gt;
* [https://discordapp.com Discord:] &amp;lt;code&amp;gt;Mostone#8424&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pozdrav!&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%94%D0%B0%D1%82%D0%BE%D1%82%D0%B5%D0%BA%D0%B0:PMT_1._doma%C4%87i_2020.pdf&amp;diff=1423</id>
		<title>Датотека:PMT 1. domaći 2020.pdf</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%94%D0%B0%D1%82%D0%BE%D1%82%D0%B5%D0%BA%D0%B0:PMT_1._doma%C4%87i_2020.pdf&amp;diff=1423"/>
		<updated>2020-11-15T18:34:09Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: Нова страница: {{file | description =  }}&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{file&lt;br /&gt;
| description = &lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%90%D0%A1%D0%9F2/%D0%9A1_2017&amp;diff=1337</id>
		<title>АСП2/К1 2017</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%90%D0%A1%D0%9F2/%D0%9A1_2017&amp;diff=1337"/>
		<updated>2020-11-03T13:39:36Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Zapis while uslova, kao što je kod svage bin pr.*/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
[https://rti.etf.bg.ac.rs/rti/ri3sp/rokovi/13S112ASP2_K1_1718.pdf Zadaci sa stranice predmeta.]&lt;br /&gt;
&lt;br /&gt;
== 1. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Uporediti metode binarne i višestruke sekvencijalne pretrage nad uređenim nizom celih brojeva 3, 7, 10, 11, 18, 22, 25, 27, 39, 41, 45, 48, 56, 64, 65, 78, 86. Odrediti broj poređenja pri pretrazi ključeva 25 i 44 za obe tehnike.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Tabela iz postavke zadatka.&lt;br /&gt;
! 0 !! 1 !! 2 !! 3 !! 4 !! 5 !! 6 !! 7 !! 8 !! 9 !! 10 !! 11 !! 12 !! 13 !! 14 !! 15 !! 16&lt;br /&gt;
|-&lt;br /&gt;
| 3 || 7 || 10 || 11 || 18 || 22 || 25 || 27 || 39 || 41 || 45 || 48 || 56 || 64 || 65 || 78 || 86&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Višestrukom sekvencijalnom pretragom prvo idemo od ključa 3 do ključa 25, čime radimo 7 poređenja na nejednakost i jedno poređenje na jednakost, a zatim idemo od ključa 25 do ključa 45 čime radimo 5 poređenja na nejednakost i jedno poređenje na jednakost, što ukupno daje 14 poređenja na vrednost ključa.&lt;br /&gt;
&lt;br /&gt;
Binarnom pretragom prvo gađamo ključ 39 (2), pa 11 (2), pa 22 (2) i na kraju 25 (1), a zatim u drugoj pretrazi 39 (2), pa 56 (2), pa 45 (2), pa 41 (2) i tu se pretraga završava neuspešno, čime vršimo 15 poređenja na vrednost ključa.&lt;br /&gt;
&lt;br /&gt;
== 2. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Funkciji FIND_BST prosleđen je pokazivač root na koren jednog kompletnog binarnog stabla. Struktura čvora ovog stabla osim ključa, pokazivača na levo i desno podstablo, sadrži i pokazivač na oca. Implementirati iterativnu funkciju FIND_BST čija povratna vrednost treba da bude pokazivač na koren onog podstabla koje predstavlja stablo binarne pretrage. Ukoliko postoji više ovakvih podstabala, treba vratiti pokazivač na koren onog podstabla sa maksimalnim brojem čvorova. Proveru da li je neko podstablo stablo binarne pretrage izdvojiti u posebnu funkciju. Obavezno kratko prokomentarisati rešenje.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Ovde nam je najpogodnije da &#039;&#039;postorder&#039;&#039; obilaskom određujemo da li su čvorovi binarna stabla pretraživanja, jer tako kad stignemo do viših čvorova već znamo da li su im deca ispravna binarna stabla pretraživanja. S tim u vidu, implementacija tražene funkcije za proveru izgleda ovako:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
IS BST(node, left_max, right_min)&lt;br /&gt;
if left_max &amp;lt; key(node) &amp;lt; right_min then&lt;br /&gt;
    return true&lt;br /&gt;
end_if&lt;br /&gt;
return false&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Kao pozivne argumente ove funkcije primamo najveći ključ iz levog podstabla i najmanji ključ iz desnog podstabla, što znači da bi trebalo da te podatke čuvamo u nekom redu kako bismo iz roditelja mogli da tim informacijama pristupimo. Obilazak kreće od reda listova i kreće se tako što svaki list gura svog roditelja u red, a duplikati roditelja se izbacuju iz reda prilikom njihovog obilaska.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
FIND BST(root)&lt;br /&gt;
if root = nil then&lt;br /&gt;
    return nil&lt;br /&gt;
end_if&lt;br /&gt;
last_bst = nil&lt;br /&gt;
QUEUE_INIT(Q_valid_bst)&lt;br /&gt;
QUEUE_INIT(Q_nodes)&lt;br /&gt;
QUEUE_INIT(Q_inv_nodes)&lt;br /&gt;
QUEUE_INIT(Q_max)&lt;br /&gt;
QUEUE_INIT(Q_min)&lt;br /&gt;
INSERT(Q_nodes, root)&lt;br /&gt;
while (not QUEUE_EMPTY(Q_nodes)) do&lt;br /&gt;
    node = DELETE(Q_nodes)&lt;br /&gt;
    if left(node) ≠ nil then&lt;br /&gt;
        INSERT(Q_nodes, left(node))&lt;br /&gt;
        INSERT(Q_nodes, right(node))&lt;br /&gt;
    else&lt;br /&gt;
        INSERT(Q_inv_nodes, node)&lt;br /&gt;
    end_if&lt;br /&gt;
end_while&lt;br /&gt;
while (not QUEUE_EMPTY(Q_inv_nodes)) do&lt;br /&gt;
    node = DELETE(Q_inv_nodes)&lt;br /&gt;
    if left(node) = nil then&lt;br /&gt;
        valid_bst = true&lt;br /&gt;
        curr_max = key(node)&lt;br /&gt;
        curr_min = key(node)&lt;br /&gt;
    else&lt;br /&gt;
        DELETE(Q_inv_nodes)&lt;br /&gt;
        left_valid = DELETE(Q_valid_bst)&lt;br /&gt;
        right_valid = DELETE(Q_valid_bst)&lt;br /&gt;
        left_min = DELETE(Q_min)&lt;br /&gt;
        right_min = DELETE(Q_min)&lt;br /&gt;
        left_max = DELETE(Q_max)&lt;br /&gt;
        right_max = DELETE(Q_max)&lt;br /&gt;
        if left_valid and right_valid and IS_BST(node, left_max, right_min) then&lt;br /&gt;
            valid_bst = true&lt;br /&gt;
        else&lt;br /&gt;
            valid_bst = false&lt;br /&gt;
        end_if&lt;br /&gt;
        curr_max = max(key(node), left_max, right_max)&lt;br /&gt;
        curr_min = min(key(node), left_min, right_min)&lt;br /&gt;
    end_if&lt;br /&gt;
    if valid_bst then&lt;br /&gt;
        last_bst = node&lt;br /&gt;
    end_if&lt;br /&gt;
    INSERT(Q_valid_bst, valid_bst)&lt;br /&gt;
    INSERT(Q_inv_nodes, parent(node))&lt;br /&gt;
    INSERT(Q_min, curr_min)&lt;br /&gt;
    INSERT(Q_max, curr_max)&lt;br /&gt;
end_while&lt;br /&gt;
return last_bst&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 3. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
[[Датотека:ASP2 K1 2018 zadatak 3 stablo.png|thumb|Crveno-crno stablo iz postavke zadatka.]]&lt;br /&gt;
Neka se posmatra crveno-crno stablo sa slike. Prikazati izgled stabla po koracima nakon umetanja ključeva 7 i 10.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
&lt;br /&gt;
== 4. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Koristeći modifikovanu binarnu pretragu, napisati u pseudukodu iterativnu funkciju koja vraća poziciju prethodnika i sledbenika zadate vrednosti &#039;&#039;k&#039;&#039; u zadatom uređenom nizu &#039;&#039;arr&#039;&#039;. Vrednost k ne mora postojati u nizu.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Ovde se pretpostavlja da se ključevi u nizu ne mogu ponavljati.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
ARR PRED SUCC(arr, k)&lt;br /&gt;
while (low ≤ high) do&lt;br /&gt;
  mid = (high + low) / 2&lt;br /&gt;
  if arr[mid] = k then&lt;br /&gt;
      return mid-1, mid+1&lt;br /&gt;
  else if arr[mid] &amp;lt; k then&lt;br /&gt;
      low = mid + 1&lt;br /&gt;
  else&lt;br /&gt;
      high = mid - 1&lt;br /&gt;
  end_if&lt;br /&gt;
end_while&lt;br /&gt;
if arr[mid] &amp;lt; k then&lt;br /&gt;
  return mid, mid+1&lt;br /&gt;
else&lt;br /&gt;
  return mid-1, mid&lt;br /&gt;
end_if&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 5. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Neka se u prazno AVL stablo redom ubacuju ključevi 12, 43, 23, 55, 72, 2, 60, 57, 89, a zatim se brišu ključevi 12, 23 i 57. Prilikom brisanja koristiti &#039;&#039;&#039;prethodnika&#039;&#039;&#039;. Prikazati izgled stabla nakon svakog izvršenog koraka pri umetanju i brisanju&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Konačno stablo je:&lt;br /&gt;
      60&lt;br /&gt;
     /  \&lt;br /&gt;
   43    72&lt;br /&gt;
  /  \     \&lt;br /&gt;
 2   55     89&lt;br /&gt;
Postupak možete simulirati u nekom od [https://www.cs.usfca.edu/~galles/visualization/AVLtree.html simulatora] za AVL stabla.&lt;br /&gt;
&lt;br /&gt;
== 6. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Napisati u pseudokodu funkciju koja efikasno proverava da li je dato binarno stablo pretrage &#039;&#039;bst&#039;&#039; balansirano po AVL kriterijumu. Pored pokazivača na oca i levog i desnog sina, čvor stabla sadrži i podatke o visini levog i desnog podstabla.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Pošto ne moramo da izračunavamo visine podstabla, ovaj zadatak se svodi na posećivanje svih čvorova kako bismo uporedili sve visine levih i desnih podstabala u jednom čvoru. Ukoliko se u nekom razlikuju za više od 1, stablo nije balansirano po AVL kriterijumu.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
CHECK AVL BALANCED(bst)&lt;br /&gt;
INIT_STACK(S)&lt;br /&gt;
PUSH(S, bst)&lt;br /&gt;
while (not STACK_EMPTY(S)) do&lt;br /&gt;
    node = POP(S)&lt;br /&gt;
    if abs(height_l(node) - height_r(node)) &amp;gt; 1 then&lt;br /&gt;
        return false&lt;br /&gt;
    end_if&lt;br /&gt;
    if height_l(node) &amp;gt; 2 then&lt;br /&gt;
        PUSH(S, left(node))&lt;br /&gt;
    end_if&lt;br /&gt;
    if height_r(node) &amp;gt; 2 then&lt;br /&gt;
        PUSH(S, right(node))&lt;br /&gt;
    end_if&lt;br /&gt;
end_while&lt;br /&gt;
return true&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 7. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Suboptimalno stablo binarnog pretraživanja&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Objasniti algoritam za određivanje suboptimalnog stabla binarnog pretraživanja koji je zasnovan na težinama podstabala.&lt;br /&gt;
# Ako su za &#039;&#039;n&#039;&#039; ključeva date verovatnoće uspešnog pretraživanja u nizu &#039;&#039;P&#039;&#039;, a neuspešnog u nizu &#039;&#039;Q&#039;&#039;, napisati efikasnu implementaciju funkcije koja nalazi samo koren tog stabla.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Određivanje suboptimalnog stabla binarnog pretraživanja zasnovanog na težinama podstabala, gde je težina podstabla koje uključuje čvorove na pozicijama od &amp;lt;math&amp;gt;i+1&amp;lt;/math&amp;gt; do &amp;lt;math&amp;gt;j&amp;lt;/math&amp;gt; u tabeli definisana kao &amp;lt;math&amp;gt;w_{ij} = q_i + p_{i+1} + q_{i+1} + ... + p_j + q_j&amp;lt;/math&amp;gt;, se vrši tako što se prvo odredi ključ koji, kad postavljen za koren, daje najmanju razliku težina levog i desnog podstabla, a zatim se taj proces primeni rekurzivno na levo i desno podstablo (podniz) kako bi se i njihovi koreni odredili.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
FIND ROOT(P, Q, n)&lt;br /&gt;
min_key = 1&lt;br /&gt;
left = Q[1]&lt;br /&gt;
right = 1 - left - P[1]&lt;br /&gt;
min_diff = abs(right - left)&lt;br /&gt;
for i = 2 to n do&lt;br /&gt;
    left = left + Q[i] + P[i-1]&lt;br /&gt;
    right = 1 - left - P[i]&lt;br /&gt;
    diff = abs(right - left)&lt;br /&gt;
    if diff &amp;lt; min_diff then&lt;br /&gt;
        min_diff = diff&lt;br /&gt;
        min_key = i&lt;br /&gt;
    end_if&lt;br /&gt;
end_for&lt;br /&gt;
return min_key&lt;br /&gt;
end_for&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 8. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Neka se u samopodešavajuće stablo umeću redom ključevi 50, 70, 30, 60, 40, zatim se pretražuje na 70, pa se umeće 45 i, na kraju, pretražuje na 30. Prikazati izgled stabla nakon svake operacije.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Konačno stablo je:&lt;br /&gt;
 30&lt;br /&gt;
   \&lt;br /&gt;
    40&lt;br /&gt;
      \&lt;br /&gt;
       45&lt;br /&gt;
         \&lt;br /&gt;
          60&lt;br /&gt;
         /  \&lt;br /&gt;
        50   70&lt;br /&gt;
Postupak možete simulirati u nekom od [https://www.cs.usfca.edu/~galles/visualization/SplayTree.html simulatora] za samopodešavajuća stabla.&lt;br /&gt;
&lt;br /&gt;
[[Категорија:АСП2]]&lt;br /&gt;
[[Категорија:Рокови]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%90%D0%A1%D0%9F2/%D0%9A1_2016&amp;diff=1307</id>
		<title>АСП2/К1 2016</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%90%D0%A1%D0%9F2/%D0%9A1_2016&amp;diff=1307"/>
		<updated>2020-11-02T10:42:44Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Kosta Mladenovic izmena */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
[https://rti.etf.bg.ac.rs/rti/ri3sp/rokovi/13S112ASP2_K1_1617.pdf Zadaci na stranici predmeta.]&lt;br /&gt;
&lt;br /&gt;
== 1. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Ako je &#039;&#039;inorder&#039;&#039; obilaskom nekog stabla binarnog pretraživanja dobijen niz ključeva 1 5 8 9 11 14 prikazati tri moguća izgleda ovog stabla sa: (a) najmanjom visinom, (b) najvećom visinom i (c) visinom između najmanje i najveće. Obeležiti stablo sa najboljim i najlošijim performansama operacija.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Stablo A ima najbolje performanse operacija:&lt;br /&gt;
     9&lt;br /&gt;
    / \&lt;br /&gt;
   5   11&lt;br /&gt;
  / \    \&lt;br /&gt;
 1   8    14&lt;br /&gt;
Stablo B ima najlošije performanse operacija:&lt;br /&gt;
 1&lt;br /&gt;
  \&lt;br /&gt;
   5&lt;br /&gt;
    \&lt;br /&gt;
     8&lt;br /&gt;
      \&lt;br /&gt;
       9&lt;br /&gt;
        \&lt;br /&gt;
         11&lt;br /&gt;
           \&lt;br /&gt;
            14&lt;br /&gt;
Stablo C nema ni najbolje ni najlošije performanse operacija:&lt;br /&gt;
         11&lt;br /&gt;
        /  \&lt;br /&gt;
       9    14&lt;br /&gt;
      /&lt;br /&gt;
     8&lt;br /&gt;
    /&lt;br /&gt;
   5&lt;br /&gt;
  /&lt;br /&gt;
 1&lt;br /&gt;
&lt;br /&gt;
== 2. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Dat je niz celih brojeva. Koristeći stablo binarnog pretraživanja, napisati funkciju koja menja svaki element njegovim sledbenikom. U slučaju da element nema sledbenika, zadržati originalnu vrednost. Rezultat funkcije je niz preuredjen na opisani način.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Ovde prvo prebacujemo zadati niz u binarno stablo pretraživanja koristeći funkciju za umetanje čvora a zatim za svaki element niza pronalazimo sledbenika slično kao u [[АСП2/К1 2018#2. zadatak|drugom zadatku sa prvog kolokvijuma 2018]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
ARR TRANSFORM(arr, n)&lt;br /&gt;
bst = nil&lt;br /&gt;
for i = 1 to n do&lt;br /&gt;
    BST-INSERT(bst, arr[i])&lt;br /&gt;
end_for&lt;br /&gt;
for i = 1 to n do&lt;br /&gt;
    key = arr[i]&lt;br /&gt;
    p = bst&lt;br /&gt;
    prev = nil&lt;br /&gt;
    while (p ≠ nil) and (key(p) ≠ key) do&lt;br /&gt;
        if key(p) &amp;gt; key then&lt;br /&gt;
            prev = p&lt;br /&gt;
            p = left(p)&lt;br /&gt;
        else&lt;br /&gt;
            p = right(p)&lt;br /&gt;
        end_if&lt;br /&gt;
    end_while&lt;br /&gt;
    p = right(p)&lt;br /&gt;
    while p ≠ nil do&lt;br /&gt;
        prev = p&lt;br /&gt;
        p = left(p)&lt;br /&gt;
    end_while&lt;br /&gt;
    if prev ≠ nil then&lt;br /&gt;
        arr[i] = key(prev)&lt;br /&gt;
    end_if&lt;br /&gt;
end_for&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
BST-INSERT(bst, key)&lt;br /&gt;
node = GETNODE&lt;br /&gt;
key(node) = key&lt;br /&gt;
if bst = nil then&lt;br /&gt;
    bst = node&lt;br /&gt;
else&lt;br /&gt;
    p = bst&lt;br /&gt;
    while true do&lt;br /&gt;
        if key(p) &amp;gt; key then&lt;br /&gt;
            if left(p) = nil then&lt;br /&gt;
                left(p) = node&lt;br /&gt;
                break&lt;br /&gt;
            else&lt;br /&gt;
                p = left(p)&lt;br /&gt;
            end_if&lt;br /&gt;
        else&lt;br /&gt;
            if right(p) = nil then&lt;br /&gt;
                right(p) = node&lt;br /&gt;
                break&lt;br /&gt;
            else&lt;br /&gt;
                p = right(p)&lt;br /&gt;
            end_if&lt;br /&gt;
        end_if&lt;br /&gt;
    end_while&lt;br /&gt;
end_if&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 3. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Neka je dat rastuće uređeni niz celih brojeva (npr., 1 2 3 5 7 9) ili neka njegova rotacija (npr., 5 7 9 1 2 3). Vrednosti se ne ponavljaju u nizu. Napisati u pseudokodu iterativnu funkciju koja na efikasan način pronalazi minimalnu vrednost u nizu.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Ovaj problem se svodi na binarnu pretragu sa izmenjenim uslovima: sada detektujemo da li se nalazimo levo ili desno od tražene vrednosti poredeći se sa prvim elementom (ukoliko je trenutni element veći od prvog, levo smo od tražene vrednosti) a detekciju tražene vrednosti tako što proverimo da li je element levo od trenutnog veći od njega (to znači da smo došli na početak nerotiranog niza).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
FIND MIN(arr, n)&lt;br /&gt;
low = 1&lt;br /&gt;
high = n&lt;br /&gt;
if arr[1] ≤ arr[n] then&lt;br /&gt;
    return 1&lt;br /&gt;
end_if&lt;br /&gt;
while low ≤ high do&lt;br /&gt;
    mid = (high + low) / 2&lt;br /&gt;
    if arr[mid] &amp;lt; arr[mid-1] then&lt;br /&gt;
        return mid&lt;br /&gt;
    else if arr[mid] &amp;lt; arr[1] then&lt;br /&gt;
        high = mid - 1&lt;br /&gt;
    else&lt;br /&gt;
        low = mid + 1&lt;br /&gt;
    end_if&lt;br /&gt;
end_while&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 4. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Binarno pretraživanje u povećanoj tabeli&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Objasniti na koji način se vrši umetanje i brisanje u povećanoj tabeli.&lt;br /&gt;
# Data je povećana tabela uređena neopadajuće i odgovarajući vektor sa bitovima validnosti. Na slici je prikazano trenutno stanje. Prikazati izgled povećane tabele i vektora validnosti nakon umetanja svakog od kljuceva: 6, 29 i 35, a zatim ukloniti ključeve : 18 i 23 i prikazati finalno stanje.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Početno stanje povećane tabele&lt;br /&gt;
| 5 || 5 || 9 || 18 || 22 || 22 || 23 || 25 || 28 || 38 || 40&lt;br /&gt;
|-&lt;br /&gt;
| 1 || 0 || 0 || 1  || 0  || 0  || 0  || 1  || 0  || 1  || 0&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Umetanje se vrši tako što prvo uradimo (binarnu) pretragu za neki ključ i ako utvrdimo da postoji (da postoji ključ sa traženom vrednošću u tabeli i da mu je bit validnosti postavljen na 1) bacamo grešku, u suprotnom proveravamo bit validnosti na polju do kojeg smo došli: ako je 1, moramo pomeriti sve validne ključeve koji slede nakon tog polja za jedno mesto unapred kako bismo mogli da ubacimo ključ na to polje. Pri ubacivanju se bit validnosti tog ključa postavi na 1, svi sledeći nevalidni ključevi se postave na tu vrednost a svi prethodni na vrednost prethodnog validnog ključa.&lt;br /&gt;
&lt;br /&gt;
Pri brisanju se nakon pretrage za dati ključ, bit validnosti ključa samo postavi na 0 ukoliko postoji ili baci greška ukoliko ne postoji.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Stanje povećane tabele nakon unosa ključa 6&lt;br /&gt;
| 5 || 6 || 9 || 18 || 22 || 22 || 23 || 25 || 28 || 38 || 40&lt;br /&gt;
|-&lt;br /&gt;
| 1 || 1 || 0 || 1  || 0  || 0  || 0  || 1  || 0  || 1  || 0&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Stanje povećane tabele nakon unosa ključa 29&lt;br /&gt;
| 5 || 6 || 9 || 18 || 22 || 22 || 23 || 25 || 29 || 38 || 40&lt;br /&gt;
|-&lt;br /&gt;
| 1 || 1 || 0 || 1  || 0  || 0  || 0  || 1  || 1  || 1  || 0&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Stanje povećane tabele nakon unosa ključa 35&lt;br /&gt;
| 5 || 6 || 9 || 18 || 22 || 22 || 23 || 25 || 29 || 35 || 38&lt;br /&gt;
|-&lt;br /&gt;
| 1 || 1 || 0 || 1  || 0  || 0  || 0  || 1  || 1  || 1  || 1&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Stanje povećane tabele nakon uklanjanja ključa 18&lt;br /&gt;
| 5 || 6 || 9 || 18 || 22 || 22 || 23 || 25 || 29 || 35 || 38&lt;br /&gt;
|-&lt;br /&gt;
| 1 || 1 || 0 || 0  || 0  || 0  || 0  || 1  || 1  || 1  || 1&lt;br /&gt;
|}&lt;br /&gt;
Brisanjem ključa 23 dešava se greška jer taj ključ ne postoji.&lt;br /&gt;
&lt;br /&gt;
== 5. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Dato je stablo binarnog pretraživanja. Da li stablo zadato na slici zadovoljava kriterijum AVL stabla? Ukoliko ne, izvršiti balansiranje stabla po AVL kriterijumu, a zatim iz dobijenog stabla obrisati ključeve 55 i 20, pa u stablo umetnuti ključ 30. Prilikom brisanja, koristiti sledbenika. Prikazati izgled stabla nakon svake izvršene izmene.&lt;br /&gt;
         20&lt;br /&gt;
        /  \&lt;br /&gt;
      17    32&lt;br /&gt;
     /     /  \&lt;br /&gt;
   10    25    33&lt;br /&gt;
  /     /  \     \&lt;br /&gt;
 5     22  27     57&lt;br /&gt;
                 /  \&lt;br /&gt;
                55  71&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Vidimo da su kritični čvorovi ovde 17, 32 i 33. Prvo radimo desnu rotaciju oko čvora 17:&lt;br /&gt;
       20&lt;br /&gt;
     /    \&lt;br /&gt;
   10      32&lt;br /&gt;
  /  \    /  \&lt;br /&gt;
 5   17 25    33&lt;br /&gt;
       /  \     \&lt;br /&gt;
      22  27     57&lt;br /&gt;
                /  \&lt;br /&gt;
               55  71&lt;br /&gt;
čime taj čvor više nije kritičan, ali zbog skraćivanja dužine levog podstabla čvor 20 postaje kritičan. Zatim radimo levu rotaciju oko čvora 33:&lt;br /&gt;
       20&lt;br /&gt;
     /    \&lt;br /&gt;
   10       32&lt;br /&gt;
  /  \    /    \&lt;br /&gt;
 5   17 25      57&lt;br /&gt;
       /  \    /  \&lt;br /&gt;
      22  27  33   71&lt;br /&gt;
                \&lt;br /&gt;
                 55&lt;br /&gt;
čime čvorovi 32 i 33 više nisu kritični. Na kraju, radimo levu rotaciju oko čvora 20:&lt;br /&gt;
              32&lt;br /&gt;
           /      \&lt;br /&gt;
       20           57&lt;br /&gt;
    /      \       /  \&lt;br /&gt;
   10      25    33    71&lt;br /&gt;
  /  \    /  \     \&lt;br /&gt;
 5   17  22  27     55&lt;br /&gt;
&lt;br /&gt;
== 6. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
[[Датотека:ASP2 K1 2016 zadatak 6 stablo.png|thumb|Crveno-crno stablo iz postavke zadatka.]]&lt;br /&gt;
U crveno-crnom stablu sa slike se najpre izvrši brisanje ključa 35, a zatim umetanje ključeva 9, 43, 10. Prikazati izgled stabla nakon svake od navedenih promena.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
&lt;br /&gt;
== 7. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# U pseudokodu napisati funkciju koja za AVL stablo zadate visine &#039;&#039;h&#039;&#039; izračunava najmanji broj čvorova koje stablo može da sadrži.&lt;br /&gt;
# Na kojoj visini može da se nalazi list najbliži korenu?&lt;br /&gt;
# Kako se nazivaju ovakva stabla i po čemu su dobila ime?&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Pseudokod je dat ispod.&lt;br /&gt;
# &#039;&#039;ceil(h / 2)&#039;&#039;&lt;br /&gt;
# Ovakva stabla, koja su najgori slučajevi AVL stabala, dobila su ime po Fibonačijevim brojevima &amp;lt;!--(koji su, pak, dobili naziv po poznatom srpskom glumcu Miljanu Fibonačiju Markoviću)--&amp;gt; čija se rekurzivna definicija veoma malo razlikuje sa rekurzivnom definicijom broja čvorova ovakvih stabala u zavisnosti od njihove visine.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
AVL MIN NODES(h)&lt;br /&gt;
if h = 0 then&lt;br /&gt;
    return 1&lt;br /&gt;
else if h = 1 then&lt;br /&gt;
    return 2&lt;br /&gt;
else&lt;br /&gt;
    return AVL_MIN_NODES(h - 1) + AVL_MIN_NODES(h - 2) + 1&lt;br /&gt;
end_if&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 8. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Za stablo binarnog pretraživanja koje sadrži ključeve K1 &amp;lt; K2 &amp;lt; ... &amp;lt; Kn i čiji je koren ključ Kr izvesti vezu cene stabla i cena podstabla. Obavezno objasniti postupak.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Cena podstabla koje sadrži ključeve &amp;lt;math&amp;gt;K_{i+1}, K_{i+2}, ..., K_j&amp;lt;/math&amp;gt; označava se sa &amp;lt;math&amp;gt;T_{ij}&amp;lt;/math&amp;gt; i ima vrednost &amp;lt;math&amp;gt;q_i + p_{i+1} + q_{i+1} + ... + p_j + q_j&amp;lt;/math&amp;gt;, što je zapravo zbir verovatnoća pretraživanja svih internih i eksternih čvorova tog podstabla. Pošto jedan čvor ima svoju verovatnoću pretraživanja kao i dva podstabla, dobijamo da je cena celog stabla čiji je koren &amp;lt;math&amp;gt;K_r&amp;lt;/math&amp;gt; rekurzivno definisana sa &amp;lt;math&amp;gt;T = T_{1,r} + p_r + T_{r+1,n}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Категорија:АСП2]]&lt;br /&gt;
[[Категорија:Рокови]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%90%D0%A1%D0%9F2/%D0%9A1_2015&amp;diff=1306</id>
		<title>АСП2/К1 2015</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%90%D0%A1%D0%9F2/%D0%9A1_2015&amp;diff=1306"/>
		<updated>2020-11-02T10:29:47Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Promena broja 38 u 35 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
[https://rti.etf.bg.ac.rs/rti/ri3sp/rokovi/13S112ASP2_K1_1516.pdf Zadaci na stranici predmeta.]&lt;br /&gt;
&lt;br /&gt;
== 1. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Skup ključeva smešten je u stablo binarnog pretraživanja. Nakon brisanja ključa 12, dobijen je izgled stabla prikazan na slici. Pod pretpostavkom da je ključ 9 umetnut u stablo nakon ključa 12, da nije bilo prethodnih brisanja ključeva i da se prilikom brisanja koristi sledbenik, prikazati izgled stabla neposredno pre brisanja ključa 12.&lt;br /&gt;
     6&lt;br /&gt;
    / \&lt;br /&gt;
   5   15&lt;br /&gt;
  /   /  \&lt;br /&gt;
 3   7    18&lt;br /&gt;
  \   \   /&lt;br /&gt;
   4   9 16&lt;br /&gt;
      /   \&lt;br /&gt;
     8     17&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
       6&lt;br /&gt;
    /     \&lt;br /&gt;
   5       15&lt;br /&gt;
  /       /  \&lt;br /&gt;
 3      12    18&lt;br /&gt;
  \    /      /&lt;br /&gt;
   4  7      16&lt;br /&gt;
       \      \&lt;br /&gt;
        9      17&lt;br /&gt;
       /&lt;br /&gt;
      8&lt;br /&gt;
&lt;br /&gt;
     6&lt;br /&gt;
    / \&lt;br /&gt;
   5   12&lt;br /&gt;
  /   /  \&lt;br /&gt;
 3   7    15&lt;br /&gt;
  \   \     \&lt;br /&gt;
   4   9     18&lt;br /&gt;
      /     /&lt;br /&gt;
     8    16&lt;br /&gt;
            \&lt;br /&gt;
             17&lt;br /&gt;
&lt;br /&gt;
     6&lt;br /&gt;
    / \&lt;br /&gt;
   5   12&lt;br /&gt;
  /   /  \&lt;br /&gt;
 3   7    18&lt;br /&gt;
  \   \   /&lt;br /&gt;
   4   9 16&lt;br /&gt;
      / /  \&lt;br /&gt;
     8 15  17&lt;br /&gt;
&lt;br /&gt;
== 2. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Dat je krug K, sa centrom u tački C, poluprečnika r. Data je duž D čije je teme T1 unutar K, a teme T2 izvan K. Koristeći metodu binarne pretrage kao ideju, napisati u pseudokodu funkciju koja približno određuje tačku preseka K i D. Preciznost aproksimacije kontrolisati posebnim parametrom funkcije.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Ovde je ideja da nagađamo na kom se delu duži, u procentima, nalazi presek s kružnicom. Za svako nagađanje računamo razdaljinu od centra i ako je veća od poluprečnika to znači da smo van kruga, odnosno da treba da idemo bliže tački T1, u suprotnom treba da idemo bliže tački T2. Parametar &amp;lt;code&amp;gt;p&amp;lt;/code&amp;gt; nam ovde označava preciznost aproksimacije u procentima dužine duži.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
INTERSECT(K, D)&lt;br /&gt;
p = 0.05&lt;br /&gt;
low = 0&lt;br /&gt;
high = 1&lt;br /&gt;
mid_x = 0&lt;br /&gt;
mid_y = 0&lt;br /&gt;
while high - low ≥ p do&lt;br /&gt;
    mid = (high + low) / 2&lt;br /&gt;
    mid_x = (x(T2) - x(T1)) * mid + x(T1)&lt;br /&gt;
    mid_y = (y(T2) - y(T1)) * mid + y(T1)&lt;br /&gt;
    diff = sqrt((mid_x - x(C)) * (mid_x - x(C)) + (mid_y - y(C)) * (mid_y - y(C)))&lt;br /&gt;
    if diff = r then&lt;br /&gt;
        return mid_x, mid_y&lt;br /&gt;
    else if diff &amp;lt; r then&lt;br /&gt;
        low = mid&lt;br /&gt;
    else&lt;br /&gt;
        high = mid&lt;br /&gt;
    end_if&lt;br /&gt;
end_while&lt;br /&gt;
return mid_x, mid_y&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 3. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Stabla binarnog pretraživanja&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Na koji način se u stablo binarnog pretraživanja može dozvoliti umetanje ključeva sa istom vrednošću?&lt;br /&gt;
# Napisati u pseudokodu iterativnu implementaciju funkcije koja umeće vrednost &#039;&#039;x&#039;&#039; u stablo binarnog pretraživanja na koje pokazuje pokazivač &#039;&#039;root&#039;&#039;. U stablo je dozvoljeno umetati ključeve sa istom vrednošću.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Postoje dva načina na koje se može dozvoliti umetanje ključeva sa istom vrednošću u binarno stablo pretraživanja:&lt;br /&gt;
# U svakom čvoru stabla se čuva niz čvorova koje imaju istu vrednost ključa - ovim se postiže da se struktura stabla ne povećava.&lt;br /&gt;
# Čvorovi sa istom vrednošću se tretiraju kao veći, odnosno čuvaju u desnom podstablu - ovim se postiže veća pogodnost kod korišćenja za realizaciju struktura poput prioritetnog reda.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
BST INSERT MOD(root, x)&lt;br /&gt;
node = GETNODE&lt;br /&gt;
value(node) = x&lt;br /&gt;
if root = nil then&lt;br /&gt;
    root = node&lt;br /&gt;
    return&lt;br /&gt;
end_if&lt;br /&gt;
p = root&lt;br /&gt;
while true do&lt;br /&gt;
    if key(p) = x then&lt;br /&gt;
        right(node) = right(p)&lt;br /&gt;
        right(p) = node&lt;br /&gt;
        break&lt;br /&gt;
    else if key(p) &amp;lt; x then&lt;br /&gt;
        if right(p) = nil then&lt;br /&gt;
            right(p) = node&lt;br /&gt;
            break&lt;br /&gt;
        else&lt;br /&gt;
            p = right(p)&lt;br /&gt;
        end_if&lt;br /&gt;
    else&lt;br /&gt;
        if left(p) = nil then&lt;br /&gt;
            left(p) = node&lt;br /&gt;
            break&lt;br /&gt;
        else&lt;br /&gt;
            p = left(p)&lt;br /&gt;
        end_if&lt;br /&gt;
    end_if&lt;br /&gt;
end_while&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 4. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Crveno-crna stabla&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Definisati pojam crne visine (eng. &#039;&#039;black height&#039;&#039;) nekog čvora crveno-crnog stabla.&lt;br /&gt;
# Napisati u pseudokodu funkciju koja u zadatom crveno-crnom stablu određuje crnu visinu zadatog čvora X.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
&lt;br /&gt;
== 5. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Neka se u prazno AVL stablo redom umeću ključevi 35, 75, 51, 61, 65, 80, 44, 48, 39, 77, a zatim brišu ključevi 65, 44, 80. Prilikom brisanja, koristiti sledbenika. Prikazati izgled stabla nakon svakog izvršenog umetanja i brisanja.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Postupak umetanja možete simulirati u nekom od [https://www.cs.usfca.edu/~galles/visualization/AVLtree.html simulatora] za AVL stabla. Nakon umetanja dobije se sledeće stablo:&lt;br /&gt;
          65&lt;br /&gt;
      /        \&lt;br /&gt;
     44         77&lt;br /&gt;
   /    \      /  \&lt;br /&gt;
 35      51   75  80&lt;br /&gt;
   \    /  \&lt;br /&gt;
    39 48  60&lt;br /&gt;
Po brisanju čvora 65, njegov sledbenik čvor 75 dolazi na njegovo mesto:&lt;br /&gt;
         75&lt;br /&gt;
      /      \&lt;br /&gt;
     44       77&lt;br /&gt;
   /    \       \&lt;br /&gt;
 35      51     80&lt;br /&gt;
   \    /  \&lt;br /&gt;
    39 48  60&lt;br /&gt;
Zatim se briše čvor 44 i njegov sledbenik čvor 48 dolazi na njegovo mesto:&lt;br /&gt;
         75&lt;br /&gt;
      /      \&lt;br /&gt;
     48       77&lt;br /&gt;
   /    \       \&lt;br /&gt;
 35      51     80&lt;br /&gt;
   \       \&lt;br /&gt;
    39     60&lt;br /&gt;
Na kraju, briše se čvor 80 čime čvor 75 postaje kritičan čvor pa radimo rotaciju ulevo oko njega:&lt;br /&gt;
     48&lt;br /&gt;
   /    \&lt;br /&gt;
 35      75&lt;br /&gt;
   \    /  \&lt;br /&gt;
    39 51  77&lt;br /&gt;
        \&lt;br /&gt;
         61&lt;br /&gt;
&lt;br /&gt;
== 6. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
[[Датотека:ASP2 K1 2015 zadatak 6 stablo.png|thumb|Crveno-crno stablo iz postavke zadatka.]]&lt;br /&gt;
U crveno-crno stablo sa slike se najpre vrši umetanje ključa 50, a zatim vrši brisanje ključa 13. Prikazati izgled stabla nakon svake od navedenih promena.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
&lt;br /&gt;
== 7. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Dati pseudokod i objasniti algoritam određivanja prethodnika čvora sa zadatom adresom &#039;&#039;x&#039;&#039; u stablu binarnog pretraživanja. &#039;&#039;&#039;Napomena:&#039;&#039;&#039; Prilikom kretanja uz stablo ne koristiti proveru na pripadnost podstablu, već na vrednosti ključeva.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Prvo proveravamo da li čvor ima levo podstablo. Ukoliko ima, vraćamo najdesniji čvor u levom podstablu kao prethodnika čvora. Ukoliko nema, penjemo se uz stablo poredeći ključ čvora &#039;&#039;x&#039;&#039; sa ključevima njegovih roditelja i ako nađemo čvor sa manjim ključem vratimo ga.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
PRED NODE(x)&lt;br /&gt;
if left(x) = nil then&lt;br /&gt;
    p = parent(x)&lt;br /&gt;
    while p ≠ nil do&lt;br /&gt;
        if key(p) &amp;lt; key(x) then&lt;br /&gt;
            return p&lt;br /&gt;
        end_if&lt;br /&gt;
        p = parent(p)&lt;br /&gt;
    end_while&lt;br /&gt;
    return nil&lt;br /&gt;
else&lt;br /&gt;
    p = left(x)&lt;br /&gt;
    while right(p) ≠ nil do&lt;br /&gt;
        p = right(p)&lt;br /&gt;
    end_while&lt;br /&gt;
    return p&lt;br /&gt;
end_if&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 8. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
a) Objasniti jednu strategiju za dobijanje suboptimalnog stabla binarnog pretraživanja koja uključuje i uspešna i neuspešna pretraživanja. b) Postupak ilustrovati po koracima ako su dati ključevi &amp;lt;math&amp;gt;K_i, i = 1..6&amp;lt;/math&amp;gt;, sa verovatnoćama uspešnog pretraživanja &amp;lt;math&amp;gt;p_i, i = 1..6&amp;lt;/math&amp;gt;, (0.1, 0.05, 0.05, 0.1, 0.05, 0.1, respektivno) i verovatnoćama neuspešnog pretraživanja &amp;lt;math&amp;gt;q_i, i = 0..6&amp;lt;/math&amp;gt; (0.2, 0.05, 0.05, 0.0, 0.0, 0.05, 0.2, respektivno).&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Možemo formirati suboptimalno binarno stablo pretraživanja odabiranjem korena sa najmanjom razlikom težina između podstabala i rekurzivno ponavljati proces za oba podstabla.&lt;br /&gt;
#&lt;br /&gt;
## Kandidati za koren su nam K3 i K4. K3 nam daje razliku 0.1 između težina podstabla, a K4 0.05, pa zato biramo K4 i proces nastavljamo za [1, 2, 3] i [5, 6].&lt;br /&gt;
## Jedini kandidat za koren levog podstabla nam je K2, i zato njega postavljamo kao koren, K1 njegovo levo dete a K3 njegovo desno.&lt;br /&gt;
## Kandidat K6 je bolji od K5 jer omogućava razliku od 0.05 između težina podstabala za razliku od 0.1, pa njega postavljamo kao koren a K5 kao njegovo levo dete i dobijamo konačno stablo:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
      4&lt;br /&gt;
    /   \&lt;br /&gt;
   2     6&lt;br /&gt;
  / \   /&lt;br /&gt;
 1   3 5&lt;br /&gt;
&lt;br /&gt;
[[Категорија:АСП2]]&lt;br /&gt;
[[Категорија:Рокови]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%94%D0%B0%D1%82%D0%BE%D1%82%D0%B5%D0%BA%D0%B0:PMT_K1P_2020.pdf&amp;diff=1299</id>
		<title>Датотека:PMT K1P 2020.pdf</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%94%D0%B0%D1%82%D0%BE%D1%82%D0%B5%D0%BA%D0%B0:PMT_K1P_2020.pdf&amp;diff=1299"/>
		<updated>2020-11-01T19:47:04Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: Нова страница: {{file | description = Поправка првог колоквијума 2019. године. | author      = Катедра за телекомуникације, Ел…&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{file&lt;br /&gt;
| description = Поправка првог колоквијума 2019. године.&lt;br /&gt;
| author      = Катедра за телекомуникације, Електротехнички факултет у Београду&lt;br /&gt;
| source      = Са канала предмета на платформи &amp;quot;Teams&amp;quot;&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%94%D0%B0%D1%82%D0%BE%D1%82%D0%B5%D0%BA%D0%B0:PMT_K1_2019.pdf&amp;diff=1298</id>
		<title>Датотека:PMT K1 2019.pdf</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%94%D0%B0%D1%82%D0%BE%D1%82%D0%B5%D0%BA%D0%B0:PMT_K1_2019.pdf&amp;diff=1298"/>
		<updated>2020-11-01T19:36:00Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: Нова страница: {{file | description = Први колоквијум 2019. године. | author      = Катедра за телекомуникације, Електротехни…&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{file&lt;br /&gt;
| description = Први колоквијум 2019. године.&lt;br /&gt;
| author      = Катедра за телекомуникације, Електротехнички факултет у Београду&lt;br /&gt;
| source      = Са канала предмета на платформи &amp;quot;Teams&amp;quot;&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%90%D0%A1%D0%9F2/%D0%9A1_2017&amp;diff=1297</id>
		<title>АСП2/К1 2017</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%90%D0%A1%D0%9F2/%D0%9A1_2017&amp;diff=1297"/>
		<updated>2020-11-01T19:11:24Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* - -&amp;gt; +*/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
[https://rti.etf.bg.ac.rs/rti/ri3sp/rokovi/13S112ASP2_K1_1718.pdf Zadaci sa stranice predmeta.]&lt;br /&gt;
&lt;br /&gt;
== 1. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Uporediti metode binarne i višestruke sekvencijalne pretrage nad uređenim nizom celih brojeva 3, 7, 10, 11, 18, 22, 25, 27, 39, 41, 45, 48, 56, 64, 65, 78, 86. Odrediti broj poređenja pri pretrazi ključeva 25 i 44 za obe tehnike.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Tabela iz postavke zadatka.&lt;br /&gt;
! 0 !! 1 !! 2 !! 3 !! 4 !! 5 !! 6 !! 7 !! 8 !! 9 !! 10 !! 11 !! 12 !! 13 !! 14 !! 15 !! 16&lt;br /&gt;
|-&lt;br /&gt;
| 3 || 7 || 10 || 11 || 18 || 22 || 25 || 27 || 39 || 41 || 45 || 48 || 56 || 64 || 65 || 78 || 86&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Višestrukom sekvencijalnom pretragom idemo od ključa 3 do ključa 45, čime posećujemo 11 ključeva. Binarnom pretragom prvo gađamo ključ 39, pa 11, pa 22 i na kraju 25, a zatim u drugoj pretrazi 39, pa 56, pa 45, pa 41 i tu se pretraga završava neuspešno, čime posećujemo 8 ključeva.&lt;br /&gt;
&lt;br /&gt;
== 2. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Funkciji FIND_BST prosleđen je pokazivač root na koren jednog kompletnog binarnog stabla. Struktura čvora ovog stabla osim ključa, pokazivača na levo i desno podstablo, sadrži i pokazivač na oca. Implementirati iterativnu funkciju FIND_BST čija povratna vrednost treba da bude pokazivač na koren onog podstabla koje predstavlja stablo binarne pretrage. Ukoliko postoji više ovakvih podstabala, treba vratiti pokazivač na koren onog podstabla sa maksimalnim brojem čvorova. Proveru da li je neko podstablo stablo binarne pretrage izdvojiti u posebnu funkciju. Obavezno kratko prokomentarisati rešenje.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Ovde nam je najpogodnije da &#039;&#039;postorder&#039;&#039; obilaskom određujemo da li su čvorovi binarna stabla pretraživanja, jer tako kad stignemo do viših čvorova već znamo da li su im deca ispravna binarna stabla pretraživanja. S tim u vidu, implementacija tražene funkcije za proveru izgleda ovako:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
IS BST(node, left_child_valid_bst, right_child_valid_bst)&lt;br /&gt;
if (not left_child_valid_bst) or (not right_child_valid_bst) or (node = nil) then&lt;br /&gt;
    return false&lt;br /&gt;
end_if&lt;br /&gt;
if key(left(node)) &amp;lt; key(node) &amp;lt; key(right(node)) then&lt;br /&gt;
    return true&lt;br /&gt;
end_if&lt;br /&gt;
return false&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Kao pozivne argumente ove funkcije primamo da li su nam levo i desno dete čvora validni BST, što bi značilo da treba da te podatke čuvamo u nekom redu kako bismo iz roditelja mogli da tim informacijama pristupimo. Obilazak kreće od reda listova i kreće se tako što svaki list gura svog roditelja u red, a duplikati roditelja se izbacuju iz reda prilikom njihovog obilaska.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
FIND BST(root)&lt;br /&gt;
if root = nil then&lt;br /&gt;
    return nil&lt;br /&gt;
end_if&lt;br /&gt;
last_bst = nil&lt;br /&gt;
QUEUE_INIT(Q_valid_bst)&lt;br /&gt;
QUEUE_INIT(Q_nodes)&lt;br /&gt;
QUEUE_INIT(Q_inv_nodes)&lt;br /&gt;
INSERT(Q_nodes, root)&lt;br /&gt;
while (not QUEUE_EMPTY(Q_nodes)) do&lt;br /&gt;
    node = DELETE(Q_nodes)&lt;br /&gt;
    if left(node) ≠ nil then&lt;br /&gt;
        INSERT(Q_nodes, left(node))&lt;br /&gt;
        INSERT(Q_nodes, right(node))&lt;br /&gt;
    else&lt;br /&gt;
        INSERT(Q_inv_nodes, node)&lt;br /&gt;
    end_if&lt;br /&gt;
end_while&lt;br /&gt;
while (not QUEUE_EMPTY(Q_inv_nodes)) do&lt;br /&gt;
    node = DELETE(Q_inv_nodes)&lt;br /&gt;
    if left(node) = nil then&lt;br /&gt;
        left_valid = true&lt;br /&gt;
        right_valid = true&lt;br /&gt;
    else&lt;br /&gt;
        DELETE(Q_inv_nodes)&lt;br /&gt;
        left_valid = DELETE(Q_valid_bst)&lt;br /&gt;
        right_valid = DELETE(Q_valid_bst)&lt;br /&gt;
    end_if&lt;br /&gt;
    valid_bst = IS_BST(node, left_valid, right_valid)&lt;br /&gt;
    if valid_bst then&lt;br /&gt;
        last_bst = node&lt;br /&gt;
    end_if&lt;br /&gt;
    INSERT(Q_valid_bst, valid_bst)&lt;br /&gt;
    INSERT(Q_inv_nodes, parent(node))&lt;br /&gt;
end_while&lt;br /&gt;
return last_bst&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 3. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
[[Датотека:ASP2 K1 2018 zadatak 3 stablo.png|thumb|Crveno-crno stablo iz postavke zadatka.]]&lt;br /&gt;
Neka se posmatra crveno-crno stablo sa slike. Prikazati izgled stabla po koracima nakon umetanja ključeva 7 i 10.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
&lt;br /&gt;
== 4. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Koristeći modifikovanu binarnu pretragu, napisati u pseudukodu iterativnu funkciju koja vraća poziciju prethodnika i sledbenika zadate vrednosti &#039;&#039;k&#039;&#039; u zadatom uređenom nizu &#039;&#039;arr&#039;&#039;. Vrednost k ne mora postojati u nizu.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Ovde se pretpostavlja da se ključevi u nizu ne mogu ponavljati.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
ARR PRED SUCC(arr, k)&lt;br /&gt;
while high - low &amp;gt; 1 do&lt;br /&gt;
    mid = (high + low) / 2&lt;br /&gt;
    if arr[mid] = k then&lt;br /&gt;
        return mid - 1, mid + 1&lt;br /&gt;
    else if arr[mid] &amp;lt; k then&lt;br /&gt;
        low = mid + 1&lt;br /&gt;
    else&lt;br /&gt;
        high = mid - 1&lt;br /&gt;
    end_if&lt;br /&gt;
end_while&lt;br /&gt;
if high = low then&lt;br /&gt;
    if arr[high] = k then&lt;br /&gt;
        return high - 1, high + 1&lt;br /&gt;
    else if arr[high] &amp;lt; k then&lt;br /&gt;
        return high, high + 1&lt;br /&gt;
    else&lt;br /&gt;
        return high - 1, high&lt;br /&gt;
    end_if&lt;br /&gt;
else&lt;br /&gt;
    return low, high&lt;br /&gt;
end_if&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 5. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Neka se u prazno AVL stablo redom ubacuju ključevi 12, 43, 23, 55, 72, 2, 60, 57, 89, a zatim se brišu ključevi 12, 23 i 57. Prilikom brisanja koristiti &#039;&#039;&#039;prethodnika&#039;&#039;&#039;. Prikazati izgled stabla nakon svakog izvršenog koraka pri umetanju i brisanju&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Konačno stablo je:&lt;br /&gt;
      60&lt;br /&gt;
     /  \&lt;br /&gt;
   49    72&lt;br /&gt;
  /  \     \&lt;br /&gt;
 2   55     89&lt;br /&gt;
Postupak možete simulirati u nekom od [https://www.cs.usfca.edu/~galles/visualization/AVLtree.html simulatora] za AVL stabla.&lt;br /&gt;
&lt;br /&gt;
== 6. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Napisati u pseudokodu funkciju koja efikasno proverava da li je dato binarno stablo pretrage &#039;&#039;bst&#039;&#039; balansirano po AVL kriterijumu. Pored pokazivača na oca i levog i desnog sina, čvor stabla sadrži i podatke o visini levog i desnog podstabla.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Pošto ne moramo da izračunavamo visine podstabla, ovaj zadatak se svodi na posećivanje svih čvorova kako bismo uporedili sve visine levih i desnih podstabala u jednom čvoru. Ukoliko se u nekom razlikuju za više od 1, stablo nije balansirano po AVL kriterijumu.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
CHECK AVL BALANCED(bst)&lt;br /&gt;
INIT_STACK(S)&lt;br /&gt;
PUSH(S, bst)&lt;br /&gt;
while (not STACK_EMPTY(S)) do&lt;br /&gt;
    node = POP(S)&lt;br /&gt;
    if abs(height_l(node) - height_r(node)) &amp;gt; 1 then&lt;br /&gt;
        return false&lt;br /&gt;
    end_if&lt;br /&gt;
    if height_l(node) &amp;gt; 2 then&lt;br /&gt;
        PUSH(S, left(node))&lt;br /&gt;
    end_if&lt;br /&gt;
    if height_r(node) &amp;gt; 2 then&lt;br /&gt;
        PUSH(S, right(node))&lt;br /&gt;
    end_if&lt;br /&gt;
end_while&lt;br /&gt;
return true&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 7. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Suboptimalno stablo binarnog pretraživanja&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Objasniti algoritam za određivanje suboptimalnog stabla binarnog pretraživanja koji je zasnovan na težinama podstabala.&lt;br /&gt;
# Ako su za &#039;&#039;n&#039;&#039; ključeva date verovatnoće uspešnog pretraživanja u nizu &#039;&#039;P&#039;&#039;, a neuspešnog u nizu &#039;&#039;Q&#039;&#039;, napisati efikasnu implementaciju funkcije koja nalazi samo koren tog stabla.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Određivanje suboptimalnog stabla binarnog pretraživanja zasnovanog na težinama podstabala, gde je težina podstabla koje uključuje čvorove na pozicijama od &amp;lt;math&amp;gt;i+1&amp;lt;/math&amp;gt; do &amp;lt;math&amp;gt;j&amp;lt;/math&amp;gt; u tabeli definisana kao &amp;lt;math&amp;gt;w_{ij} = q_i + p_{i+1} + q_{i+1} + ... + p_j + q_j&amp;lt;/math&amp;gt;, se vrši tako što se prvo odredi ključ koji, kad postavljen za koren, daje najmanju razliku težina levog i desnog podstabla, a zatim se taj proces primeni rekurzivno na levo i desno podstablo (podniz) kako bi se i njihovi koreni odredili.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
FIND ROOT(P, Q, n)&lt;br /&gt;
min_key = 1&lt;br /&gt;
left = Q[1]&lt;br /&gt;
min_diff = abs(1 - 2 * left - P[1])&lt;br /&gt;
for i = 2 to n do&lt;br /&gt;
    left = left + Q[i] + P[i-1]&lt;br /&gt;
    diff = abs(1 - 2 * left - P[i])&lt;br /&gt;
    if diff &amp;lt; min_diff then&lt;br /&gt;
        min_diff = diff&lt;br /&gt;
        min_key = i&lt;br /&gt;
    else&lt;br /&gt;
        break&lt;br /&gt;
    end_if&lt;br /&gt;
end_for&lt;br /&gt;
return min_key&lt;br /&gt;
end_for&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 8. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Neka se u samopodešavajuće stablo umeću redom ključevi 50, 70, 30, 60, 40, zatim se pretražuje na 70, pa se umeće 45 i, na kraju, pretražuje na 30. Prikazati izgled stabla nakon svake operacije.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Konačno stablo je:&lt;br /&gt;
 30&lt;br /&gt;
   \&lt;br /&gt;
    40&lt;br /&gt;
      \&lt;br /&gt;
       45&lt;br /&gt;
         \&lt;br /&gt;
          60&lt;br /&gt;
         /  \&lt;br /&gt;
        50   70&lt;br /&gt;
Postupak možete simulirati u nekom od [https://www.cs.usfca.edu/~galles/visualization/SplayTree.html simulatora] za samopodešavajuća stabla.&lt;br /&gt;
&lt;br /&gt;
[[Категорија:АСП2]]&lt;br /&gt;
[[Категорија:Рокови]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%90%D0%A1%D0%9F2/%D0%9A1_2018&amp;diff=1295</id>
		<title>АСП2/К1 2018</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%90%D0%A1%D0%9F2/%D0%9A1_2018&amp;diff=1295"/>
		<updated>2020-11-01T17:49:45Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* 168 -&amp;gt; 160 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
[https://rti.etf.bg.ac.rs/rti/ri3sp/rokovi/13S112ASP2_K1_1819.pdf Zadaci na stranici predmeta.]&lt;br /&gt;
&lt;br /&gt;
== 1. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Optimalno stablo binarnog pretraživanja&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Navesti formulu za izračunavanje cene optimalnog stabla binarnog pretraživanja i objasniti je.&lt;br /&gt;
# Ukoliko se posmatraju tri ključa &amp;lt;math&amp;gt;K_1 &amp;lt; K_2 &amp;lt; K_3&amp;lt;/math&amp;gt; sa poznatim verovatnoćama uspešnog pretraživanja p1 = 0.2, p2 = 0.05, p3 = 0.1 i neuspešnog pretraživanja q0 = 0.15, q1 = 0.2, q2 = 0.1 i q3 = 0.2, odrediti i nacrtati optimalno stablo binarnog pretraživanja.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
&lt;br /&gt;
== 2. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Napisati u pseudokodu efikasnu iterativnu implementaciju funkcije koja u stablu binarnog pretraživanja na čiji koren ukazuje pokazivač &#039;&#039;root&#039;&#039; pronalazi sledbenika čvora koji sadrži ključ &#039;&#039;key&#039;&#039;. U okviru čvora stabla ne postoji pokazivač na oca.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Ideja je da umesto &#039;&#039;inorder&#039;&#039; obilaska iskoristimo činjenicu da se sledbenik čvora sa ključem &#039;&#039;key&#039;&#039; može pronaći jednim spuštanjem niz stablo u pretrazi za ključem &#039;&#039;key&#039;&#039;. Postoje dva slučaja:&lt;br /&gt;
# kada čvor sa ključem &#039;&#039;key&#039;&#039; ima desno podstablo, znamo da se u njemu sigurno nalazi njegov sledbenik kao najlevlje dete desnog podstabla, i&lt;br /&gt;
# kada taj čvor nema desno podstablo, uzimamo poslednji čvor kod koga smo utvrdili da mu je ključ veći od ključa koji tražimo (poslednji čvor kod koga smo &amp;quot;otišli levo&amp;quot;).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
FIND BST SUCC(root, key)&lt;br /&gt;
p = root&lt;br /&gt;
succ = nil&lt;br /&gt;
while (key(p) ≠ key) do&lt;br /&gt;
    if (key(p) &amp;lt; key) then&lt;br /&gt;
        p = right(p)&lt;br /&gt;
    else if (key(p) &amp;gt; key) then&lt;br /&gt;
        succ = p&lt;br /&gt;
        p = left(p)&lt;br /&gt;
    end_if&lt;br /&gt;
end_while&lt;br /&gt;
if (right(p) ≠ nil) then&lt;br /&gt;
    p = right(p)&lt;br /&gt;
    while (p ≠ nil) do&lt;br /&gt;
        succ = p&lt;br /&gt;
        p = left(p)&lt;br /&gt;
    end_while&lt;br /&gt;
end_if&lt;br /&gt;
return succ&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 3. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
[[Датотека:ASP2 K1 2018 zadatak 3 stablo.png|thumb|Crveno-crno stablo iz postavke zadatka.]]&lt;br /&gt;
Neka se posmatra crveno-crno stablo sa slike. Prikazati izgled stabla po koracima nakon umetanja ključeva 81 i 79 i uklanjanja ključa 23.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
&lt;br /&gt;
== 4. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
U stablu binarne pretrage greškom su dva čvora zamenila svoje pozicije. Implementirati funkciju CORRECT_BST koja ispravlja grešku i vraća ova dva čvora na svoje prave pozicije. Svaki čvor osim celobrojnog ključa i pokazivača na levo i desno podstablo sadrži i pokazivač na oca.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Ovde se pretpostavlja da se pod zamenom čvorova ne misli samo na zamenu ključeva u tim čvorovima već na zamenu zajedno da podstablima, tako da jedna zamena ne može imati kaskadne posledice već će samo dva čvora ostati nekonzistentna.&lt;br /&gt;
&lt;br /&gt;
Ideja je na stek guramo decu čvorova za koje odredimo da upadaju u granice pretrage po stablu binarnog pretraživanja, a ako ne upadaju smestimo ih u jednu od dve promenljive i nakon toga zamenimo, pazeći da zamenimo i pokazivače na roditelje i roditeljske pokazivače.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
CORRECT BST(root)&lt;br /&gt;
STACK_INIT(S_nodes)&lt;br /&gt;
STACK_INIT(S_low)&lt;br /&gt;
STACK_INIT(S_high)&lt;br /&gt;
PUSH(S_nodes, root)&lt;br /&gt;
PUSH(S_low, -∞)&lt;br /&gt;
PUSH(S_high, +∞)&lt;br /&gt;
while not STACK_EMPTY(S_nodes) do&lt;br /&gt;
    node = POP(S_nodes)&lt;br /&gt;
    low = POP(S_low)&lt;br /&gt;
    high = POP(S_high)&lt;br /&gt;
    if low &amp;lt; key(node) &amp;lt; high then&lt;br /&gt;
        if left(node) ≠ nil then&lt;br /&gt;
            PUSH(S_nodes, left(node))&lt;br /&gt;
            PUSH(S_low, low)&lt;br /&gt;
            PUSH(S_high, key(node))&lt;br /&gt;
        end_if&lt;br /&gt;
        if right(node) ≠ node then&lt;br /&gt;
            PUSH(S_nodes, right(node))&lt;br /&gt;
            PUSH(S_low, key(node))&lt;br /&gt;
            PUSH(S_high, high)&lt;br /&gt;
        end_if&lt;br /&gt;
    else&lt;br /&gt;
        if first = nil then&lt;br /&gt;
            first = node&lt;br /&gt;
        else&lt;br /&gt;
            second = node&lt;br /&gt;
            break&lt;br /&gt;
        end_if&lt;br /&gt;
    end_if&lt;br /&gt;
end_while&lt;br /&gt;
tmp = parent(first)&lt;br /&gt;
parent(first) = parent(second)&lt;br /&gt;
parent(second) = tmp&lt;br /&gt;
if left(parent(first)) = second then&lt;br /&gt;
    left(parent(first)) = first&lt;br /&gt;
else&lt;br /&gt;
    right(parent(first)) = first&lt;br /&gt;
end_if&lt;br /&gt;
if left(parent(second)) = first then&lt;br /&gt;
    left(parent(second)) = second&lt;br /&gt;
else&lt;br /&gt;
    right(parent(second)) = second&lt;br /&gt;
end_if&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 5. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Neka se u prazno AVL stablo redom ubacuju ključevi 27, 12, 7, 34, 31, 5, 6, a zatim se brišu ključevi 31, 34, 12. Prilikom brisanja koristiti &#039;&#039;&#039;prethodnika&#039;&#039;&#039;. Prikazati izgled stabla nakon svakog izvršenog koraka pri umetanju i brisanju.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Konačno stablo je:&lt;br /&gt;
     7&lt;br /&gt;
    / \&lt;br /&gt;
   6   27&lt;br /&gt;
  /&lt;br /&gt;
 5&lt;br /&gt;
Postupak možete simulirati u nekom od [https://www.cs.usfca.edu/~galles/visualization/AVLtree.html simulatora] za AVL stabla.&lt;br /&gt;
&lt;br /&gt;
== 6. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Koristeći metodu binarne pretrage kao ideju, napisati u pseudokodu funkciju koja efikasno proverava da li je tačka T teme &#039;&#039;n&#039;&#039;-tougla M. Mnogougao M se zadaje pomoću niza tačaka – temena. Tačke su određene koordinatama &#039;&#039;x&#039;&#039; i &#039;&#039;y&#039;&#039;. Niz temena mnogougla je uređen rastuće po vrednosti koordinate &#039;&#039;x&#039;&#039;, pri čemu za istu vrednost koordinate &#039;&#039;x&#039;&#039; važi rastuća uređenost po vrednosti koordinate &#039;&#039;y&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Ovde se radi obična binarna pretraga s tim što se uslovi za odlazak ulevo ili udesno menjaju: ukoliko je x koordinata trenutne tačke veća od tražene, ili ukoliko su iste ali je y koordinata veća od tražene, ide se ulevo, a ukoliko je x koordinata trenutne tačke manja od tražene, ili ukoliko su iste ali je y koordinata manja od tražene, ide se udesno.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
CHECK VERTEX(M, n, T)&lt;br /&gt;
low = 1&lt;br /&gt;
high = n&lt;br /&gt;
while low ≤ high do&lt;br /&gt;
    mid = (high + low) / 2&lt;br /&gt;
    if (x(M[mid]) = x(T)) and (y(M[mid]) = y(T)) then&lt;br /&gt;
        return true&lt;br /&gt;
    else if (x(M[mid]) &amp;lt; x(T)) or ((x(M[mid]) = x(T)) and (y(M[mid]) &amp;lt; y(T))) then&lt;br /&gt;
        low = mid + 1&lt;br /&gt;
    else&lt;br /&gt;
        high = mid - 1&lt;br /&gt;
    end_if&lt;br /&gt;
end_while&lt;br /&gt;
return false&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 7. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Dat je neuređeni niz &#039;&#039;A&#039;&#039; dužine &#039;&#039;n&#039;&#039; celobrojnih ključeva u opsegu vrednosti 1..100 koji se pretražuje i neuređeni niz ključeva &#039;&#039;K&#039;&#039; mnogo veće dužine &#039;&#039;m&#039;&#039; na koje se vrši pretraga. U nizu &#039;&#039;K&#039;&#039; ima veliki broj ponovljenih ključeva. Zbog neravnomerne verovatnoće pretrage ključeva, koristi se sledeća tehnika optimizacije. Nakon svakog uspešnog pretraživanja, vrši se prebacivanje za &#039;&#039;p&#039;&#039; pozicija unapred, gde je &#039;&#039;p&#039;&#039; broj uspešnih nalaženja tog ključa. Napisati u pseudokodu funkciju koja redom pretražuje niz &#039;&#039;A&#039;&#039; na ključeve iz niza &#039;&#039;K&#039;&#039; i vraća prosečan broj poređenja po nađenom ključu.&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;milo&amp;quot;&amp;gt;&lt;br /&gt;
SEARCH(A, K, n, m)&lt;br /&gt;
for i = 1 to 100 do&lt;br /&gt;
    P[i] = 0&lt;br /&gt;
end_for&lt;br /&gt;
sum = 0&lt;br /&gt;
num = 0&lt;br /&gt;
for i = 1 to m do&lt;br /&gt;
    key = K[i]&lt;br /&gt;
    found = 0&lt;br /&gt;
    for j = 1 to n do&lt;br /&gt;
        if A[j] = key then&lt;br /&gt;
            found = j&lt;br /&gt;
            break&lt;br /&gt;
        end_if&lt;br /&gt;
    end_for&lt;br /&gt;
    if found ≠ 0 then&lt;br /&gt;
        sum = sum + j&lt;br /&gt;
        num = num + 1&lt;br /&gt;
        P[key] = P[key] + 1&lt;br /&gt;
        for k = found downto found - P[key] + 1 do&lt;br /&gt;
            A[k] = A[k-1]&lt;br /&gt;
        end_for&lt;br /&gt;
        A[found - P[key]] = key&lt;br /&gt;
    end_if&lt;br /&gt;
end_for&lt;br /&gt;
if num = 0 then&lt;br /&gt;
    return 0&lt;br /&gt;
else&lt;br /&gt;
    return sum/num&lt;br /&gt;
end_if&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 8. zadatak ==&lt;br /&gt;
=== Postavka ===&lt;br /&gt;
Obrazložiti da li je sledeća sekvenca ključeva validna u stablu binarnog pretraživanja:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Ako se prilikom uspešnog pretraživanja u jednom stablu redom proveravaju ključevi 23, 87, 158, 348, 160, 200, 150, 158.&lt;br /&gt;
# Ako se prilikom neuspešnog pretraživanja u drugom stablu redom proveravaju ključevi 546, 453, 427, 68, 415, 231, 247, 417, 300.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Rešenje ===&lt;br /&gt;
Ovde gledamo naš silazak niz potencijalni BST i na osnovu prethodno pogledanih čvorova određujemo granice &#039;&#039;high&#039;&#039; i &#039;&#039;low&#039;&#039; u kojima se moraju nalaziti naredni ključevi kako bi stablo bilo validan BST. Dobijamo da oba slučaja nisu moguća u binarnom stablu pretraživanja.&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
#&lt;br /&gt;
## 23 → 87, low = 23, high = +∞&lt;br /&gt;
## 87 → 158, low = 87, high = +∞&lt;br /&gt;
## 158 → 348, low = 158, high = +∞&lt;br /&gt;
## 348 → 160, low = 158, high = 348&lt;br /&gt;
## 160 → 200, low = 160, high = 348&lt;br /&gt;
## 200 → 150, 150 &amp;lt; low =&amp;gt; ⚡&lt;br /&gt;
#&lt;br /&gt;
## 546 → 453, low = -∞, high = 546&lt;br /&gt;
## 453 → 427, low = -∞, high = 453&lt;br /&gt;
## 427 → 68, low = -∞, high = 427&lt;br /&gt;
## 68 → 415, low = 68, high = 427&lt;br /&gt;
## 415 → 231, low = 68, high = 415&lt;br /&gt;
## 231 → 247, low = 231, high = 415&lt;br /&gt;
## 247 → 417, 417 &amp;gt; high =&amp;gt; ⚡&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Категорија:АСП2]]&lt;br /&gt;
[[Категорија:Рокови]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9C%D0%B0%D1%82%D0%B5%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%B0_2/%D0%88%D1%83%D0%BB_2020&amp;diff=314</id>
		<title>Математика 2/Јул 2020</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9C%D0%B0%D1%82%D0%B5%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%B0_2/%D0%88%D1%83%D0%BB_2020&amp;diff=314"/>
		<updated>2020-07-06T10:46:00Z</updated>

		<summary type="html">&lt;p&gt;Mladen Žurkić: /* Други део задаци */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Други део ==&lt;br /&gt;
&lt;br /&gt;
=== Задаци ===&lt;br /&gt;
=== 2. задатак ===&lt;br /&gt;
а) Колико има функција које сликају скуп M = {1, 2} у скуп P = {1, 2, 3, 4, 5}?&lt;br /&gt;
&lt;br /&gt;
б) Коликоа има функција које сликају скуп {a, b, c} у скуп цифара?&lt;br /&gt;
&lt;br /&gt;
== Домаћи задатак ==&lt;br /&gt;
=== 1. задатак ===&lt;br /&gt;
Решити интеграле:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;math&amp;gt;\int \frac{dx}{x^2 + 4x + 4} &amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;math&amp;gt;\int \frac{x+2}{x^2 + 4x + 4}dx &amp;lt;/math&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
=== 2. задатак ===&lt;br /&gt;
Одредити екстреме функције &amp;lt;math&amp;gt; z(x,y) = (x-y)^2 + (x-1)^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
=== 3. задатак ===&lt;br /&gt;
Одредити &amp;lt;math&amp;gt; c,d \in \mathbb{R} &amp;lt;/math&amp;gt; тако да &amp;lt;math&amp;gt; y = csinx + dcosx &amp;lt;/math&amp;gt; буде решење &amp;lt;math&amp;gt; y&#039; + 2y = cosx &amp;lt;/math&amp;gt;&lt;br /&gt;
=== 4. задатак ===&lt;br /&gt;
Одредити параметар а тако да матрица има сопствену вредност 5. &#039;&#039;(Фали матрица)&#039;&#039;&lt;br /&gt;
=== 5. задатак ===&lt;br /&gt;
Колико има осмоцифрених бројева таквих да се цифра 9 појављује три пута, цифре 7 и 8 два пута и цифра 6 једанпут?&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Рокови]]&lt;br /&gt;
[[Категорија:Математика 2]]&lt;/div&gt;</summary>
		<author><name>Mladen Žurkić</name></author>
	</entry>
</feed>