Тема5. Организации компьютеров, локальных сетей и интернет

Лабораторная работа №1

Тема: «Изучение принципов работы компьютера».

Цель занятия: Ознакомление с моделью функционирования компьютера на примере выполнения команд ввода-вывода.

Отрабатываемые вопросы:

1. Ознакомление с моделью функционирования компьютера.

2. Выполнение команд ввода-вывода.

Организационно – методические указания

Задание 1. Ознакомление с моделью функционирования компьютера.

Для запуска модели нужно в директории Computerзапустить файл Computer.exe. Откроется окно «Система моделирования простейшей ЭВМ» (рис. 1.).

Тема5. Организации компьютеров, локальных сетей и интернет - student2.ru

Рис. 1. Система моделирования простейшей ЭВМ

Данная модель включает:

1. Арифметическое устройство, предназначенное для выполнения арифметических операций и содержащее:

1.1.Аккумулятор (АК) для временного хранения операндов (данных) и промежуточных результатов.

1.2. Регистр операндов (РО)для временного хранения операндов.

1.3. Флаги (признаки) для организации операций условного перехода (переход по нулю Тема5. Организации компьютеров, локальных сетей и интернет - student2.ru , переход по знаку Тема5. Организации компьютеров, локальных сетей и интернет - student2.ru ) и фиксации преполнения Тема5. Организации компьютеров, локальных сетей и интернет - student2.ru . Разрядность АКиРО пять десятичных знаков, следовательно максимальное положительное число равно 99999.

2. Регистр команд, предназначенный для хранения выполняемой команды, она начнет выполняться после записи ее в регистр.Регистр команд имеет три поля:

2.1.Поле код операции (КОП) для указания операции, подлежащей выполнению. Это поле имеет разрядность два десятичных знака. В зависимости от того какие значение принимает поле, могут выполняться следующие команды:

· Поле КОП=01 – команда ввод. Ввод данных с Устройства ввода в Аккумулятор;

· Поле КОП=02 – команда вывода. Вывод данных из Аккумулятора на Устройство вывода;

· Поле КОП=03 – команда сложения;

· Поле КОП=04 – команда вычитания;

· Поле КОП=05 – команда умножения;

· Поле КОП=06 – команда деления;

· Поле КОП=07 – команда загрузить. Служит для загрузки в АК одного из операндов из Оперативной памяти (ОП). Изначально оба операнда хранятся в основной памяти и до выполнения операции один из них нужно загрузить в Аккумулятор. Поскольку адрес одного из операндов предопределен, в командах обработки достаточно явно указать местоположение только второго операнда;

· Поле КОП=08 – команда записать. Служит для загрузки операнда или результата операции в ячейку памяти (из АК вОП);

· Поле КОП=09 – установить переход по нулю. Служит для организации условного перехода по адресу, указанному в поле адреса команды, если результат выполнения предыдущей команды равен нулю (флаг Ноль устанавливается в единицу). Если результат выполнения предыдущей команды не равен нулю, то переход не происходит и начинает выполняться следующая команда программы;

· Поле КОП=10 – установить переход по знаку. Служит для организации условного перехода по адресу, указанному в поле адреса команды, если результат выполнения предыдущей команды отрицательный (флаг Знак устанавливается в единицу). Если результат выполнения предыдущей команды не отрицательный, то переход не происходит и начинает выполняться следующая команда программы;

· Поле КОП=11 – безусловный переход. Служит для организации перехода по адресу указанному в команде. Переход осуществляется всегда в не зависимости от результата выполнения предыдущей команды;

· Поле КОП=12– останов. Этой командой должна заканчиваться любая программа.

Примечание. Команды Ввод и Вывод относятся к командам обмена данными с периферийными устройствами; команды Сложения, Вычитания, Умножения, Деления - к командам арифметической обработки; команды Переход по нулю, Переход по знаку и Безусловный переход к командам управления.

2.2. Поле тип адресации (ТА). Для указания способа формирования исполнительного адреса (адрес ОП по которому находится операнд). В зависимости от того какое значение принимает поле могут использоваться следующие способы адресации:

· Поле ТА=0 – прямая адресация. В поле Адреса (А) указан исполнительный адрес операнда (Рис. 2);

Тема5. Организации компьютеров, локальных сетей и интернет - student2.ru

Рис. 2. Прямая адресация

