64195 (80386 процессор), страница 4
Описание файла
Документ из архива "80386 процессор", который расположен в категории "". Всё это находится в предмете "компьютерные науки" из , которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "рефераты, доклады и презентации", в предмете "компьютерные науки" в общих файлах.
Онлайн просмотр документа "64195"
Текст 4 страницы из документа "64195"
LTR Загрузка регистра задачи
Первый операнд команды LTR определяет регистр-источник или ячейку памяти, содержащие информацию для регистра задачи. Команда загружает эту информацию в регистр задачи.
MOV Пересылка в/из специальных регистров
Команда используется для загрузки и выгрузки специальных регистров и регистров общего назначения.
MOVS Пересылка данных из строки в строку
MOVSB Пересылка байта строки
MOVSW Пересылка слова строки
MOVSD Пересылка двойного слова строки
Эти команды используются для работы со строками, а не логическими или арифметическими величинами.
MOVZX Пересылка с расширением нуля
Команда расширяет 8-разрядную величину до 16-разрядной и 8- или 16-разрядную величину до 32-разрядной заполнением старших разрядов нулями.
MUL Целочисленное беззнаковое умножение содержимого регистров AL или AX
Команда перемножает операнд-источник и содержимое аккумулятора и возвращает результат удвоенной длины.
NEG Изменение знака, дополнение до 2
Команда выполняет вычитание знакового целочисленного операнда из нуля.
NOP Холостая команда
Команда занимает в памяти только 1 байт. Она действует только на указатель команд EIP. Команда NOP полезна при "выравнивании" адресов переходов.
OR Логическое ВКЛЮЧАЮЩЕЕ ИЛИ
Команда сравнивает два операнда и вычисляет следующее: если соответствующие биты в операндах равны 0, результат 0; в противном случае результат 1.
OUT Вывод в порт
Команда пересылает данные из регистра в порт вывода. Операнд-источник находится в регистре AL,AX,EAX. Номер порта определяется первым операндом. Для вывода данных в любой порт от 0 до 65535 номер порта помещается в регистр DX.
OUTS Вывод строки в порт
OUTSB Вывод байта
OUTSW Вывод слова
OUTSD Вывод двойного слова
Разновидности команды OTS действуют аналогично команде OUT, но выводит в порт строку и после вывода данного содержимое регистра-источника получает приращение.
POP Извлечение слова из стека
Команда пересылает слово или двойное слово из текущей вершины стека (регистр ESP) по адресу приемника. Затем регистр ESP инкрементируется.
POPA Извлечение из стека содержимого всех регистров
POPAD Извлечение из стека содержимого всех регистров - 32-разрядный режим
POPF Восстановление из стека регистра FLAGS или EFLAGS
POPFD Восстановление из стека - 32-разрядный режим
PUSH Занести операнд в стек
Команда выполняет декремент указателя стека (ESP), затем заносит операнд-источник на вершину стека, куда указывает ESP.
PUSHA Занести в стек содержимое всех регистров общего назначения
Команда сохраняет в стеке содержимое восьми регистров общего назначения.
PUSHF Занесение в стек содержимого регистра флагов
RCL Циклический сдвиг влево через бит переноса с использованием бита CF для расширения
RCR Циклический сдвиг вправо через бит переноса с использованием бита CF для расширения
ROL Циклический сдвиг влево с циклическим возвратом битов
ROR Циклический сдвиг вправо с циклическим возвратом битов Команды циклического сдвига дают возможность циклически
сдвигать биты в байтах, словах и двойных словах.
REP Повторение последующей строковой операции
REPE Повторение, пока равно
REPZ Повторение, пока нуль
REPNE Повторение, пока не равно
REPNZ Повторение, пока не нуль
Префикс REP задает повторение строковой операции, что позволяет МП обрабатывать строки значительно быстрее, чем с помощью обычнного программного цикла.
RET Возврат из процедуры
Команда завершает выполнение вызванной процедуры и передает управление посредством обратной ссылки, хранящейся в стеке. Обратная ссылка указывает на программу, первоначально вызвавшую процедуру.
SAHF Запись содержимого регистра AH в регистр флагов
SAL/SAR/SHL/SHR Команда сдвига
Биты в байтах, словах и двойных словах могут сдвигаться логически или арифметически. Сдвиг осуществляется на заданное число разрядов вплоть до 31.
SBB Целочисленное вычитание с займом
Команда вычитает операнд-источник из операнда-приемника. Если флаг CF установлен, вычитается еще 1.
SCAS/SCASB/SCASW/SCASD Сравнение строковых данных
Эти команды используются для работы со строками. Они воздействуют на один элемент строки. Адресация элементов строки осуществляется через регистры ESI и EDI. После каждой строковой операции эти регистры автоматически уменьшаются или увеличиваются на 1 в зависимости от регистра DF.
SETcc Установка байта по условию
Команда записывает в байт 0 или 1 в зависимости от любого из 16 условий, определяемых флагами состояния. Байт может быть в памяти или в однобайтовом регистре общего назначения. Если условие cc истинно, команда записывает в байт 1; в противоположном случае - 0.
SGDT Запись в память содержимого регистра таблицы глобальных дескрипторов
SIDT Запись в память содержимого регистра таблицы дескрипторов прерываний
Эти команды копируют содержимое регистра в поле из 6 байт на которое указывает операнд.
SHLD Сдвиг влево с двойной точностью
SHRD Сдвиг вправо с двойной точностью
Команды предоставляют возможность реализации операций на данных невыровненных строках битов.
SLDT Запись содержимого регистра таблицы локальных дескрипторов
Команда записывает содержимое LDTR в регистр или ячейку памяти с исполнительным адресом, указанным в операнде команды.
SMSW Запись слова состояния машины
Слово состояния машины является частью регистра управления CR0. Команда записывает это слово в двухбайтовый регистр или ячейку памяти. Команда оставлена для совместимости с МП
80286. В МП 80386 следует использовать команду MOV ... CR0.
STC Установка флага переноса CF
STD Установка флага направления DF
STI Установка флага прерываний IF
STOS/STOSB/STOSW/STOSD Запись строки данных
Запись строки данных. Адресация через регистры ESI и EDI.
STR Запись регистра задачи
Команда копирует содержимое регистра задачи в двухбайтный регистр или ячейку памяти.
SUB Вычитание целых чисел
Команда вычитает операнд-источник из операнда-приемника и помещает результат на место операнда-приемника.
TEST Логическое сравнение
Команда выполняет логическую операцию И над двумя операндами. Затем команда сбрасывает флаги OF и CF, оставляет AF неопределенным и модифицирует SF,ZF,PF. Команда отличается от команды AND тем, что она не модифицирует операнд-приемник.
VERR Проверка сегмента на чтение
VERW Проверка сегмента на запись
Эти команды проверяют, доступен ли выбранный селектором сегмент при текущем уровне привилегий и разрешены ли в нем чтение или запись. Если сегмент доступен, флаг ZF устанавливается в 1.
WAIT Ожидание пассивного состояния вывода BUSY#
Команда приостанавливает выполнение программы МП 80386 до тех пор пока ЦП 80386 не обнаружит пассивное состояние вывода BUSY. Это указывает на то, что сопроцессор завершил выполнение задачи и что ЦП может получить результат.
XCHG Обмен между регистрами или между памятью и регистром Команда заменяет три команды MOV. Она не нуждается во
вспомогательной ячейке для обмена операндами.
XLAT Табличное перекодирование
Команду удобно использовать при преобразовании из одной системы кодов в другую. Длина таблицы перекодирования от 1 до 256 байт.
XOR Логическое ИСКЛЮЧАЮЩЕЕ ИЛИ