- •Архитектура эвм
- •Введение
- •Структура мпс
- •Основные понятия в архитектуре мпс
- •Архитектура фон Неймана
- •Гарвардская архитектура
- •Параллельная архитектура
- •Конвейерная архитектура
- •Суперскалярная архитектура
- •АрхитектурыCisc
- •Архитектуры risc
- •Архитектуры misc
- •Ассемблеры
- •Программа Ассемблер
- •Язык Ассемблер
- •Основы 32-битного программирования в Windows
- •Api функции
- •Сообщения Windows
- •Версии ассемблеров
- •Среды разработки
- •Представление данных в эвм
- •Системы счисления и преобразования между ними
- •Форматы представления чисел
- •Форматы представления двоичных чисел
- •Формат с плавающей точкой
- •Типы адресаций операндов
- •Интерфейсы
- •Последовательный интерфейс rs-232c
- •Интерфейс параллельного порта
- •Инфракрасный интерфейс
- •Интерфейс Bluetooth
- •Интерфейс usb
- •Интерфейс ieee 1394 - FireWire
- •Сопроцессоры
- •Система прерываний и исключений
- •Интерфейс jtag
- •Символы и строки
- •Архитектура cisc от Intel
- •Введение
- •Микроархитектура Intel
- •Микроархитектура р6
- •Микроархитектура NetBurst
- •Микроархитектура Pentium 4
- •Микроархитектура Intel Pentium Mobile
- •Микроархитектура Intel Core
- •Микроархитектура Intel Core Duo
- •Микроархитектура Intel Nehalem
- •Адресация памяти в ia_32
- •Наборырегистров
- •Целочисленныйпроцессор
- •Регистры общего назначения (рон)
- •Регистры флагов eflags
- •Регистр указателя команд
- •Сегментные регистры
- •Управляющие регистры
- •Системные адресные регистры
- •Прямой и обратный порядок следования байтов
- •Виды адресации операндов в памяти
- •Цикл выполнения команды
- •Распределение адресного простраства
- •Образ программы в памяти.
- •Математический сопроцессор
- •Xmm технология
- •Система команд
- •Формат команды
- •Классификация команд
- •Целочисленный процессор
- •Команды общего назначения
- •Команды ввода-вывода
- •Инструкции работы со стеком
- •Арифметико-логические инструкции
- •Цепочечные операции
- •Команды управления
- •Команды поддержки языков высокого уровня
- •Команды прерываний
- •Команды синхронизации процессора
- •Команды обработки цепочки бит
- •Команды управления защитой
- •Команды обмена с управляющими регистрами
- •Команды идентификации и управления архитектурой
- •Управление кэшированием
- •Команды управления кэшированием
- •Сопроцессор с плавающей точкой
- •Классификация команд
- •Команды управления сопроцессором
- •Команды передачи данных
- •Команды сравнения данных
- •Арифметические команды
- •Трансцендентные функции
- •Целочисленное mmx расширение
- •Синтаксис ммх-команд
- •Классификация команд
- •Инициализация
- •Передача данных
- •Упаковка данных
- •Распаковка данных
- •Арифметика
- •Сравнения
- •Дополнительные команды
- •XmMрасширение с плавающей точкой
- •Типы данных
- •Передача данных
- •Арифметика
- •Сравнения
- •Преобразования
- •Управление состоянием
- •Распаковка данных
- •Управление кэшированием
- •Дополнительные команды
- •Цикл трансляции, компоновки и выполнения
- •Ассемблер cisc
- •Введение
- •Средства программирования и отладки
- •Описание masm
- •Структура программы на ассемблере
- •Типы данных
- •Макросредства
- •Директивы
- •Архитектура risc
- •Система команд
- •Архитектура misc
- •Архитектура vliw
- •Архитектура вычислительных систем со сверхдлинными командами
- •Архитектура ia-64
- •Многоядерные архитектуры
- •Микроконтроллер avr от Atmel
- •Архитектура avr от Atmel
- •Ассемблер
- •Команды ассемблера
- •Директивы ассемблера
- •Выражения
- •Микроконтроллеры c28x
- •Архитектура c28x
- •Архитектура f28x
- •Инструментальные средства разработки по
- •Ассемблер
- •Команды ассемблера
- •Формат объектного файла
- •Директивы ассемблера
- •Макроязык и макрокоманды
- •Компоновщик
- •Архиватор
- •Абсолютный листер
- •Листер перекрестных ссылок
- •Утилита 16-ричного преобразования
- •Архитектура VelociTi
- •Структура и состав цсп с6x
- •Средства разработки цсп с6x
- •Ассемблер цсп с6x
- •Команды ассемблера
- •Выражения
- •Листинги
- •Листинги программ
- •Директивы ассемблера
- •Макроязык и макрокоманды
- •Компоновщик
- •Утилиты
- •Поддержка в matlab
- •Введение
- •Встроенные платы для цсп ‘c6x
Классификация команд
После обзора команды будут рассмотрены подробно.
Категория |
Подкатегория |
Команды |
Управление сопроцессором |
Инициализация |
FINIT |
Работа со средой |
FSAVE, FSTENV, FLDENV, FCLEX, FLDCW, FSTCW, FSTSW, FRSTOR | |
Работа со стеком |
FINCSTP,FDECSTP,FFREE, | |
Вспомогательные |
FNOP,FWAIT | |
Передача данных |
Вещественные числа |
FLD,FST,FSTP |
Целые числа |
FILD, FIST | |
Десятичные числа |
FBLD, FBST, FBSTP | |
Загрузка констант |
0, 1, числоPI, Log2(10), Log2(e), Log10(2), LN(2) | |
Обмен |
FXCH | |
Сравнение данных |
Вещественные числа |
FCOM, FCOMP, FCOMPP, FUCOMP, FUCOMPP |
Целые числа |
FICOM, FICOMP | |
Анализ |
FTST, FXAM | |
Арифметические |
Вещественные числа |
FADD, FADDP, FSUB, FSUBP, FSUBR, FSUBRP, FMUL, FMULP, FDIV, FDIVP, FDIVR, FDIVRP |
Целыечисла |
FIADD, FISUB, FISUBR, FIMUL, FIDIV, FIDIVR | |
Вспомогптельные |
FABS, FCHS, FSQRT, FSCALE, FPREM, FPREM1, FRNDINT | |
Трансцендентные |
Тригонометрия |
Синус, Косинус, Синус + Косинус, Тангенс, Арктангенс |
Логарифмы и степени |
2 в степени X минус 1, Y*Log2(X), Y*Log2(X+1) |
Команды управления сопроцессором
Инициализация
Перед использованием любых команд математического сопроцессора необходимо выполнить его инициализацию командой FINIT(Floating-pointINITialisationadeviceFPU). Алгоритм работы команды выглядит следующим образом:
В регистр управления (cwr) помещается число 37h, означающее, что округление будет выполняться до ближайшего целого (поле гс = 0).
Биты с нулевого по пятый устанавливаются в 1, что означает маскирование всех исключений.
Поле управления точностью устанавливается для работы с максимальной точностью в 64 бит (рс =11).
Регистр состояния (swr) обнуляется, а это означает, что исключения отсутствуют и физический регистр R0 регистрового стека становится вершиной стека st(O).
В регистр тегов (twr) заносятся единицы, а это означает, что все регистры сопроцессора считаются пустыми.
Регистры указателей данных (dpr) и команд (ipr) обнуляются.
Команда |
Описание | |
FINIT |
Floating-point INITializing a device FPU Инициализация сопроцессора. |
|
Работа со средой
Команда |
Описание | |||
FSAVE приемник |
Floating-point SAVE fpu state. Сохранение состояния оборудования и файла регистров в памяти. |
| ||
FSTENV источник |
Floating-point STore ENVironment. Сохранение состояния оборудования (источника - SR, CR, TAGW, FIP, FDP) в памяти. |
| ||
FLDENV источник |
Floating-point LoaD ENVironment. Загрузка состояния оборудования (источника - SR, CR, TAGW, FIP, FDP) из памяти. |
| ||
FRSTOR src |
Floating-point ReSTORe fpu state. Восстановление состояния оборудования и файла регистров в памяти. |
| ||
FCLEX |
Floating-point CLear EXception. Сброс исключений. |
| ||
FLDCW источник |
Floating-point LoaD Control Word. Загрузка управляющего слова (16 бит) из источника в регистр управления SWR |
| ||
FSTCW приемник |
Floating-point STore Control Word. Сохранение управляющего слова в приемнике. |
| ||
FSTSW приемник |
Floating-point STore Status Word. Запись слова состояния из регистра управления SWR в приемник (регистр или память). |
|
Работа со стеком
Команда |
Описание | |
FINCSTP |
Floating-point INCrement Stack Top Pointer. Инкремент указателя стека. |
|
FDECSTP |
Floating-point DECrement Stack Top Pointer. Декремент указателя стека. |
|
FFREE ST(i) |
Floating-point FREE fpu stack register. Показать регистр ST(i) как свободный. |
|
Вспомогательные
FNOP |
Floating-point No Operation. Холостая операция сопроцессора. |
FWAIT |
Floating-point WAIT. Ожидание процессором завершения текущей операции сопроцессором. |