Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

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




Управление флагами.

Команда Описание
CLC CLear Carry flag Сброс флага переноса.
STC SeT Carry flag Установка флага переноса.
CMC CoMplement Carry flag Инверсия флага переноса.
CLD CLear Direction flag Сброс флага направления – для цепочечных команд процессор будет выполнять инкремент регистров SI DI.
STD SeT Direction flag Установка флага направления - для цепочечных команд процессор будет выполнять декремент регистров SI DI.
CLI CLear Interrupt flag Сброс флага прерываний - запрет маскируемых аппаратных прерываний.
STI SeT Interrupt flag Установка флага прерываний - разрешение маскируемых аппаратных прерываний.
Команда Описание
JMP метка JuMP –безусловный переход. Имеется несколько форм, различающихся расстоянием метки перхода от текущего адреса, и способом задания целевого адреса. При работе в Windows используется в основном внутрисегментный переход (NEAR) в пределах 32-битного сегмента. Адрес перехода может задаваться непосредственно (в программе это метка) или косвенно, т.е. содержаться в ячейке памяти или регистре (JMP [EAX]). Другой тип перехода - короткий переход (SHORT), занимает всего 2 байта. Диапазон смещения, в пределах которого происходит переход: -128... 127. Использование такого перехода весьма ограниченно.
Jcc метка Jump if condition - условный переход. Команда осуществляет переход при выполнении условия, заданного в. поле условия. Возможны условия, кодируемые 4-ех битным кодом: · JA/JNBE - перейти, если выше. · JAE/JNB - перейти, если выше или равно. · JB/JNAE - перейти, если ниже · JBE/JNA - перейти, если ниже. · JC - перейти, если перенос · JE/JZ - перейти, если нуль · JG/JNLE - перейти, если больше. · JGE/JNL - перейти, если больше или равно · JL/JNGE - перейти, если меньше. · JLE/JNG - перейти, если меньше или равно · JNC - перейтИ, если нет переноса. · JNE/JNZ - перейти, если меньше или равно · JNO - перейти, если нет переполнения · JNP/JPO - перейти, если нет паритета · JNS - перейти, если нет знака · JO - перейти, если есть переполнения · JP/JPE - перейти, если есть паритет · JS - перейти, если есть знак · JCXZ - переход, если СХ=0 · JECXZ - переход, если ECX=0 В плоской модели команды условного перехода осуществляют переход в пределах 32-битного регистра.
LOOP метка LOOP control by register CX - команды управления циклом по регистру CX. Команды этой группы используют счетчик цикла в регистре CX. В них осуществляется декремент CX и проверка его содержимого. Тело цикла повторяется пока содержимое CX не равно нулю. Если содержимое CX равно нулю, то управление передается команде, метка которой опреджелена в команде LOOP.
LOOPE метка LOOPZ метка LOOP control by register CX not Equal 0 and ZF=1 - команды управления циклом по регистру CX с учетом ZF=1. Команды этой группы основаны на командах LOOP. Дополнительно в них в теле цикла анализируется флаг ZF. Цикл принудительно завершается, если ZF= 1.
LOOPNE метка LOOPNZ метка LOOP control by register CX not Equal 0 and ZF=0 - команды управления циклом по регистру CX с учетом ZF=0. Команды этой группы основаны на командах LOOP. Дополнительно в них в теле цикла анализируется флаг ZF. Цикл принудительно завершается, если ZF= 0.
CALL цель CALL – вызов. Передает управление процедуре (метке) с сохранением в стеке адреса, следующей за CALL командой. В плоской модели адрес возврата представляет собой 32-битное смещение. Межсегментный вызов предполагает сохранение в стеке селектора и смещения, т.е. 48-битной величины (16 бит - селектор и 32 бита - смещение).
RET [N] RETurn from procedure – возврат из процедуры Необязательный параметр N предполагает, что команда также автоматически чистит стек (освобождает N байт). Команда имеет разновидности, которые выбираются ассемблером автоматически, в зависимости от того, является процедура ближней или дальней.



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


Дата добавления: 2014-10-17; Просмотров: 306; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.