Рассмотрим теперь функциональное назначение ряда упомянутых битов регистров общего управления несколько подробнее.
PE (ProtectEnable – разрешение защиты). Установка бита PE в состояние 1 переводит работу процессора из реального R – режима в защищенный P – режим. При запуске процессора, или после сброса, всегда устанавливается реальный режим его работы, в котором эмулируется работа процессора 8086. Поэтому для перехода в защищенный режим, в котором доступна 32 разрядная система команд, процедура инициализации BIOS устанавливает в единичное состояние бита PE в регистре CR0.
MP (Mathematic Present – присутствие математического сопроцессора). В процессорах 80286 и 80386 устанавливается в состояние 1 при использовании дополнительного математического сопроцессора. В процессорах старших моделей математический сопроцессор расположен внутри микросхемы на одном кристалле с центральным процессором. Поэтому в них бит MP устанавливается в состояние 1 автоматически. Этот бит используется для управления командой ожидания WAIT, которая применяется для согласования действий центрального процессора с математическим сопроцессором при выполнении операций с вещественными числами.
EM (Emulation -эмуляция). Этот управляющий бит, установленный в состояние 1, позволяет центральному процессору дополнительно выполнять операции с действительными числами, используя специальные процедуры. При этом CPU осуществляет как бы эмуляцию математического сопроцессора.
TS (TaskSwitched – задача переключена). Процессор устанавливает этот флаг в состояние 1 при каждом переключении задач и анализирует его при поступлении команд математического сопроцессора. Это позволяет задержать сохранение или восстановление контекста математического сопроцессора до фактического использования численных данных.
ET (Extension Type – тип расширения). Этот бит указывает тип используемого сопроцессора. ET = 1 определяет использование 32 разрядного протокола МП 80387. При ET = 0 используется 16 разрядный протокол МП 80287. Следовательно, при ET = 0, процессор 80386 может быть использован совместно с математическим сопроцессором 80287. В процессорах последующих моделей этот бит не имеет значения, поскольку математические сопроцессоры в них встроены внутри кристалла.
PG (Paging – страничное преобразование). Этот бит разрешает (1) или запрещает использование страничного преобразования адреса.
NE (Numeric Error – численная ошибка). Установка этого бита в состояние 1 включает механизм сообщений об ошибках математического сопроцессора.
WP (WriteProtect – защита от записи). Установка этого бита в 1 позволяет защитить страницы, расположенные на уровне привилегий пользователя, от изменения их программами операционной системы, работающих на более привилегированных уровнях. При WP = 0, операционная система может осуществить запись в страницы пользовательского уровня, хотя и защищенные от записи.
AM (AlignmentMask – маска выравнивания). Этот бит разрешает (1) или запрещает (0) контроль выравнивания. Контроль выравнивания производится, когда AM=1, флаг AC=1 и текущий уровень привилегий CPL=3 (режим пользователя). При AM=0 достигается совместимость с процессором 80386 (не имеющим флага AC), поскольку при AM=0 бит AC замаскирован.
NW (Not Write-through – несквозная запись). Этот бит, предназначен для управления встроенной кэш-памятью. Если этот бит, сброшен, то сквозная запись и циклы недостоверности разрешены. Если бит, установлен, то сквозная запись и циклы недостоверности запрещены.
CD (Cache Disable – запрещение кэш-памяти). Если CD = 0, работа внутренней кэш-памяти разрешена, иначе – запрещена.
PWT (PageWrite-Through – сквозная запись в страницу). Этот бит используется для управления кэш-памятью. При PWT=1, для текущей страницы обновление реализуется методом сквозной записи, при PWT=0 – методом обратной записи.
PCD (PageCacheDisable – запрещение кэширования страницы). Этот бит используется для управления кэш-памятью. Посредством этого бита можно управлять кэшированием, как отдельных страниц, так и таблиц страниц. Установка бита PCD в 1 запрещает загрузку страницы в кэш-память.
VME (Virtual-8086 ModeExtensions – расширение режима виртуального 8086). Установка в 1 этого бита включает поддержку флагов виртуальных прерываний VIF и VIP в режиме V86.
PVI (Protected-ModeVirtualInterrupt – виртуальные прерывания защищенного режима). Установка в 1 этого бита включает поддержку виртуальных прерываний в защищенном режиме. Это позволяет выполнять программы, предназначенные для уровня привилегий 0, на уровне привилегий 3.
TSD (TimeStampDisable – разрешение маркера времени). Установка бита TSD в 1 разрешает использовать привилегированную команду RDTSC (Read from time stamp counter).
DE (Debugging Extensions – расширение отладки). Установка бита DE в 1 разрешает точки останова по вводу/выводу.
PSE (PageSizeExtensions – расширение размера страниц). Установка бита PSE в 1 разрешает использование страниц размером 4 Мбайт.
MCE (Machine-CheckEnable – расширение контроля машины). MCE=1 разрешает расширенный контроль.
Регистры отладки
Регистры отладки включают в себя 8 регистров, которые ввели в процессоры семейства Х86, начиная с модели 80386. Однако регистры DR4 и DR5 не задействованы ни в 80386, ни в 80486, ни в Pentium. Они являются резервом для последующих разработок. Регистры отладки предназначены для реализации новых средств отладки, которые раньше применялись в больших компьютерах.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.