- •Команды общего назначения
- •1.1.1.Команды ввода-вывода
- •1.1.2.Инструкции работы со стеком
- •1.1.3.Арифметико-логические инструкции
- •1.1.4.Цепочечные операции
- •1.1.5.Команды управления
- •1.1.6.Команды поддержки языков высокого уровня
- •1.1.7.Команды прерываний
- •1.1.8.Команды синхронизации процессора
- •1.1.9.Команды обработки цепочки бит
- •Синтаксис ммх-команд
- •1.1.10.Классификация команд
Команды общего назначения
Команда |
Описание |
MOV приемник, источник |
MOVe operand – пересылка операнда. Пересылка данных в приемник из источника. Адресаты - регистр, память или непосредственный операнд. |
MOVS приемник, источник MOVSB MOVSW MOVSD |
MOVe String Byte/Word/Double worf– пересылка строк, содержащих: Байты Слова Двойные слова |
MOVSХ приемник, источник
|
MOVe and Sign eXtension – пересылка со знаковым расширением. Преобразование элемента со знаком меньшей размерности в эквивалентные элементы со знаком большей размерности. |
MOVZХ приемник, источник
|
MOVe and Zero eXtension – пересылка с нулевым знаковым расширением. Преобразование элемента без знака меньшей размерности в эквивалентные элементы без знака большей размерности. |
XCHG операнд_1, операнд_2 |
eXCHanGe – обмен. Обмен данными между операндами. Это регистры или память. Команда "память - память" в микропроцессоре Intel не предусмотрена. |
BSWAP reg32 |
Byte SWAP - перестановка байтов. Перестановка байт из порядка "младший - старший" в порядок "старший - младший". Разряды 7-0 обмениваются с разрядами 31-24, а разряды 15-8 с разрядами 23-16. |
XLAT адрес_таблицы_байтов |
transLATe byte from table – загрузка из таблицы. Загрузить в регистр AL байт из таблицы в сегменте данных, на начало которой указывает EBX (ВХ), при этом начальное значение AL играет роль смещения. |
LEA приемник, источник |
Load Effective Address - загрузка эффективного адреса. Получить эффективный адрес (смещение) источника. |
LDS приемник, источник |
Load pointer into DS - загрузить указатель сегмента в регистр DS из памяти. Загрузить пару DS:reg из памяти (m). Вначале идет слово (или двойное слово) в регистр (reg), а в DS - последующее слово. |
LES приемник, источник |
Аналогично предыдущему, но для пары ES:reg. |
LFS приемник, источник |
Аналогично предыдущему, но для пары FS:reg. |
LGS приемник, источник |
Аналогично предыдущему, но для пары GS:reg. |
LSS приемник, источник |
Аналогично предыдущему, но для пары SS:reg. |
SETcc операнд |
byte SET on conditon – установка байта по условию. Проверяет условие, заданное модификатором "cc". Если оно выполняется, то первый бит байта устанавливается в 1, в противном случае в 0. Модификаторы – по флагам. |
1.1.1.Команды ввода-вывода
Команда |
Описание |
IN аккумулятор, номер порта |
INput operand from port – ввести операнд из порта Ввод в аккумулятор из порта ввода-вывода. Порт адресуется непосредственно или через регистр DX. |
OUT номер порта, аккумулятор |
OUT operand to port – вывести операнд в порта Вывод из аккумулятор в порта ввода-вывода. Порт адресуется непосредственно или через регистр DX. |
INSB INSW INSD |
INput String Byte/Word/Double word operands – ввод из порта элементов: Байта Слова Двойного слова. Вводит данные из порта, адрес которого находится в регистре DX, в ячейку памяти, определяемой регистрами ES:[EDI/DI]. |
OUTSB OUTSW [OUTSD |
OUT String Byte/Word/Double word operands – вывод в порт элементов: Байта Слова Двойного слова. Выводит данные из ячейки памяти, определяемой регистрами DS:[ESI/SI], в выходной порт, адрес которого находится в регистре DX. |