русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

FSAVE/FNSAVE - Сохранить состояние FPU


Дата добавления: 2015-06-12; просмотров: 618; Нарушение авторских прав


-----------------------------------------------------------------|Код Команда Число Описание ||операции тактовых || циклов || ||DB DD /6 FSAVE m94/ 154 реальный Сохранение состояния FPU в || 109byte или вирт./ m94byte или m108byte после || 143 защищ.+ проверки условия немаскиру- || минимум 3 емой ошибки с плавающей || для FWAIT точкой. Затем ре-инициализа-|| ция FPU. ||DD /6 FNSAVE m94/ 154 реальный Сохранение состояния FPU в || 109byte или вирт./ m94byte или m108byte без || 143 защищ. проверки условия немаскиру- || емой ошибки с плавающей || точкой. Затем ре-инициализа-|| ция FPU. |----------------------------------------------------------------- Работа команды DEST <- состояние FPU;инициализация FPU; (* Эквивалентно FNINIT *) ОписаниеКоманды сохранения записывают текущее состояние FPU (контекст и регистрыстека) по заданному назначению и затем ре-инициализируют FPU. Контекст FPUсостоит из управляющего слова FPU, слова состояния, слова тега иуказателей ошибки (данных и команд).Макет контекста в памяти зависит одновременно от размера операнда итекущего режима работы процессора. Атрибут USE текущего кодового сегментаопределяет размер операнда: 94-разрядный операнд относится к сегментуUSE16, а 108-разрядный операнд относится к сегменту USE32. На рисунках15-5 - 15-8 показан макет контекста для обоих размеров операндов в режимахреальных адресов и защищенном. (В виртуальном режиме 8086 используетсямакет контекста реального режима). Регистры стека, начиная с ST и кончаяST(7), находятся в 80 байтах, непосредственно следующих за образомконтекста. Изменяемые флаги модуля операций с плавающей точкойC0, C1, C2, C3 очищаются. Исключения числовых операцийОтсутствуют Исключения защищенного режима#GP(0), если результат должен помещаться в сегмент, для которого запрещеназапись; #GP(0) в случае недопустимого исполнительного адреса операндапамяти в сегментах CS, DS, ES, FS или GS; #SS(0) в случае недопустимогоадреса в сегменте SS; #PF(код сбоя) в случае страничного сбоя; #AC дляневыравненной ссылки к памяти при текущем уровне привилегированности,равном 3. Исключения режима реальных адресовПрерывание 13, если какая-либо часть операнда лежит вне пространстваисполнительных адресов от 0 до 0FFFFH; Прерывание 7 при установленном EMили TS в CR0. Исключения виртуального режима 8086Те же исключения, что и для режима реальных адресов: #PF (код сбоя) длястраничных сбоев; #AC для невыравненной ссылки к памяти при текущем уровнепривилегированности, равном 3. ПримечанияFSAVE и FNSAVE не сохраняют состояния FPU до тех пор, пока не будутзавершены действия FPU. Таким образом, сохраненный образ отражаетсостояние FPU после выполнения любой ранее декодированной команды.Если программа должна читать образ в памяти состояния, следующего закомандой сохранения, то она должна выдать команду FWAIT, чтобыгарантировать, что сохранение завершено. Команды сохранения обычно используются, когда операционной системенеобходимо выполнить переключение контекста, или обработчику исключениятребуется использовать FPU, либо когда прикладная программа собираетсяпередать в подпрограмму "чистый" FPU.


<== предыдущая лекция | следующая лекция ==>
FRSTOR - Восстановить состояние FPU | FSCALE - Умножение на масштабный коэффициент


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.147 сек.