<<
>>

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

Как мы выяснили ранее, в линейных программах нужный порядок выполнения команд обеспечивается за счет автоматического увеличения содержимого ре- гистра iр на длину выполняемой команды.
Организация ветвлений основана на пропуске групп команд, связанных с не выбранными ветвями, и переходом к первой команде выбранной ветви. Организация цикла связана с возвратом к команде, начинающей цикл, которая ранее уже хотя бы один раз была выпол- нена. И в том, и в другом случае должен произойти переход к команде, кото- рая не следует непосредственно за текущей. Таким образом, для организации ветвлений и циклов необходимо принудительно изменить линейный порядок выполнения команд программы. Для этого в системе команд процессора i8О86 предусмотрены команды, которые называются командами перехода. Приме- няется также другое название: команды передачи управления, так как можно считать, что управление процессором передается на другой участок программы или в общем случае — другой программе.

ВНИМАНИЕ --------------------------------------------------------------------------------------------------------

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

Для реализации такой замены все команды перехода в машинном формате со- держат в качестве операнда указатель команды, которая должна быть выполнена следующей (к которой необходимо выполнить переход, которой нужно передать управление). Так, например, система команд процессора i8О86 содержит ко- манду с кодом операции EA16 и мнемокодом jmр (от jump — прыжок). По этой команде выполняется переход к команде, заданной ее непосредственным четы- рехбайтовым операндом.

Общая длина команды составляет 5 байтов. Рассмотрим, например, команду ЕА 00 01 00 A016, ее операндом является код 00 01 00 A016. Первые два байта операнда 00 0116 являются новым содержимым регистра iр, а следующие два 00 A016 — новым содержимым регистра сs. Используемый порядок записи указателя в команде является следствием принципа обратного порядка записи кодов в оперативную память: старшие байты поля операнда со- держат более важную информацию — код из регистра сs. В результате выпол- нения команды в регистры сs и iр загружаются новые значения: [сs] = A00016 и [iр] = 010016. Еще раз обратите внимание на обратный порядок записи кодов и его роль теперь уже в формировании содержимого регистров сs и iр.

В ассемблерном формате кроме мнемокода команды переходов содержат либо указатель (jmр АО00 : 0100), либо метку (jmр Ml) той команды, к которой нуж- но выполнить переход.

Пример выполнения команды перехода показан на рис. 4.35. Пусть в некоторый момент времени регистры сs и iр содержат указатель ООА8:ОО1С (слева), соот- ветствующий физическому адресу (00A9C16). По этому адресу расположена об- суждавшаяся ранее команда с кодом ЕА 00 01 00 A016. Во время ее выполнения производится загрузка нового содержимого регистров сs и iр (справа), а когда процессор по стандартному алгоритму начинает выполнять следующую коман- ду, он автоматически обращается не по адресу ООА8:ОО22 (00AA216), в котором находится команда, следующая за командой перехода, а по адресу, который за- дан указателем из команды АООО:О1ОО (A010016).

Рис. 4.35. Выполнение межсегментного перехода

<< | >>
Источник: Степанов А. Н.. Архитектура вычислительных систем и компьютерных сетей. 2007

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

  1. § 29 Передача и переход прав по обязательствам. – Римская конструкция права передачи. – Облегчение передачи новейшим законодательством. – Передаточная надпись. – Ограничения передачи. – Действие передачи. – Ответственность передатчика и права приобретателя. – Вступление в право кредитора или суброгация. – Русский закон передачи. – Передача заемных писем. – Переход требований к кредиторам.
  2. Статья 1041. Передача права управления имуществом другому лицу
  3. Статья 1039. Передача в управление имущества, которое является предметом договора залога
  4. Определение команды.
  5. Признаки команды.
  6. § 4.5. Деятельность команд в организации
  7. Пример настройки и реабилитации в футбольной команде
  8. Работа с другими командами
  9. Четыре шага по созданию эффективной команды
  10. Кто становится лидером команды
  11. ШЕСТЬ СТУПЕНЕЙ НА ПУТИ СОЗДАНИЯ КОМАНДЫ.
  12. Статья 1040. Обращение взыскания на имущество, переданное в управление, по требованию кредитора установщика управления
  13. Создание деловой команды «Вероятно, я не лучший советчик в этом вопросе».
  14. Эд САЛЛИВАН. ВРЕМЯ — ДЕНЬГИ Создание команды разработчиков, программного обеспечения, 2001
  15. Интервью с официальными лицами или представителями их пресс-служб чреваты двумя проблемами: опасностью невольного искажения информации при передаче, интерпретации фактов, а также передачей намеренно дозированных сведений.
  16. § 3. Право управления предприятием как особый вид абсолютных прав. Право полного и ограниченного управления (п. 1774-1776)
  17. УПРАВЛЕНИЕ ВРЕМЕНЕМ VERSUS УПРАВЛЕНИЕ СОБОЙ
  18. § 4. Правопреемство как следствие приобретения права управления предприятием. Условия отчуждения и приобретения права управления предприятием (п. 1777-1782)