ОРТ2/К2 Јануар 2024 — разлика између измена

Извор: SI Wiki
Пређи на навигацију Пређи на претрагу
м (Format)
Ред 4: Ред 4:


==Задатак==
==Задатак==
Посматра се део рачунара који чине меморија и и процесор. Меморија јe капацитета 2^16 бајтова. Ширина
Посматра се део рачунара који чине меморија и и процесор. Меморија ј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 бајта, регистри
опште намене RO, R1 до R15 дужине 2 бајта, програмска статусна реч PSW дужине 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). БИтови IR23.20
Инструкција скока јe инструкција условног скока уколико је резултат нула (ВZ). Битови IR<sub>23..20</sub>
имају вредност 0000 за инструкције скока, Инструкиија BZ реализује, се као релативни скок у односу на
имају вредност 0000 за инструкције скока, Инструкиија BZ реализује, се као релативни скок у односу на
тренутну вредност програмског бројача PC. Битови IR23.16 представљајут код операције који је 00000000 за
тренутну вредност програмског бројача PC. Битови IR<sub>23..16</sub> представљајут код операције који је 00000000 за
инструкцију BZ. Битови IR15.8 представљају померај који Jе 8-битна целобројна величина са знаком.
инструкцију BZ. Битови IR<sub>15..8</sub> представљају померај који Jе 8-битна целобројна величина са знаком.
Инструкција је дужине 2 бајт.  
Инструкција је дужине 2 бајт.  


Безадресне инструкције су инструкција стављања садржаја акумулатора на стек (PUSН), пуњења
Безадресне инструкције су инструкција стављања садржаја акумулатора на стек (PUSН), пуњења
акумулатора садржајем са стека (РОР), декрементирања акумулатора (DЕС) и повратка из потпрограма
акумулатора садржајем са стека (РОР), декрементирања акумулатора (DЕС) и повратка из потпрограма
(RTS). Битови IR23.20 имају вредност 0001 за безадресне инструкције. Битови IR19.16 означавају редни број
(RTS). Битови IR<sub>23..20</sub> имају вредност 0001 за безадресне инструкције. Битови IR<sub>19..16</sub> означавају редни број
инструкције. Битови IR23.16 представљају код операције и редом су 00010000, 00010001, 00010010, 00010011 за инструкције PUSH, POP, DEC u RTS. Инструкције су дужине 1 бајт.
инструкције. Битови 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 резултат померања смешта у регистар А
Битови ПR23.20 представљају код операције и редом су 0010, 0011, 0100, 0101 и 0110 за инструкције LD, ST,
Битови 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). Битови IRi9.1 представљају начин адресирања и редом су 0000, 0001, 0010 и 0011 за адресирања
(immed). Битови IR<sub>9..1</sub> представљају начин адресирања и редом су 0000, 0001, 0010 и 0011 за адресирања
regdir, memdir, preincr и immed. Код регистарских адресирања битови IR15.12 се користе за адресирање
regdir, memdir, preincr и immed. Код регистарских адресирања битови IR<sub>15..12</sub> се користе за адресирање
једног од регистара опште намене R0 до R15, док се битови IR11.8 не користе. Дужина инструкције је 2
једног од регистара опште намене R<sub>0</sub> до R<sub>15</sub>, док се битови IR<sub>11..8</sub> не користе. Дужина инструкције је 2
бајта. Код меморијских адресирања битови IR15.0 представљају адресу меморијске локације. Дужина
бајта. Код меморијских адресирања битови IR<sub>15..0</sub> представљају адресу меморијске локације. Дужина
инструкције је З бајта. Код непосредног адресирања битови IR15.8 представљају 8 битни податак. Дужина
инструкције је З бајта. Код непосредног адресирања битови IR15.8 представљају 8 битни податак. Дужина
инструкције је 2 бајта
инструкције је 2 бајта
Ред 47: Ред 47:
==K2 [20]==
==K2 [20]==
Сви регистри имају операцију паралелног уписа, Регистри РС, MAR, SР и сви регистри опште намене
Сви регистри имају операцију паралелног уписа, Регистри РС, MAR, SР и сви регистри опште намене
имају операцију инкрементирања. Регистри А и имају и операцију декрементирања. У процесору
имају операцију инкрементирања. Регистри А и имају и операцију декрементирања. У процесору
постоји и аритметичко-логичка јединица ALU која обавља све потребне аритметичке, логичке и померачке
постоји и аритметичко-логичка јединица ALU која обавља све потребне аритметичке, логичке и померачке
операције. На први улаз ALU могу се довести регистри РС и А. На други улаз АLU могу се довести
операције. На први улаз ALU могу се довести регистри РС и А. На други улаз АLU могу се довести

Верзија на датум 30. јануар 2024. у 12:22

Овај рок није решен. Помозите SI Wiki тако што ћете га решити.

K2Н одржан је 20.01.2024. због промене програма предмета није било могуће у јануару радити и К2 и К3 интегрално, већ је могло да се бира само један од та два.

Задатак

Посматра се део рачунара који чине меморија и и процесор. Меморија ј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 указује на прву слободну меморијску локацију.

K2 [20]

Сви регистри имају операцију паралелног уписа, Регистри РС, MAR, SР и сви регистри опште намене имају операцију инкрементирања. Регистри А и SР имају и операцију декрементирања. У процесору постоји и аритметичко-логичка јединица ALU која обавља све потребне аритметичке, логичке и померачке операције. На први улаз ALU могу се довести регистри РС и А. На други улаз АLU могу се довести реrиcтри IR и B.

  • а) Нацртати дијаграм тока фазе формирања адресе и читања операнда.
  • б) Нацртати дијаграм тока фазе извршавања операције.
  • в) Допунити на празним линијама приложени део главног програма.
  • г) Написати изразе за генерисање сигнала логичког услова операције АSL, сигнала начина адресирања

immed и све изразе за генерисање сигнала дужина инструкција.