Лекция: Задание 1. Выполнение команды сложение.

Постановка задачи: составить программу вычисляющую сумму двух операндов и сохраняющую результат в ячейке ОП.

Исходные данные: первый операнд принять равным «100», записать его вячейку ОП по адресу «50»; второй равным «299», записать по адресу «51»; сохранить сумму в ячейке ОП по адресу «90».

1. Занесём данные в ячейкиОП. Для этоговБлоке управляющих сигналов в окне Выбор регистров выберем Регистр адреса,соответствующее окно регистра окрасится в синий цвет.Наберем адрес первого операнда «50». ВБлоке управляющих сигналов в окне Выбор регистров выберем Регистр слова,соответствующее окно регистра окрасится в синий цвет. Введем с клавиатуры первый операнд «100». Нажмем кнопку Запись.После нажатия кнопки значение адреса в РАувеличилось на единицу и приняло значение «51», следовательно, адрес второго операнда задался автоматически, т.к. операнды расположены в смежных ячейках ОП. Введем второй операнд «299», нажмем кнопку Запись(действия выполняются аналогично, как и для первого операнда).

2. Составим программу согласно заданию. Она приведена на рис.1.

Адрес Команды Команда Пояснения
Поля команды
КОП ТА А
  Загрузка первого операнда из ячейки ОП с адресом 50 в АК
Сложение двух операндов результат будет изначально находиться в АК
Запись результата в ОП по адресу 90
Останов
           

 

Рис. 1. Программа сложения двух чисел

 

3. Введем составленную программу в модель. Для этоговБлоке управляющих сигналовв окне Выбор регистров выберем Регистр адреса,соответствующее окно регистра окрасится в синий цвет.Наберем адрес первой команды «00». ВБлоке управляющих сигналов в окне Выбор регистров выберем Регистр слова,соответствующее окно регистра окрасится в синий цвет. Введем с клавиатуры первую команду «07 0 50». Нажмем кнопку Запись.

4. Аналогично введем другие команды. Обратите внимание, что после нажатия кнопки Записьзначение РАувеличивается на единицу.

5. Введем в СЧАКадрес первой команды программы «00», аналогично ЛР №1, рис. 5.

6. Выполним команду сложения по микрокомандам. Для этого:

6.1.В Блоке управляющих сигналов выберемрежим работы – Такт. Последовательно нажимая кнопку Старт, выполним первую команду не акцентируя внимания на этапах её выполнения (выполнение команды Загрузкапроисходитза шесть тактов).

6.2. Начало выполнения команды Сложениепредставлено на рис. 2. В Регистре команднаходится команда 07 0 50 – загрузить в АК содержимое ячейки «50». В АК находится первый операнд – «100». В ОП содержимое ячейки «50». В окне МК БУСпоявилась микрокоманда – СЧАК:=СЧАК +1, которая будет выполнена в следующем такте.

6.3. Нажмем кнопку Старт. В результате выполнения микрокоманды СЧАКувеличится на единицу, в окне МКпоявится микрокоманда:

РА:=СЧАКРегистру адреса присвоить значение Счетчика адреса команд.

 

Рис. 2. Начало выполнения команды сложение

 

6.4. Последовательно нажимая кнопку Старт, проследим все этапы выполнения команды Сложение (рис. 3).

Внимание!Микрокоманда, появляющаяся в окне МК БУС будет выполнена в следующем в такте. Направления передачи информации показаны красными стрелками.

№ такта Микрокоманда Результат выполнения МК
1- 5 Выполнение команды «Загрузка» в АК первого операнда (100)
СЧАК:=СЧАК+1 Формирование адреса следующей команды
РА:=СЧАК На РА появится адрес команды из СЧАК
Чтение (РС:=ОП(РА)) В РС заносится содержимое РА, т.е. команда 03 0 51(сложение)
РК:=РС В РК считывается команда сложение из РС ОП
РА:=А На регистр адреса заносится адрес второго операнда (51) из поля А команды, находящейся на РК
Чтение (РС:=ОП(РА)) В РС (ОП) заносится второй операнд (299)
РО:=РС Регистру операнда присваивается значение РС
ПУСК АУ Запуск арифметического устройства, т.е. в следующем такте выполнится команда сложение и в АК будет сформирован результат
СЧАК:=СЧАК +1 Окончание выполнения команды Сложение. Формирование адреса следующей команды. В следующем такте значение СЧАК будет увеличено на 1(в данной модели команды занимают одну ячейку памяти), т.е. в нем будет сформирован адрес следующей команды

Рис. 3. Микропрограмма выполнения команды сложение

 

7. Выберем в Блоке управляющих сигналоврежим работы Автоматинажмем кнопку Старт, т.е. выполним все остальные команды программы.

8. В результате выполнения программы в ячейкеОПпо адресу «90»будет результат равный «399».

9. Проверьте правильность выполнения программы (аналогично ЛР№1, заданию 2, пункт 8).

 

Задание для самостоятельной работы.Составить программу вычитания из первого операнда второго. Результат сохранить результат в ячейке ОП. Исходные данные:

· Операнд 1 = 456, записать по адресу = 53;

· Операнд 2 = 68, записать по адресу равному 54;

· Адрес ячейки ОП= 77 (в ней будет сохранен результат);

· Выполнить по тактам команду «Загрузка»дляпервого операндаи объяснить назначение микрокоманд;

· Выполнить по тактам команду «Вычитание»и объяснить назначение микрокоманд.

 

еще рефераты
Еще работы по информатике