· Поле ТА=1 – непосредственная адресация. В поле Адреса (А)находится не адрес, а операнд, т.е. обращение кОП не происходит (Рис. 3);

Тема5. Организации компьютеров, локальных сетей и интернет - student2.ru

Рис. 3. Непосредственная адресация

· Поле ТА=2 – косвенная адресация. В поле адреса команд находится адрес ячейки ОП,в которой расположен адрес операнда (Рис. 4).

Команда
КОП
ТА=2
Память
Операнд  
 
 
 
Непосредственный адрес операнда=90
Адрес ОП=80
Адрес ОП=90

Рис. 4. Косвенная адресация

2.3.Поле адреса (А), в котором находится:

· исполнительный адрес операнда при прямой адресации;

· сам операнд при непосредственной адресации;

· адрес ячейки ОП при косвенной адресации;

· адрес следующей команды при выполнении команд перехода.

3. Оперативная память, предназначенная для записи, хранения и выдачи команд и операндов. В память входят: Регистр слова (РС), Регистр адреса (РА),кнопки Запись и Чтение.Для того чтобы занести в ячейку ОПкакое – либо значение необходимо на РАнабрать адрес ячейки, а на РСоперанд или команду и нажать кнопку Запись (Рис. 5). Для того чтобы прочитать данные из ОПнеобходимо задать адрес ячейки и нажать кнопку Чтение.

Тема5. Организации компьютеров, локальных сетей и интернет - student2.ru

Рис. 5. Оперативная память

4. Блок управляющих сигналов (БУС), предназначенный для имитации работы устройства управления (Рис. 6). С его помощью можно задавать режимы работы (Автомат, по цикл, по такт), запускать программы в выбранном режиме (кнопка Старт), останавливать выполнение программы (кнопкаСтоп), осуществлять сброс регистров (кнопка Сброс).Кроме того, можно выбирать регистры для записи информации с помощью меню Выбор регистров, а также прослеживать выполнение команды по микрокомандам (окно МК).

Примечание.При выполнении все команды разбиваются на подкоманды. Подкоманда, которая выполняется за один такт (режим Такт при однократном нажатии кнопки Старт) называется микрокомандой.

Тема5. Организации компьютеров, локальных сетей и интернет - student2.ru

Рис. 6. Блок управляющих сигналов

5. Счетчик адреса команды (СЧАК). В рассматриваемой модели любая команда занимает одну ячейку, поэтому содержимое СЧАКувеличивается на единицу, что обеспечивается подачей сигнала управления +1 (рис.1). По завершении текущей команды адрес следующей команды программы всегда берется из счетчика команд. Для изменения естественного порядка вычислений (перехода в инуюточку программы) достаточно занести в СЧАКадрес точки перехода.

6. Устройство ввода, в состав которого входит Регистр ввода (РВВ),предназначенный для ввода данных.

7. Устройство вывода,в состав которого входит Регистр вывода (РВЫВ), предназначенный для вывода данных.

Задание 2. Выполнение команд ввода-вывода.

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

Исходные данные: с Устройства ввода считать операнд, равный «555»,сохранить его в ячейке ОП по адресу «80» и вывести на Устройство вывода.

1. Введем заданный операнд вРегистр ввода. Для этого в Блоке управляющих сигналов в окне Выбор регистров выберем Регистр ввода (Рис. 7), соответствующее окно регистра окрасится в синий цвет. Введем заданный операнд с клавиатуры в РВВ.

Тема5. Организации компьютеров, локальных сетей и интернет - student2.ru

Рис. 7. Ввод данных в РВВ

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

Адрес Команды Команда Пояснения
Поля команды
КОП ТА А
Запись операнда с РВВ в АК
Запись операнда из АК в ячейку ОП по адресу 80
Обнуление АК. В команде используется непосредственная адресация. Следовательно «00» в полеАявляется операндом
Пересылка операнда из ячейки ОП с адресом 80 в АК
Вывод операнда на РВЫВ
Останов
             

Рис. 8. Программа выполнения ввода-вывода данных

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

Тема5. Организации компьютеров, локальных сетей и интернет - student2.ru

Рис. 9. Занесение команд программы в ОП

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

5. Введем в СЧАКадрес первой команды программы «00» аналогично пункту 3 и рис.6.

