Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Команды передачи управления




 

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

Как уже отмечалось в разд.2 адрес следующей подлежащей выполнению команды хранится в паре регистров CS:IP. В сегментном регистре CS содержится физический адрес начала сегмента кода, в регистре указателе команд IP содержится смещение в памяти следующей подлежащей выполнению команды относительно начала сегмента кода. Следовательно, команды передачи управления модифицируют регистры CS и IP, в результате чего МП выбирает для выполнения не следующую по порядку команду, а команду в каком-либо другом месте программы. В дальнейшем мы будем рассматривать только те команды, которые реализуют внутрисегментные переходы (сам сегмент не изменяется и регистр CS также не изменяется).

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

1. Команды безусловной передачи управления:

– команда безусловного перехода;

– команды вызова процедуры и возврата из процедуры;

2. Команды условной передачи управления:

– команды перехода по результату команды сравнения;

– команды перехода по состоянию определенного флага;

– команда перехода по содержимому регистра CX.

3. Команды управления циклом.

То место, куда необходимо передать управление определяется с помощью метки. Метка – символическое имя, обозначающее определенную ячейку памяти, куда необходимо осуществить переход и предназначенное для использования в качестве операнда в командах передачи управления. Сам адрес перехода транслятор рассчитывает самостоятельно.

Метку можно описать, используя оператор «:» (двоеточие). Формат описания приведен на рис.9.1.

 

Рис. 9.1. Формат описания метки

 

Например:

 

m1: MOV AX,BX

m2:

LEA DX

 





Поделиться с друзьями:


Дата добавления: 2015-10-01; Мы поможем в написании ваших работ!; просмотров: 857 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Лаской почти всегда добьешься больше, чем грубой силой. © Неизвестно
==> читать все изречения...

2419 - | 2289 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.009 с.