Система команд микропроцессора КР580вм80а на базе микро-ЭВМ "Электроника 580". Технические характеристики микро-ЭВМ, страница 14

Адрес

Содержимое

8000

81FF

Текст программы

Рег. В

Уменьшаемое

Рег. С

Вычитаемое

Рег. Е

Разность

в) ввести исходные данные и выполнить программу в пошаговом режиме;

г) после выполнения каждого шага программы заносить в таблицу 5.4 содержимое регистров А и Е и состояние флага переноса;

Таблица 5.4

шага

Регистры

Флаг

переноса

Комментарий

А

Е

0

00

00

-

Исходные данные

1

2

д) перевести результат из шестнадцатеричного формата в десятичный.

5.4. Содержание отчета

В отчете привести наименование и цель работы, текст программы задач №1 и №2, заполненные таблицы 5.2 и 5.4 с подробными комментариями.

Лабораторная работа №6

Изучение команд перехода и вызова подпрограмм

6.1.Цель работы

1. Изучить действие команд перехода и вызова подпрограмм.

2. Получить практические навыки составления программ.

6.2. Краткие сведения из теории

6.2.1. Команды перехода

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

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

В соответствии со вторым (условным) способом последовательность выполнения программы определяется некоторыми условиями, т.е. изменяется в том случае, когда значение проверяемого условия совпадает с заданным.

Команды перехода, называемые также командами ветвления, позволяют организовать в программах циклы и разветвления.

Разница между командами перехода сводится к различию используемых способов адресации и проверяемых в ходе выполнения этих команд признаков результата.

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

Эта область памяти может находиться как в непосредственной близости от текущей используемой области, так и на значительном удалении от нее. Когда выполняется команда перехода, то не остается никаких сведений о том, в какой точке произошел выход из программы.

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

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

Существуют следующие виды команд перехода:

Безусловный переход                                                    JMP, адрес

Переход если нуль                                                          JZ, адрес

Переход если не нуль                                                     JNZ, адрес

Переход если перенос                                                    JC, адрес

Переход если нет переноса                                            JNC, адрес

Переход если плюс                                                         JP, адрес

Переход если минус                                                       JM, адрес