Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
методичка по МП[1].doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
513.02 Кб
Скачать

4.3. Задание для домашней подготовки

4.3.1. Изучить механизм обработки и передачи данных в микропроцессоре.

4.3.2. Изучить систему команд микропроцессора К580.

4.3.3. В соответствии с вариантом построить циклограмму выполнения последовательности команд. Перед началом выполнения первой команды устанавливается следующее состояние регистров процессора: А=80; F=43; C=33; B=08; E=32; D=08; 3P=0805; PC=0806; H=08; L=20.

Так как РС=0806, то программа размещается в области ОЗУ с адреса 0806. кроме состояния регистров перед началом работы программы задается состояние следующих ячеек ОЗУ:

(820)=36; (0821)=00; (850)=30; (0851)=40.

Прежде всего необходимо, пользуясь табл.5 приложения, определить 16-ричные коды заданной программы и её размещение в памяти. Так, для приведённой ниже в качестве примера программы такая кодировка имеет вид:

0806 96 SUB M

0807 T6F0 ANI ØFØH

0809 02 STAX B

080Л C4 3800 CNZ 38H

При записи программы необходимо четко выделить следующие поля: поле адреса, поле кодов команды, поле метки, поле мнемо-кодов операции, поле операндов. Следует пояснить, как изменяется состояние регистров и памяти после выполнения каждой команды. Команда SUB вычитает из содержимого аккумулятора содержимое ячейки памяти, адресуемой регистровой парой НL, т.к. в паре НL находятся адрес 0820, то будет вычитаться число 38. При вычитании число 38 инвертируется, увеличивается на один и складывается с кодом 80. Результат фиксируется в аккумуляторе. А признаки результата – в регистре F (F=Об).

После выполнения команды AH I ØFØH устанавливается (А)=40, (F)=02. Затем команда STAX B засылает результат по адресу, находящемуся в регистровой паре ВС, т.е. в ячейку с адресом 0839, и команды CNZ 38Н спасает содержимое счетчика команд в стеке и загружает в РС адрес перехода 38. Таким образом, после выполнения программы устанавливается следующее состояние регистров: A=40; F=02; B=08; C=33; D=08; E=32; H=08; L=20; SP=084E; PC=0038.

После оценки состояния регистров и памяти можно перейти к построению циклограммы выполнения программы. Для рассмотренного случая она приведена на рис. 4.3.

1 2 3 4 1 2 3 1 2 3 4 1 2 3 1 2 3 4 1 2 3

Ш А

Ш О

DBIN

WRI

1 2 3 4 5 1 2 3 1 2 3 1 2 3 1 2 3

Ш А

Ш О

DBIN

WRI

Рис. 4.3. Циклограмма программы

Передача байта состояния по шине данных для упрощения циклограмм не показаны. Передачи информации при выполнении команд ANI, STAX проанализировать самостоятельно. Механизм действия команды CNZ требует дополнительного пояснения.

В первом цикле команды CNZ процессор получает код команды С4 .во 2-м и 3-м циклах получает адрес перехода и записывает его в регистры временного хранения W, Z. Если условие NZ (Z=0) не удовлетворяется, 4-й и 5-й циклы не выполняются и процессор выбирает из памяти следующую за CNZ команду. Если условие NZ (Z=1) выполнено, в 4-м и 5-м циклах содержимое РС из регистров временного хранения W, Z загружается адрес перехода 0038.