Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Выч.Маш.Ответы / Вопрос№30

.docx
Скачиваний:
20
Добавлен:
15.05.2015
Размер:
24.11 Кб
Скачать

ВЫПОЛНЕНИЕ ПРОГРАММЫ

Управление модулями реализуется в микропроцессорных системах (МПС) посредством ее шин. Процессор расшифровывает команду и задает на шинах такие последовательности потен­циалов, которые заставляют управляемые им блоки выполнять требуемые дей­ствия [1].

Для иллюстрации рассмотрим выполнение короткого фрагмента про­граммы передачи байта из одной ячейки памяти в другую. Пусть численное значение байта будет 10H, а его передача производится из ячейки 0100H в ячейку 0101H. Пусть также фрагмент программы размещается в памяти, на­чиная с ячейки 2000H.

Для выполнения фрагмента сначала нужно переслать байт в аккумулятор, а затем из аккумулятора в память. Так как обращение к памяти подразумевает косвенную адресацию, вначале требуется загрузка пары регистров Н адресом ячейки, к которой идет обращение. С учетом сказанного фрагмент программы в мнемокодах (на ассемблере МП) примет вид, показанный в левом столбце

Мнемокод Ячейка Код

LXН, 0100 2000 21 00 01

MOV А, М 2003 7Е

INX Н 2004 23

MOV М, А 2005 77

Команда загрузки непосредственных данных в пару регистров LXI rpb3b2 имеет код 00ПР0001, где ПР – адрес пары регистров. Пара регистров Н имеет адрес ПР = 10. Подставив это значение в код команды, получаем код 21. В правом столбце записана команда в кодах. Она имеет вид: 21 00 01, т. к. после кода операции из памяти извлекаются сначала младший (00), а затем старший (01) байты. Команда трехбайтная и занимает 2000—2002 ячейки памяти.

Однобайтная команда MOV А, М пересылки из памяти в аккумулятор является вариантом команды MOV г, М с кодом 01ППП110, где ППП — адрес аккумулятора. Подставив в этот код адрес регистра А = 111, получаем код команды 7Е.

Команда INX Н прибавляет единицу к содержимому регистровой пары и является вариантом, код которого получается из кода 00ПР0011 при подста­новке адреса пары регистров 10, что дает код 23.

Последняя команда фрагмента программы (пересылка из аккумулятора в память) MOV М, А, имеющая код 77, передает в ячейку памяти, адрес кото­рый находится в регистровой паре Н, содержимое аккумулятора. Эта коман­да завершает выполнение фрагмента программы. Последовательность четырех рассмотренных команд сгенерирует временные диаграммы, посредством которых программа будет выполнена (рис. 4).

Рис. 4.Диаграммы передачи байта из ячейки в ячейку

Соседние файлы в папке Выч.Маш.Ответы