6. Для более полного представления принципов работы компьютера рассмотрим процесс выполнения команды Вводпо микрокомандам:

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

6.2. В окне МКБУСпоявится первая микрокоманда: РА:=СЧАК (Регистру адреса присвоить значение Счетчика адреса команды), по которой информация из СЧАК (т.е. адрес первой команды программы) будет передана в ОПнаРА. На модели направление передачи показано красной стрелкой (рис. 10).

6.3.При следующем нажатии кнопки СтартвБУС появиться микрокоманда: Чтение (РС:=ОП(РА))(присвоить Регистру словасодержимоеРегистра адреса оперативной памяти),т.е. в РСбудет считана команда «01 0 00». А в результате выполнения предыдущей МК на РАОперативной памяти появится значение СЧАК.

Тема5. Организации компьютеров, локальных сетей и интернет - student2.ru

Рис. 10. Выполнение микрокоманды РА:=СЧАК

6.4. Нажмем кнопку Старт, вРСпоявится команда, а вБУС микрокоманда: РК:=РС(Регистру командприсвоить значение Регистра слова), которая будет выполняться в следующем такте (рис. 11).

Тема5. Организации компьютеров, локальных сетей и интернет - student2.ru

Рис. 11. Выполнение микрокоманды Чтение РС:=ОП(РА)

6.5.Последовательно нажимая кнопку Старт, получим последовательность выполнения микрокоманд (микропрограмму), реализующий команду Ввод(рис 12).

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

№ такта Микрокоманда Результат выполнения МК
РА:=СЧАК На РА появится адрес команды из СЧАК
Чтение (РС:=ОП(РА)) В РС заносится содержимое РА, т.е. команда 01 0 00 (Ввод)
РК:=РС В РК считывается команда Ввод из РС ОП
АК:=РВВ В АК с РВВ считывается операнд, т.е. число 555
СЧАК:=СЧАК +1 Окончание выполнения команды Ввод. Формирование адреса следующей команды. В следующем такте значение СЧАК будет увеличено на 1(в данной модели команды занимают одну ячейку памяти), т.е. в нем будет находиться адрес следующей команды

Рис. 12. Микропрограмма выполнения команды «Ввод»

7. После окончания выполнения команды Ввод переведите режим работы в Автомат,нажмите кнопкуСтарт, т.е.выполните остальные команды программы (рис 8).

8. Проверьте правильность выполнения программы, используя кнопку Чтениев блоке ОП.ВБлоке управляющих сигналов выберетеРегистр адреса (окноВыбор регистров).Наберете адрес «80». Нажмите кнопку Чтение.В ячейке по адресу «80» и в РВЫВ должен быть занесен операнд «555».

Задание 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. Нажмем кнопку Старт. В результате выполнения микрокоманды СЧАКувеличится на единицу, в окне МКпоявится микрокоманда:

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

Тема5. Организации компьютеров, локальных сетей и интернет - student2.ru

Рис.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 (в ней будет сохранен результат);

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

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

Задание 2. Выполнение команды умножение.

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

Исходные данные: первый операнд принять равным «66», записать его вячейкуОП по адресу «61»; второй равным «29», записать по адресу «62»; сохранить произведение в ячейке ОП по адресу «91». Программу начать с адреса «10».

1. Занесём данные в ячейкиОП, аналогично заданию 1, пункт 1. Таким образом, получим:

· В ячейке 61 – первый операнд равный 66;

· В ячейке 62 – второй операнд равный 29.

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

  Адрес Команды   Команда   Пояснения
Поля команды
КОП ТА А
  Загрузка первого операнда из ячейки ОП с адресом 61 в АК
Выполнение команды умножение. Результат будет изначально находиться в АК
Запись результата в ОП по адресу 91
Останов
             

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

3. Введем в СЧАКадрес первой команды программы.Для этоговБлоке управляющих сигналовв окне Выбор регистроввыберем Счетчик адреса команды, соответствующее окно регистра окрасится в синий цвет.Наберем адрес первой команды «10».

4. Введем составленную программу в модель, аналогично заданию 1, пункт 2.

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

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

Тема5. Организации компьютеров, локальных сетей и интернет - student2.ru

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

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

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

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

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

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

9. Выберем в Блоке управляющих сигналоврежим работы Автоматинажмем кнопку Старт.В результате выполнения программы в ячейке ОПпо адресу «91»будет записан результат равный «01914».

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

