Лекция: Задание 1. Выполнение команды установить переход по нулю.
Рассмотрим фрагмент программы, представленной на рис.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).