ОРТ2/К2 Јануар 2024 — разлика између измена
(Нова страница: {{tocright}} {{нерешено}}<!-- Ово ставити уколико НИЈЕДАН задатак није решен, док уколико само неки задаци нису решени на првом месту у њиховој секцији поставити {{делимично решено}}. Уколико се користи било који од ова два шаблона, ОБАВЕЗНО проверити да ли постоји и…) |
мНема описа измене |
||
(Није приказано 6 међуизмена 3 корисника) | |||
Ред 1: | Ред 1: | ||
{{tocright}} | {{tocright}} | ||
{{нерешено}} | {{нерешено}} | ||
''' | '''Поправни други колоквијум 2024. године''' одржан је 20.01.2024. Због промене програма предмета није било могуће у јануару радити и други и трећи колоквијум интегрално, већ је морало да се изабере само један од та два дела за полагање у текућем испитном року. | ||
==Задатак== | ==Задатак== | ||
Посматра се део рачунара који чине меморија и и процесор. Меморија јe капацитета 2 | Посматра се део рачунара који чине меморија и и процесор. Меморија јe капацитета 2<sup>16</sup> бајтова. Ширина | ||
меморијске речи је 1 бајт. Процесор је са једноадресним форматом инструкција. Подаци су дужине 1 бајт. | меморијске речи је 1 бајт. Процесор је са једноадресним форматом инструкција. Подаци су дужине 1 бајт. | ||
Адресе су дужине 2 бајта и заузимају две суседне меморијске локације, при чему се млађи бајт налази на | Адресе су дужине 2 бајта и заузимају две суседне меморијске локације, при чему се млађи бајт налази на | ||
Ред 11: | Ред 11: | ||
МАR дужине 2 бајт, прихватни регистар податка меморије MR 1 бајт, прихватни регистар инструкције | МАR дужине 2 бајт, прихватни регистар податка меморије MR 1 бајт, прихватни регистар инструкције | ||
IR дужине 3 бајта, акумулатор А дужине 1 бајта, прихватни регистар податка В дужине 1 бајта, регистри | IR дужине 3 бајта, акумулатор А дужине 1 бајта, прихватни регистар податка В дужине 1 бајта, регистри | ||
опште намене | опште намене R<sub>0</sub>, R<sub>1</sub> до R<sub>15</sub> дужине 2 бајта, програмска статусна реч PSW дужине 1 бајт, указивач на на врх | ||
стека SР дужине 2 бајт. Инструкције су дужине 1, 2 или 3 бајта. | стека SР дужине 2 бајт. Инструкције су дужине 1, 2 или 3 бајта. | ||
Инструкција скока јe инструкција условног скока уколико је резултат нула (ВZ). | Инструкција скока јe инструкција условног скока уколико је резултат нула (ВZ). Битови IR<sub>23..20</sub> | ||
имају вредност 0000 за инструкције скока, Инструкиија BZ реализује, се као релативни скок у односу на | имају вредност 0000 за инструкције скока, Инструкиија BZ реализује, се као релативни скок у односу на | ||
тренутну вредност програмског бројача PC. Битови | тренутну вредност програмског бројача PC. Битови IR<sub>23..16</sub> представљајут код операције који је 00000000 за | ||
инструкцију BZ. Битови | инструкцију BZ. Битови IR<sub>15..8</sub> представљају померај који Jе 8-битна целобројна величина са знаком. | ||
Инструкција је дужине 2 бајт. | Инструкција је дужине 2 бајт. | ||
Безадресне инструкције су инструкција стављања садржаја акумулатора на стек (PUSН), пуњења | Безадресне инструкције су инструкција стављања садржаја акумулатора на стек (PUSН), пуњења | ||
акумулатора садржајем са стека (РОР), декрементирања акумулатора (DЕС) и повратка из потпрограма | акумулатора садржајем са стека (РОР), декрементирања акумулатора (DЕС) и повратка из потпрограма | ||
(RTS). Битови | (RTS). Битови IR<sub>23..20</sub> имају вредност 0001 за безадресне инструкције. Битови IR<sub>19..16</sub> означавају редни број | ||
инструкције. Битови | инструкције. Битови IR<sub>23..16</sub> представљају код операције и редом су 00010000, 00010001, 00010010, 00010011 за инструкције PUSH, POP, DEC u RTS. Инструкције су дужине 1 бајт. | ||
Адресне инструкције су инструкцијa преноса У акумулатор (LD) инструкција преноса из акумулатора (ST), | Адресне инструкције су инструкцијa преноса У акумулатор (LD) инструкција преноса из акумулатора (ST), | ||
Ред 30: | Ред 30: | ||
да се наиђе на комбинацију операција са неким адресирањем са којим та операција не може да се изврши, | да се наиђе на комбинацију операција са неким адресирањем са којим та операција не може да се изврши, | ||
такве инструкције треба да буду без дејства. Инструкција АSL резултат померања смешта у регистар А | такве инструкције треба да буду без дејства. Инструкција АSL резултат померања смешта у регистар А | ||
Битови | Битови IR<sub>23..20</sub> представљају код операције и редом су 0010, 0011, 0100, 0101 и 0110 за инструкције LD, ST, | ||
ADD, ASL и JSR, Дужина инструкција зависи од начина адресирања. | ADD, ASL и JSR, Дужина инструкција зависи од начина адресирања. | ||
Начини адресирања су регистарско директно адресирање (regdir), меморијско директно адресирање | Начини адресирања су регистарско директно адресирање (regdir), меморијско директно адресирање | ||
(memdir), регистарско индиректно са преинкрементирањем адресирање (preiпсг) и непосредно адресирање | (memdir), регистарско индиректно са преинкрементирањем адресирање (preiпсг) и непосредно адресирање | ||
(immed). Битови | (immed). Битови IR<sub>9..1</sub> представљају начин адресирања и редом су 0000, 0001, 0010 и 0011 за адресирања | ||
regdir, memdir, preincr и immed. Код регистарских адресирања битови | regdir, memdir, preincr и immed. Код регистарских адресирања битови IR<sub>15..12</sub> се користе за адресирање | ||
једног од регистара опште намене | једног од регистара опште намене R<sub>0</sub> до R<sub>15</sub>, док се битови IR<sub>11..8</sub> не користе. Дужина инструкције је 2 | ||
бајта. Код меморијских адресирања битови | бајта. Код меморијских адресирања битови IR<sub>15..0</sub> представљају адресу меморијске локације. Дужина | ||
инструкције је З бајта. Код непосредног адресирања битови IR15.8 представљају 8 битни податак. Дужина | инструкције је З бајта. Код непосредног адресирања битови IR15.8 представљају 8 битни податак. Дужина | ||
инструкције је 2 бајта | инструкције је 2 бајта | ||
Ред 44: | Ред 44: | ||
Стек расте према вишим меморијским локацијама, а регистар SP указује на прву слободну меморијску | Стек расте према вишим меморијским локацијама, а регистар SP указује на прву слободну меморијску | ||
локацију. | локацију. | ||
Сви регистри имају операцију паралелног уписа, Регистри РС, MAR, SР и сви регистри опште намене | Сви регистри имају операцију паралелног уписа, Регистри РС, MAR, SР и сви регистри опште намене | ||
имају операцију инкрементирања. Регистри А и | имају операцију инкрементирања. Регистри А и SР имају и операцију декрементирања. У процесору | ||
постоји и аритметичко-логичка јединица ALU која обавља све потребне аритметичке, логичке и померачке | постоји и аритметичко-логичка јединица ALU која обавља све потребне аритметичке, логичке и померачке | ||
операције. На први улаз ALU могу се довести регистри РС и А. На други улаз АLU могу се довести | операције. На први улаз ALU могу се довести регистри РС и А. На други улаз АLU могу се довести | ||
Ред 53: | Ред 53: | ||
* б) Нацртати дијаграм тока фазе извршавања операције. | * б) Нацртати дијаграм тока фазе извршавања операције. | ||
* в) Допунити на празним линијама приложени део главног програма. | * в) Допунити на празним линијама приложени део главног програма. | ||
* г) Написати изразе за генерисање сигнала логичког услова операције АSL, сигнала начина адресирања | * г) Написати изразе за генерисање сигнала логичког услова операције АSL, сигнала начина адресирања immed и све изразе за генерисање сигнала дужина инструкција. | ||
immed и све изразе за генерисање сигнала дужина инструкција. | |||
[[Категорија:Рокови]] | [[Категорија:Рокови]] | ||
[[Категорија:ОРТ2]] | [[Категорија:ОРТ2]] | ||
Тренутна верзија на датум 30. јануар 2024. у 11:35
- Овај рок није решен. Помозите SI Wiki тако што ћете га решити.
Поправни други колоквијум 2024. године одржан је 20.01.2024. Због промене програма предмета није било могуће у јануару радити и други и трећи колоквијум интегрално, већ је морало да се изабере само један од та два дела за полагање у текућем испитном року.
Задатак
Посматра се део рачунара који чине меморија и и процесор. Меморија јe капацитета 216 бајтова. Ширина меморијске речи је 1 бајт. Процесор је са једноадресним форматом инструкција. Подаци су дужине 1 бајт. Адресе су дужине 2 бајта и заузимају две суседне меморијске локације, при чему се млађи бајт налази на вишој, а старији бајт на нижој адреси. У процесору постоји регистар програмског бројача РС дужине 2 бајт, адресни регистар меморије МАR дужине 2 бајт, прихватни регистар податка меморије MR 1 бајт, прихватни регистар инструкције IR дужине 3 бајта, акумулатор А дужине 1 бајта, прихватни регистар податка В дужине 1 бајта, регистри опште намене R0, R1 до R15 дужине 2 бајта, програмска статусна реч PSW дужине 1 бајт, указивач на на врх стека SР дужине 2 бајт. Инструкције су дужине 1, 2 или 3 бајта.
Инструкција скока јe инструкција условног скока уколико је резултат нула (ВZ). Битови IR23..20 имају вредност 0000 за инструкције скока, Инструкиија BZ реализује, се као релативни скок у односу на тренутну вредност програмског бројача PC. Битови IR23..16 представљајут код операције који је 00000000 за инструкцију BZ. Битови IR15..8 представљају померај који Jе 8-битна целобројна величина са знаком. Инструкција је дужине 2 бајт.
Безадресне инструкције су инструкција стављања садржаја акумулатора на стек (PUSН), пуњења акумулатора садржајем са стека (РОР), декрементирања акумулатора (DЕС) и повратка из потпрограма (RTS). Битови IR23..20 имају вредност 0001 за безадресне инструкције. Битови IR19..16 означавају редни број инструкције. Битови IR23..16 представљају код операције и редом су 00010000, 00010001, 00010010, 00010011 за инструкције PUSH, POP, DEC u RTS. Инструкције су дужине 1 бајт.
Адресне инструкције су инструкцијa преноса У акумулатор (LD) инструкција преноса из акумулатора (ST), аритметичка инструкција сабирања (ADD), инструкција аритметичког померања улево за једно место (АSL) и инструкција безусловног скока на срачунату адресу потпрограма (SR). У случају да се наиђе на комбинацију операција са неким адресирањем са којим та операција не може да се изврши, такве инструкције треба да буду без дејства. Инструкција АSL резултат померања смешта у регистар А Битови IR23..20 представљају код операције и редом су 0010, 0011, 0100, 0101 и 0110 за инструкције LD, ST, ADD, ASL и JSR, Дужина инструкција зависи од начина адресирања.
Начини адресирања су регистарско директно адресирање (regdir), меморијско директно адресирање (memdir), регистарско индиректно са преинкрементирањем адресирање (preiпсг) и непосредно адресирање (immed). Битови IR9..1 представљају начин адресирања и редом су 0000, 0001, 0010 и 0011 за адресирања regdir, memdir, preincr и immed. Код регистарских адресирања битови IR15..12 се користе за адресирање једног од регистара опште намене R0 до R15, док се битови IR11..8 не користе. Дужина инструкције је 2 бајта. Код меморијских адресирања битови IR15..0 представљају адресу меморијске локације. Дужина инструкције је З бајта. Код непосредног адресирања битови IR15.8 представљају 8 битни податак. Дужина инструкције је 2 бајта ватм лоаиіама Стек расте према вишим меморијским локацијама, а регистар SP указује на прву слободну меморијску локацију.
Сви регистри имају операцију паралелног уписа, Регистри РС, MAR, SР и сви регистри опште намене имају операцију инкрементирања. Регистри А и SР имају и операцију декрементирања. У процесору постоји и аритметичко-логичка јединица ALU која обавља све потребне аритметичке, логичке и померачке операције. На први улаз ALU могу се довести регистри РС и А. На други улаз АLU могу се довести реrиcтри IR и B.
- а) Нацртати дијаграм тока фазе формирања адресе и читања операнда.
- б) Нацртати дијаграм тока фазе извршавања операције.
- в) Допунити на празним линијама приложени део главног програма.
- г) Написати изразе за генерисање сигнала логичког услова операције АSL, сигнала начина адресирања immed и све изразе за генерисање сигнала дужина инструкција.