Задание 3. Выполнение команды установить переход по нулю.

Рассмотрим фрагмент программы, представленной на рис.1.

1. Занесем команды программы в ячейки ОПсогласно заданию (см. ЛР№2). 2. Введем в соответствующие ячейки операнды:

· Операнд 1 – «05» по адресу «50»;

· Операнд 2 – «05» по адресу «51».

3. Занесем в СЧАКадрес первой команды программы – «29».

4. Переведем режим работы в Цикл(при однократном нажатии кнопки Стартвыполняетсяодна команда)и выполним первые две команды программы.

  Адрес Команды   Команда   Пояснения
Поля команды
КОП ТА А
Загрузка первого операнда из ячейки ОП с адресом 50 в АК
Выполнение команды вычитание (из первого операнда вычитается второй)
Переход по нулю. Анализируется результат последней выполненной команды (04 0 51). Если результат равен нулю, то следующей будет выполняться команда, адрес которой указан в поле А команды перехода (40). Если результат отличный от нуля то будет выполняться следующая команда программы ( по адресу 32)
Вывод на РВЫВ результата выполнение команды вычитание (он должен быть не равен 0)
Останов
Вывод на РВЫВ результата выполнение команды вычитание (он должен быть равен 0)
Останов
             

Рис. 1. Программа выполнения команды «переход если ноль»

5. Выберем вБлоке управляющих сигналоврежим работы Такти нажмем кнопку Старт. Начнет выполняться микропрограмма команды Переход если ноль.

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

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

Рис. 2. Выполнение микропрограммы «Переход если ноль»

7.Переведем режим работы в Автомати выполним остальные команды программы.

8.В РВЫВбудет записан ноль.

Задание для самостоятельной работы.Измените значение второго операнда с «5» на «4». Выполните всю программу (рис.1) в режиме Цикл, посмотрите, как изменится алгоритм. Значение РВЫВдолжно получиться отличным от нуля (1).

Задание 4. Выполнение команды установить переход по знаку.

Рассмотрим фрагмент программы представленной на рис.3.

1. Занесем команды программы в ячейки ОПсогласно заданию (см. ЛР№2). 2. Введем в соответствующие ячейки операнды:

· Операнд 1 - «10» по адресу «60»;

· Операнд 2 - «11» по адресу «61».

3. Занесем в СЧАКадрес первой команды программы – «32».

4. Переведем режим работы в Цикл(при однократном нажатии кнопки Стартвыполняетсяодна команда)и выполним первые две команды программы.

Примечание.Операнды, имеющие отрицательное значение хранятся в ячейках ОП в специальном коде (только для данной модели), где старший десятичный разряд принимает значение равное единицы. Например, операнд = «-00004» будет закодирован как «10004».

Адрес Команды Команда   Пояснения
Поля команды
КОП ТА А
Загрузка первого операнда из ячейки ОП с адресом 60 в АК
Выполнение команды вычитание (из первого операнда вычитается второй)
Переход по знаку. Анализируется результат последней выполненной команды (04 0 61). Если результат меньше нуля, то следующей будет выполняться команда, адрес которой указан в поле А команды перехода (43). Если результат отличный от отрицательного то будет выполняться следующая команда программы ( по адресу 32)
Вывод на РВЫВ результата выполнение команды вычитание (он должен быть не отрицательным)
Останов
Вывод на РВЫВ результата выполнение команды вычитание (он должен быть меньше нуля)
Останов
             

Рис. 3. Программа выполнения команды переход если ноль

5. Выберем вБлоке управляющих сигналоврежим работы Такти нажмем кнопку Старт. Начнет выполняться микропрограмма команды Переход если ноль.

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

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

Рис. 4. Выполнение микропрограммы «Переход по знаку»

7.Переведем режим работы модели компьютера в Автомати выполним остальные команды программы.

8.В РВЫВбудет записан результат «10001» , т.е. «-1».

Лабораторная работа 2

Тема: Основы алгоритмизации и программирования

Цель занятия: приобрести практические навыки по разработке алгоритмов, программ и отладке их в интегрированной среде.

Отрабатываемые вопросы:

1. Работа в интегрированной среде.

2. Разработка схем алгоритмов программ.

3. Отладка программ.

4.

Наши рекомендации