December 17 2017 17:23:10
Навигация
Авторизация
Логин

Пароль



Вы не зарегистрированы?
Нажмите здесь для регистрации .

Забыли пароль?
Запросите новый здесь.
ОПЕРАЦИИ УПРАВЛЕНИЯ
ПРОЦЕССОРЫ ОБЩЕГО НАЗНАЧЕНИЯ И СИСТЕМЫ НА ИХ ОСНОВЕ

Наличие префикса РЕРЕ (или REPNZ) останавливает повторение операций при обнаружении одинаковых символов в строках (команда CMPS) или в строке-источнике и аккумуляторе (команда SCAS). Если одинаковые символы отсутствуют, то выполнение команды продолжается до конца строки. Префикс REPNE (или REPNZ) останавливает выполнение команд CMPS и SCAS при обнаружении неодинаковых символов. Если все символы одинаковы, то команды выполняются n = (ЕСХ) раз. Команда CMPS используется для поиска одинаковых (с префиксом REPE) или различных (префикс REPNE) символов в строках. Команда SCAS с префиксом REPE(REPNZ) или REPNE (REPNZ) служит для поиска в строке-источнике символа, совпадающего или не совпадающего с заданным в аккумуляторе эталоном.

Чтобы сократить время реакции на внешние прерывания, процессор при выполнении команд этой группы может принимать и обслуживать запросы прерывания INTR после обработки каждого символа строки.

2.3. СИСТЕМА КОМАНД: ОПЕРАЦИИ УПРАВЛЕНИЯ

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

Управление программой

Безусловная передача управления:

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

CALL - Вызов подпрограммы

RET - Возврат из подпрограммы

Условные переходы без учета знака:

JA/JNBE-Переход, если выше (не ниже, не равно)

JAE/JNB/JNC - Переход, если CF = 0: выше или равно (не ниже)

JB/JNAE/JC - Переход, если CF = 1: ниже (не выше или равно)

JBE/JNA- Переход, если ниже или равно (не выше)

JE/JZ- Переход, если равно (нуль): ZF = 1

JNE/JNZ - Переход, если не равно (не нуль): ZF = 0

JP/JPE - Переход, если четность: PF = 1

JNP/JPO - Переход, если нечетность: PF = 0

Условные переходы с учетом знака:

JG/JNLE - Переход, если больше (не меньше, не равно)

JGE/JNL - Переход, если больше или равно (не меньше)

JL/JNGE - Переход, если меньше (не больше, не равно)

JLE/JNG - Переход, если меньше или равно (не больше)

JS - Переход, если отрицательно: SF = 1

JNS - Переход, если положительно: SF = 0

JO - Переход, если переполнение: OF = 1

JNO - Переход, если нет переполнения: OF = 0

Вызов системных программ:

SYSENTER - Быстрый переход к системной программе

SYSEXIT- Быстрый возврат из системной программы

Прерывания

INT-Прерывание

INTO - Прерывание по переполнению (OF = 1)

INT3 - Прерывание в контрольной точке

UD2 - Прерывание недействительного кода операции

IRET- Возврат из подпрограммы обслуживания прерывания

CLI -Запрещение прерываний

STI - Разрешение прерываний

Организация циклов

LOOP - Реализация циклов, пока ЕСХ = 0

LOOPE/LOOPZ - Реализация циклов, пока ЕСХ = 0 или ZF = 1

LOOPNE/LOOPNZ - Реализация циклов, пока ЕСХ = 0 или ZF = 0

JCXZ (JECXZ) - Реализация циклов, пока СХ = 0 (ЕСХ = 0)

Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста, залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

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

Нет данных для оценки.

Время загрузки: 0.03 секунд 2,299,248 уникальных посетителей