Опубликован: 25.07.2003 | Уровень: для всех | Доступ: свободно | ВУЗ: Национальный исследовательский ядерный университет «МИФИ»
Дополнительный материал 5:

Система команд микропроцессора i486

Мнемоника Функция команды
AAA ASCII- коррекция результата сложения
AAD ASCII- коррекция перед делением
AAM ASCII- коррекция результата умножения
AAS ASCII- коррекция результата вычитания
ADC Сложение с переносом
ADD Сложение
AND Конъюнкция (функция И)
ARPL Коррекция запрещенного уровня привилегий
BOUND Проверка границ массива
BSF Прямое сканирование битов
BSR Обратное сканирование битов
BSWAP Перестановка байтов
BT Проверка бита
BTC Проверка и инверсия бита
BTR Проверка и сброс бита
BTS Проверка и установка бита
CALL Вызов подпрограммы
CBW Преобразование байта в слово
CDO Преобразование двойного слова в четверное
CLC Сброс флага переноса
CLD Сброс флага направления
CLI Сброс флага прерывания
CLTS Сброс флага переключения задачи
CMC Инвертирование флага переноса
CMP Сравнение операндов
CMPXCHG Сравнение операндов и обмен
CMPS Сравнение символов строки
CWD Преобразование слова в двойное слово
DAA Десятичная коррекция результата сложения
DAS Десятичная коррекция результата вычитания
DEC Декремент операнда
DIV Беззнаковое деление
ENTER Обращение к процедуре
HLT Останов
IDIV Знаковое деление
IMUL Знаковое умножение
IN Ввод операнда из порта
INC Инкремент операнда
INS Ввод символа строки
INT Прерывание
INTO Прерывание при переполнении
IRET Возврат из прерывания
INVD Аннулирование строки кэш-памяти
INVLPG Аннулирование указателя входа в таблицу страниц
JECXZ Условный переход по (ECX)=0
JMP Безусловный переход
JB ( JBNAF ) Переход, если ниже
JBE ( JNA ) Переход, если ниже или равно
JE ( JZ ) Переход, если равно
JL ( JNGE ) Переход, если меньше
JLE ( JNG ) Переход, если меньше или равно
JLNE ( JG ) Переход, если больше
JNB ( JAE ) Переход, если не ниже
JNBE ( JA ) Переход, если выше
JNE ( JNZ ) Переход, если не равно
JNL ( JGE ) Переход, если не меньше
JNO Переход, если нет переполнения
JNP ( JPO ) Переход, если нечетность
JNS Переход, если положительный знак
JO Переход, если переполнение
JP ( JPE ) Переход, если четность
JS Переход, если отрицательный знак
LAHF Загрузка признаков в регистр AH
LAR Загрузка прав доступа
LDS Загрузка селектора в регистр DS
LES Загрузка селектора в регистр ES
LFS Загрузка селектора в регистр FS
LGS Загрузка селектора в регистр GS
LSS Загрузка селектора в регистр SS
LEA Загрузка эффективного адреса в регистр
LEAVE Выход из процедуры
LGDT Загрузка регистра таблицы глобальных дескрипторов
LIDT Загрузка регистра таблицы дескрипторов прерываний
LLDT Загрузка регистра таблицы локальных дескрипторов
LMSW Загрузка слова состояния машины ( MSW )
LOCK Префикс захвата шины
LODS Загрузка символа строки
LOOP Реализация цикла
LOOPE ( LOOPZ ) Зациклить, если равно (если нуль)
LOOPNE ( LOOPNZ ) Зациклить, если не равно (если не нуль)
LTR Загрузка регистра задачи
MOV Пересылка данных
MOVS Пересылка символа строки
MOVSX Пересылка с расширением знака
MOVZX Пересылка с расширением нулями
MUL Беззнаковое умножение
NEG Перемена знака
NOP Отсутствие операции
NOT Логическая инверсия (операция НЕ)
OR Дизъюнкция (операция ИЛИ)
OUT Вывод операнда в порт
OUTS Вывод символа строки
POP Чтение операнда из стека
POPA Чтение из стека содержимого всех регистров
POPF Чтение из стека содержимого регистра флагов
PUSH Запись операнда в стек
PUSHA Запись в стек содержимого всех регистров
PUSHF Запись в стек содержимого регистра флагов
RCL Циклический сдвиг влево
RCR Циклический сдвиг вправо
REP Префикс повторения операции со строками символов
REPE ( REPZ ) Повторение при совпадении
REPNE ( REPNZ ) Повторение при несовпадении
RET Возврат из подпрограммы
ROL Циклический сдвиг влево через перенос
ROR Циклический сдвиг вправо через перенос
SAHF Запись содержимого AH в регистр флагов
SAL ( SHL ) Арифметический сдвиг влево
SAR Арифметический сдвиг вправо
SBB Вычитание с заемом
SCAS Сканирование строк символов
SET усл. Условная установка байта (16 условий - см. команды условных переходов JB:JS )
SGDT Запись содержимого регистра GDT
SHR Логический сдвиг вправо
SHLD Двухоперандный сдвиг влево
SHRD Двухоперандный сдвиг вправо
SIDT Запись содержимого регистра IDT
SLDT Запись содержимого регистра LDT
SMSW Запись слова состояния машины
STC Установка флага переноса
STD Установка флага направления
STI Установка флага прерываний
STOS Запись символов в строку
SUB Вычитание
TEST Логическое сравнение операндов
VERR Проверка доступности сегмента при чтении
VERW Проверка доступности сегмента при записи
WAIT Ожидание
XADD Обмен операндами и сложение
XCHG Обмен
XLAT Преобразование кодов
XOR Исключающее ИЛИ
Команды, выполняемые блоком обработки чисел с плавающей точкой
FABS Получение абсолютного значения
FADD Сложение вещественных чисел
FADDP Сложение вещественных чисел с чтением из стека
FBLD Загрузка двоично-десятичного числа
FBSTP Запись в память двоично-десятичного числа с чтением из стека
FCHS Изменение знака числа
FCLEX Сброс флагов в регистре состояния SR
FCOM Сравнение вещественных чисел
FCOMP Сравнение вещественных чисел с чтением из стека
FCOMPP Сравнение вещественных чисел с двойным чтением из стека
FCOS Вычисление косинуса
FDECSTP Декремент содержимого указателя стека
FDIV Деление вещественных чисел
FDIVP Деление вещественных чисел с чтением из стека
FDIVR Обратное деление вещественных чисел
FDIVRP Обратное деление вещественных чисел с чтением из стека
FFREE Освобождение регистра ST
FIADD Сложение целых чисел
FICOM Сравнение целых чисел
FICOMP Сравнение целых чисел с чтением из стека
FIDIV Деление целых чисел
FIDIVR Обратное деление целых чисел
FILD Загрузка целого числа
FIMUL Умножение целых чисел
FINCSTP Декремент содержимого указателя стека
FINIT Инициализация FPU
FIST Запись в память целого числа
FISTP Запись в память целого числа с чтением из стека
FISUB Вычитание целых чисел
FISUBR Обратное вычитание целых чисел
FLD Загрузка вещественного числа
FLD1 Загрузка единицы
FLDCW Загрузка управляющего числа
FLDENV Загрузка содержимого вспомогательных регистров
FLDL2E Загрузка log2e
FLDL2T Загрузка log210
FLDLG2 Загрузка lg2
FLDLN2 Загрузка ln2
FLDPL Загрузка числа Пи
FLDZ Загрузка нуля
FMUL Умножение вещественных чисел
FMULP Умножение вещественных чисел с чтением из стека
FNOP Отсутствие операции
FPREM Нахождение частичного остатка деления
FPREM1 Нахождение частичного остатка в стандарте IEEE-475
FPATAN Вычисление частичного арктангенса
FPTAN Вычисление частичного тангенса
FRNDINT Округление до целого значения
FRSTOR Загрузка содержимого вспомогательных регистров и арифметического стека
FSAVE Запись в память содержимого вспомогательных регистров и арифметического стека
FSCALE Масштабирование (изменение порядка числа)
FSIN Вычисление синуса
FSINCOS Вычисление синуса и косинуса
FSQRT Вычисление квадратного корня
FST Запись в память вещественного числа
FSTCW Передача слова состояния в память
FCTENV Запись в память содержимого вспомогательных регистров
FSTP Запись в память вещественного числа с чтением из стека
FSTSW Передача слова состояния в память
FSTSWAX Передача слова состояния в регистр AX
FSUB Вычитание вещественных чисел
FSUBP Вычитание вещественных чисел с чтением из стека
FSUBR Обратное вычитание вещественных чисел
FSUBRP Обратное вычитание вещественных чисел с чтением из стека
FTST Сравнение с нулем
FUCOM Сравнение неупорядоченных чисел
FUCOMP Сравнение неупорядоченных чисел с чтением из стека
FUCOMPP Сравнение неупорядоченных чисел с двойным чтением из стека
FXAM Анализ вещественного числа
FXCH Обмен данными между регистрами стека
FXTRACT Вычисление мантиссы и порядка
F2XM1 Вычисление функции (2x-1)
FYL2X Вычисление функции ylogx
FYL2XP1 Вычисление функции ylog (x+1)
FWAIT Ожидание готовности FPU
Татьяна Фёдорова
Татьяна Фёдорова
Виктор Радкевич
Виктор Радкевич

Ответил на все тесты и сдал экзамен по курсу "Основы микропроцессорной техники". Результаты на сайе в зачетке не отображаются. Синхронизацию выполнял.