- •Раздел 4. Микропроцессоры семейства intel
- •Тема 4.1. Модели мп семейства intel и их сравнительная характеристика
- •Тема 4.2. Организация однокристальных 16-разрядных микропроцессоров
- •Стандартная архитектура 16-разрядного микропроцессора intel 8086.
- •Программная модель микропроцессора intel 8086.
- •Организация памяти.
- •Стандартная архитектура 16-разрядного микропроцессора intel 8086.
- •Программная модель микропроцессора intel 8086.
- •Сегментные регистры (cs, ds, ss, es),
- •Регистр адреса командIp,
- •Регистр флагов f.
- •Регистр флагов f
- •3. Организация памяти.
- •Тема 4.3. Система команд мп, форматы команд, классификация команд, способы адресации
- •Формат команды микропроцессора
- •Режимы адресации операндов
- •Тема 4.4. Система прерываний микроЭвм
- •Типы прерываний и особых ситуаций. Приоритеты прерываний и особых ситуаций
- •Механизм обработки прерываний
- •Типы прерываний и особых ситуаций. Приоритеты прерываний и особых ситуаций
- •Аппаратные прерывания
- •Программные прерывания
- •Исключительные ситуации
- •Механизм обработки прерываний
- •Тема 4.5. Сопроцессоры
- •Общие сведения и технические характеристики. Форматы команд и обрабатываемых данных. Система команд арифметического сопроцессора
- •Структура арифметического сопроцессора
- •Общие сведения и технические характеристики. Форматы команд и обрабатываемых данных. Система команд арифметического сопроцессора
- •Структура арифметического сопроцессора
- •Тема 4.6. Архитектура 32-разрядных мп
- •Регистровая структура мп 80486
- •Типы данных 32-разрядных мп
- •Система команд, форматы команд и способы адресации мп 80486
- •Тема 4.7. Реальный режим работы мп
- •Тема 4.8. Защищенный режим работы мп
- •Дескрипторы сегментов и их таблицы. Типы сегментов и дескрипторов
- •Страничная и сегментная организация памяти. Преобразование адресов в защищенном режиме
- •Средства поддержки мультизадачности и защиты. Механизмы защиты
- •Тема 4.9. Виртуальный режим работы мп
- •Виртуальная память. Средства поддержки виртуальной памяти
- •Пространство виртуальных адресов. Механизм преобразования адресов
- •Виртуальная память. Средства поддержки виртуальной памяти
- •Пространство виртуальных адресов. Механизм преобразования адресов
- •Сегментно - страничное распределение
Исключительные ситуации
Исключительные ситуации, генерируемые микропроцессором, возникают в процессе и по результатам выполнения команд. Исключительные ситуации условно разделены на три типа в зависимости от того, чем они были вызваны и поддерживается ли рестарт вызвавшей их команды.
Ошибки представляют собой исключительные ситуации, которые обнаруживаются и обслуживаются после выборки до выполнения ошибочной команды. Чаще всего при возникновении ошибки возможен рестарт данной команды. Пример ошибки: обращение по адресу, находящемуся в отсутствующей в оперативной памяти странице.
Ловушки представляют собой исключительные ситуации, о которых сообщается сразу после выполнения команды, послужившей причиной возникновения данной исключительной ситуации.
Аварийные завершения - исключительные ситуации, которые возникают при невозможности точно обнаружить источник ошибки и используются при обнаружении крупных ошибок и технических неисправностей. Технические прерывания (или прерывания от схем контроля) возникают при появлении отказов и сбоев в работе технических средств микроЭВМ. Большинство технических прерываний не маскируется, т.е. они разрешаются всегда. При их возникновении даже не запрашивается причина прерывания, а, по-возможности, спасаются важные промежуточные результаты – записываются в безопасное место, на винчестер, например.
-
Механизм обработки прерываний
При появлении запроса на прерывание микропроцессор, после завершения выполнения текущей команды программы, анализирует допустимость (разрешенность и приоритетность) данного вида прерывания. Если прерывание разрешено, микропроцессор выполняет следующие действия: 1) запоминание в стековой памяти текущего состояния регистров микропроцессора, 2) выполнение подпрограммы обработки прерывания, 3) восстановление состояния регистров микропроцессора и возврат к выполнению прерванной программы.
Тема 4.5. Сопроцессоры
-
Общие сведения и технические характеристики. Форматы команд и обрабатываемых данных. Система команд арифметического сопроцессора
-
Структура арифметического сопроцессора
-
Общие сведения и технические характеристики. Форматы команд и обрабатываемых данных. Система команд арифметического сопроцессора
Блок вычислений с плавающей точкой (Floating Point Unit, FPU) или арифметический сопроцессор – функционально самостоятельный модуль, который вплоть до микропроцессора INTEL486 размещался в отдельной микросхеме. В микропроцессорах, начиная с INTEL486DX математический сопроцессор встроенный.
Сопроцессор INTEL 8087 выполнен как специализированная интегральная микросхема, ориентированная на работу с основным микропроцессором. Основное назначение сопроцессоров – повышение быстродействия при выполнении специальных вычислительных команд и вычислениях чисел с плавающей точкой.
Сопроцессор INTEL 8087 может обрабатывать данные, представленные в следующих форматах:
-
целые двоичные числа
-
15
0
знак
двоичный код
31
30
0
знак
двоичный код
63
62
0
знак
двоичный код
2. упакованные двоично-десятичные числа
-
79
72
0
знак
0000000
d17 d16 d15 d14 d13 d12 d11 d10 d9 d8 d7 d6 d5 d4 d3 d2 d1 d0
3. двоичные числа с плавающей точкой
-
31
30
23
22
0
знак
порядок
мантисса
63
62
52
51
0
знак
порядок
мантисса
79
78
64
63
0
знак
порядок
мантисса
Комбинацию микропроцессора и сопроцессора рассматривают как единый процессор с расширенной системой команд и типами данных. Совмещение микропроцессора INTEL 8086 с сопроцессором INTEL 8087 сводится к простым соединениям соответствующих выводов без использования дополнительных интегральных схем. В сопроцессоре INTEL 8087 отсутствует механизм выборки команд, поэтому он функционирует совместно с основным микропроцессором и под управлением последнего.
Система команд сопроцессора расширяет набор команд основного микропроцессора и включает следующие группы команд:
-
команды передачи данных,
-
арифметические команды:
-
сравнение,
-
анализ,
-
сложение,
-
вычитание,
-
умножение,
-
деление;
-
-
команды загрузки констант, часто встречающихся в вычислительных программах,
-
команды трансцендентных функций:
-
tg,
-
arctg,
-
2x-1,
-
Ylog2X и т.д.;
-
-
команды управления:
-
команды инициализации сопроцессора,
-
команды разрешения прерываний,
-
команды загрузки управляющего слова,
-
команды запоминания управляющего слова в памяти,
-
команды запоминания слова состояния в памяти при организации условных переходов и для обработки исключительных ситуаций,
-
команды записи содержимого всех регистров сопроцессора в память,
-
команды установки в ноль флагов исключительных ситуаций и т.д.