Лекция: Лабораторная работа № 5. Командный цикл процессора
Реализация программы в ЭВМ сводится к последовательному выполнению команд. Каждая команда, в свою очередь, выполняется как последовательность микрокоманд, реализующих элементарные действия над операционными элементами процессора.
В программной модели учебной ЭВМ предусмотрен Режим микрокоманд,в котором действие командного цикла реализуется и отображается на уровне микрокоманд. Список микрокоманд текущей команды выводится в специальном окне Микрокомандный уровень(см. рис. 8.8).
Задание 5.1
Выполнить снова последовательность команд по варианту задания 1 (см. табл. 9.3), но в режиме Шаг.Зарегистрировать изменения состояния процессора и памяти в форме табл. 9.11, в которой приведены состояния ЭВМ при выполнении примера 1 (фрагмент).
Задание 5.2
Записать последовательность микрокоманд для следующих команд модели учебной ЭВМ:
ADD R3
ADD @R3
ADD @R3+ADD -@R3
JRNZ R3,M
MOV R4,R2
JMP M
CALL M
RET: PUSH R3
POP R5
Контрольные вопросы
1. Какие микрокоманды связаны с изменением состояния аккумулятора?
2. Какие действия выполняются в модели по микрокоманде MRd? RWr?
3. Попробуйте составить микропрограмму (последовательность микрокоманд, реализующих команду) для несуществующей команды «умножение модулей чисел».
4. Что изменится в работе процессора, если в каждой микропрограмме микрокоманду увеличения программного счетчика PC := PC + 1 переместить в самый конец микропрограммы?
Таблица 9.11. Состояние модели в режиме моделирования на уровне микрокоманд
Адрес (РС) | Мнемо-код | Микрокоманда | ОЗУ | CR | АУ | Ячейки | ||||
MAR | MDR | COP | TA | ADR | Acc | DR | ||||
RD #20 | MAR: = PC | |||||||||
MRd | ||||||||||
CR:=MDR | ||||||||||
PC: = PC +1 | ||||||||||
Acc:=000.ADR | ||||||||||
WR 30 | MAR: = PC | |||||||||
MRd | ||||||||||
CR:=MDR | ||||||||||
PC: = PC +1 | ||||||||||
MAR: ADR | ||||||||||
MDR: = Acc | ||||||||||
MWr | ||||||||||
ADD #5 | MAR:= PC | |||||||||
MRd | ||||||||||
CR: = MDR | ||||||||||
PC: = PC + 1 | ||||||||||
DR: = 000.ADR | ||||||||||
Fау: AL1 | ||||||||||
WR @30 | MAR: = PC |