русс | укр

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

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

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

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


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

Отличия от систем 8086/8087.


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


Процессор i486, работающий в режиме реальных адресов, будет выполнять программы процессора 8087 без существенной модификации. Тем не менее, за счет различий в обработке числовых исключений в процессоре i486 и 8087 NPX, процедуры обработки исключений скорее всего должны будут измениться. В этом разделе дается подробное описание того, как программы процессора 8087 можно поставить на процессор i486.

  1. Процессору 8087 требуется контроллер прерывания (8259А) для прерывания CPU при возникновении немаскированного исключения. Следовательно, все команды в обработчиках числовых прерываний процессора 8087, ориентированные на этот контроллер, должны быть уничтожены.
  2. Команды FENI/FNENI и FDISI/FNDISI процессора 8087 не выполняют никакой полезной работы на процессоре i486. Если процесссор i486 обнаружит в потоке команд один из этих кодов операций, он будет проигнорирован - ни одно из внутренних состояний процессора не будет изменено. Если программа процессора 8087 будет выполняться на процессоре i486, процедуры обработки исключений, содержащие эти команды, вряд ли будут полностью переносимы.
  3. В реальном и защищенном режимах (исключая виртуальный режим процессора 8086) вектор прерывания 16 должен указывать на процедуру обработки числового исключения. В виртуальном режиме процессора 8086 монитор V86 может быть запрограммирован с различным размещением векторов прерываний для числовых исключений.
  4. Адрес программы ESC, записанный в процессоре i486, включает некоторые начальные префиксы перед кодом операции ESC. Соответствующий адрес в системе 8086/8087 не включает начальных префиксов.
  5. В защищенном режиме процессора i486 (исключая виртуальный режим процессора 8086) формат хранимой команды и адресных указателей отличается от форматов, принятых в системе 8087. Код операции команды не сохраняется в защищенном режиме - при необходимости обработчики исключений должны восстанавливать его из памяти.
  6. Прерывание 7 будет существовать в процессоре i486 при выполнении команд ESC, при установленных TS (переключение задачи) или EM (эмуляция) в MSW (TS = 1 или EM = 1). При установленном TS коанда WAIT тоже вызовет прерывание 7. Для обработки этих ситуаций в программу процессора i486 следует включить обработчик исключений.
  7. При попадании начального адреса числового операнда вне размера сегмента возникнет прерывание 13. Для сообщения об этой ошибке следует включить обработчик исключения.
  8. Все числовые команды процессора i486 за исключением команд управления FPU синхронизируются автоматически - процессор автоматически ждет перед выполнением следующий команды ESC, пока все операнды будут переданы. Для осущесттвления этой синхронизации не требуется явных команд WAIT. Для сопроцессора 8087, используемого с процессорами 8086 и 8088, явные команды WAIT требуются перед каждой числовой командой для осуществления синхронизации. Хотя программы с явными командами WAIT для процессора 8087 выполнятся правильно на процессоре i486 без реассемблирования, эти команды не нужны.
  9. Поскольку процессору i486 не требуются команды WAIT перед каждой числовой операцией, ассемблер ASM386/486 не генерирует эти команды автоматически. Ассемблер же ASM86 перед каждой командой ESC ставит команду WAIT. Хотя числовые процедуры, сгенерированные с использованием ассемблера ASM86, будут выполняться на процессоре i486 правильно, реассемблирование с использованием ASM386/486 даст, возможно, более компактный код и более быстрое выполнение.

Команды управления для FPU процессора i486 могут быть кодированы как с использованием формы мнемоники WAIT, так и формы No - WAIT. Формы WAIT этих команд вызовут в ассемблере ASM386/486 постановку команды WAIT перед каждой командой ESC, как это сделал бы ассемблер ASM86.



  1. Адрес операнда памяти, записываемый командами FSAVE или FSTENV, будет неопределен, если предыдущая команда ESC не ссылалась на память.
  2. Поскольку процессор i486 по возможности автоматически нормализует нено- рмализованные числа, программа процессора 8087, использующая отдельно ис- ключение денормализации для нормализации денормализованных операндов, может выполнятся на процессоре i486 при маскировании исключения денормализации. В этом случае обработчик исключения денормализации процессора 8087 не будет использоваться на процессоре i486. Числовая программа будет выполня- ться быстрее, если процессор i486 будет выполнять нормализацию денормали- зованных операндов.

 

 



<== предыдущая лекция | следующая лекция ==>
Набор команд | Формат команды


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


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

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

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


 


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

 
 

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

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