Скачиваний:
64
Добавлен:
04.03.2014
Размер:
202.75 Кб
Скачать

1.8. Запуск выполнения программы.

После ввода программы пользователя , выполните предварительную установку регистров внутренней памяти и отдельных битов , если это необходимо для выполнения программы.

Запуск программы пользователя может быть выполнен в одном из двух режимов: пошаговом и автоматическом. Для запуска программы пользователя необходимо предварительно ввести адрес первой выполняемой команды в программный счетчик с помощью кнопок «PC» или «PM», т.е. после записи программы в память необходимо вернуться в начало программы (набрать адрес ячейки, в которой хранится первая исполняемая команда программы).

Запуск программы пользователя в пошаговом режиме осуществляется нажатием кнопки «ST» («Step»). При этом выполняется одна команда и на дисплей выводится новое значение программного счетчика (адрес следующей команды).

Запуск программы пользователя в автоматическом режиме осуществляется нажатием кнопки «RU» («Run»).

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

Для продолжения выполнения программы нажмите кнопку «RU» или «ST».

Примечание. В данном микропроцессоре отсутствуют команды HALT и STOP. Поэтому выход из-под программы осуществляется по запросу прерывания, который выставляет контроллер клавиатуры после нажатия любой кнопки.

Задание 2. Изучить порядок выполнения команд и программ.

1. Команды обращения к регистрам

1.1 . Запись данных в регистр.

а) Ручная запись:

- нажмите кнопку «Rg»;

  • выберите нужный регистр, нажав кнопку «+1»;

  • используя числовые кнопки «0», «1»,….. «F» занесите двухзначное число в

данный регистр;

- запомните это число, нажав кнопку «+1».

б) Программная запись. Эта операция выполняется, например, с помощью команды передачи данных из аккумулятора в регистр.

Команда

Структура

Код

MOV Rn, A

1111 1rrr

F8…FF

Здесь rrr– номерn-го регистра 0…7,F8 – код команды при обращении к нулевому регистру,FF– код команды при обращении к седьмому регистру, соответственно.

Примечание. Выбор банка регистров осуществляется с помощью разрядовRS0,RS1 слова состояния процессора ССП (PSW). После включения питания по умолчанию устанавливается нулевой банк.

Порядок выполнения:

  1. Занесите в аккумулятор (A) любое двухзначное число.

  2. Нажмите кнопку «PM».

  3. Введите значение 1000. (С этого адреса можно вводить программы пользователя).

  4. Наберите код команды.

  5. Нажмите кнопку «+1» для запоминания команды.

  6. Запустите программу с адреса 1000 в пошаговом режиме, для чего используйте кнопку «ST».

  7. Проверьте содержимое регистра, который использовался в данной команде.

в) Программное занесение константы. В этом случае в выбранный регистр заносится содержимое второго байта команды (ХХ).

.

Команда

Структура

Код

MOV Rn, #d

0111 1rrr

78…7F

#d

ХХ

Порядок выполнения:

  1. Нажмите кнопку «PM».

  2. Введите значение 1000.

  3. Введите код команды.

  4. Нажмите кнопку «+1» для запоминания команды. Адрес памяти изменился и стал 1001.

  5. Занесите значение константы по этому адресу.

  6. Нажмите кнопку «+1» для запоминания константы.

  7. Перейдите в начало программы, то есть в ячейку с адресом 1000.

  8. Нажмите кнопку «ST» для пошагового выполнения программы.

  9. Проверьте содержимое регистра, который используется в данной команде.

г) Программное занесение прямо адресуемого байта памяти (РПД) в регистр.

Команда

Структура

Код

MOV Rn, ad

1010 1rrr

A8…AF

ad

ХХ

Здесь аd- адрес байта РПД.

  1. Откройте ячейку резидентной памяти данных (кнопка «DM») в диапазоне адресов от 40 до 7F.

  2. Занесите в ячейку любое число.

  3. Запустите исполнение команды с 1000 адреса.

  4. Проверьте содержимое соответствующего регистра, номер которого используется в коде команды.

1.2. Чтение регистра

а) Перенос содержимое регистра в аккумулятор

Команда

Структура

Код

MOV A, Rn

1110 1rrr

E8…EF

Занесите код команды в память программ по адресу 1000. Выполните команду в пошаговом режиме для третьего регистра второго банка. Просмотрите содержимое регистра. Значение, лежащее в регистре «Rn», будет занесено в «А».

Примечание. Банк регистра определяется разрядами RS0, RS1 регистра флагов (FL). По умолчанию установлен нулевой банк.

б) Пересылка значения регистра по прямому адресу в РПД.

Команда

Структура

Код

MOV ad, Rn

1000 1rrr

88…8F

ad

XX

Примечание. Используйте ячейки памяти в диапазоне адресов 40Н…7FH

Соседние файлы в папке Методы к лабам