
- •Часть II
- •____________________________________
- •1. Классификация микропроцессоров
- •2. Архитектура микропроцессора
- •2.1 Основные характеристики микропроцессора
- •2.2 Логическая структура микропроцессора
- •2.3 Устройство управления
- •2.4 Особенности программного и микропрограммного управления
- •2.5 Система команд
- •2.6 Режимы адресации
- •2.7 Типы архитектур
- •3. Организация ввода/вывода в микопроцессорной системе
- •3.1 Программная модель внешнего устройства
- •3.2 Форматы передачи данных
- •3.3 Параллельная передача данных
- •3.4 Последовательная передача данных
- •3.4.1 Синхронный последовательный интерфейс
- •3.4.2 Асинхронный последовательный интерфейс
- •3.5 Способы обмена информацией в микропроцессорной системе
- •3.5.1 Программно-управляемый ввод/вывод
- •3.5.2 Организация прерываний в микроЭвм
- •3.5.3 Организация прямого доступа к памяти
- •4. Память микропроцессорной системы
- •4.1 Микросхемы памяти в составе микропроцессорной системы
- •4.2 Буферная память
- •4.3 Стековая память
- •5. Микропроцессор Intel 8086(88)
- •5.1. Поставляемая разработчиком информация
- •5.2. Схема и назначение выводов
- •5.3. Архитектура микропроцессора Intel 8080
- •§ 3.2). Таким образом, мп ветвится в подпрограмму обслуживания прерываний, которая отвечает на
- •5.4. Использование регистра адреса/данных
- •5.5. Использование указателя стека
- •6. Программирование микропроцессора
- •6.1. Машинный код и ассемблер
- •6.2. Простой состав команд
- •6.3. Состав команд арифметических действий
- •6.4. Состав команд логических операций
- •6.5. Состав команд операций передачи данных
- •6.6. Состав команд операций ветвления
- •6.7. Состав команд вызова подпрограмм и возврата в основную программу
- •6.8. Состав команд прочих опреаций
- •6.9. Способы адресации
- •7. Проектирование микропроцессорных систем
- •7.2 Ошибки, неисправности, дефекты
- •7.3 Отладка
- •7.4 Обнаружение ошибки и диагностика неисправности
- •7.5 Функции средств отладки
- •7.6 Этапы проектирования микропроцессорных систем
- •7.7 Источники ошибок
- •7.8 Проверка правильности проекта
- •7.9 Автономная отладка
- •7.10 Отладка программ
- •7.11 Комплексная отладка микропроцессорных систем
- •8. Отличия Intel 8086 (88) от современных микропроцессоров
- •1. Классификация микропроцессоров
6.7. Состав команд вызова подпрограмм и возврата в основную программу
Эти команды составляют пятую категорию состава команд типового МП. Их только две, и они
приведены в табл. 6.7. Команды вызова (CALL) и возврата (RЕТ) всегда используются парами. При их
выполнении индикаторы не изменяются.
Табл. 6.7 Состав команд вызова подпрограмм и возврата в основную программу
Трехбайтовая команда CALL используется основной программой для перехода МП (или ветвления)
к подпрограмме. Когда МП передает первую команду CALL, он находит адрес перехода в двух следующих
байтах программы. Адрес следующей команды за CALL отправляется в стек, и МП переходит тогда в
начало подпрограммы. Команды подпрограммы выполняются пока МП не передаст команду возврата (RET).
Сохраняющийся в стеке адрес отыскивается счетчиком команд, и МП продолжает выполнение основной
программы, принимая ее там, где он ее покинул. Подпрограмма может быть использована много раз в ходе
выполнения одной и той же основной программы. Подпрограмма может быть расположена в ОЗУ или ПЗУ.
6.8. Состав команд прочих опреаций
Эти команды составляют последнюю категорию, которыми наделен типовой микропроцессор. Они
сведены в табл. 6.8 и содержат команды помещения в стек, извлечения из стека, отсутствия операции и
команду остановки. При их выполнении индикаторы не изменяются.
Команда PUSH PSW- помещает в стекА и индикаторы. Эта команда является однобайтовой,
содержимое аккумулятора помещается первым, а регистра состояния - вторым.
Команда NOP (no operation - нет операций) соответствует отсутствию всякого выполнения операций
в течение 1 или 2 мкс. Это однобайтовая команда, единственным эффектом которой является инкремент
счетчика команд. Никакой другой регистр не затрагивается. Эта команда используется как дополнение
(когда одна или две команды отменены в ходе наладки) и связывает две части программы так, чтобы МП
мог обратиться от одной к другой. Она может также служить для ввода интервала времени в цикл
временной задержки.
Табл. 6.8 Прочие команды типового микропроцессора
Команда HLT (останов) используется в конце программы для остановки микропроцессора. В этом
случае только СБРОС или команда вызова прерывания может позволить новый запуск типового
микропроцессора.
6.9. Способы адресации
Способы адресации нашего типового МП следующие: 1) неявный; 2) регистровый; 3)
непосредственный; 4) прямой; 5) косвенный регистровый.
Два первых (регистровый и неявный) касаются операндов, расположенных в самом МП. Три
последних (непосредственная, прямая и косвенная регистровая) — операндов, расположенных вне МП, т. е.
в ячейках памяти или портах УВВ. Эти способы адресации присущи МП Intel 8080/8085.
Команды с неявной адресацией– те, которые не требуют операндов. Например, команда STC
(восстановить индикатор переноса) не затрагивает другие регистры или индикаторы.
В случае регистровой адресации операнд отыскивается в одном из внутренних регистров МП. Оба
эти типа команд всегда однобайтовые.
В случае непосредственной адресации операнд поступает в программную память из следующего
байта (двух следующих байтов) за КОП. Такие команды занимают 2 или 3 байта.
В случае прямой адресации 2-й и 3-й байт команды прямо указывают на адрес операнда. Они
являются адресами в прямом способе адресации, тогда как при непосредственной адресации эти же байты
были операндами. Такие команды занимают 2 или 3 байта.
В случае косвенной регистровой адресации пара регистровHL указывает на адрес операнда в
памяти. Рассмотрим пример: загрузить LOC (Н иL) в А с мнемоникой MOV А, М. Этот тип команд всегда
однобайтовый.
Другие МП снабжены иногда иными способами прямой адресации, а именно: нулевой или основной
страницы; абсолютной; адресации действующей страницы или ожидаемой.