- •5 Задача 44
- •1. Відкрита архітектура пеом
- •2. Функціональна схема базової моделі мікропроцесора. Схеми напівсуматора і суматора. Дії над двійковими та двійково-десятковими числами.
- •Додавання
- •Віднімання
- •3. Логічна структура мікропроцесора
- •Сегментные регистры
- •Регистры общего назначения
- •Флаги состояния
- •Флаг направления
- •Системные флаги
- •Регистр управления
- •4. Адресація пам’яті
- •Сегментная адресация памяти
- •Параграфы
- •Понятия команды и формата команды
- •5. Сторінкова організ оп пам’яті. Таблиці, дескриптори
- •Понятие о страничной модели памяти
- •6. Структура таблиц idt. Дескриптор шлюза.
- •Дескриптор шлюза
- •7. Формування фізичної адреси з логічної адреси для сегментної та сторінкової схем організації пам’яті Страничная организация
- •8. Принципи роботи vmm
- •Обзор Администратора виртуальной памяти (vmm)
- •9. Використання регістрів загального призначення
- •10. Організація стеку. Адресація стекової пам’яті
- •11. Архітектура регістру ознак (flags)
- •12. Апаратно-програмні засоби певм.
- •13. Механізм переривань
- •14. Апаратні переривання, їх призначення. Архітектура мікросхеми 8859. Обробка апаратних переривань.
- •15. Контролер apic
- •16. Принцип роботи сопроцесора
- •17. Загальні поняття про канали та порти
- •18. Мікросхема паралельного інтерфейсу
- •19. Структура cmos-memory
- •20. Архітектура мікросхеми таймера
- •1 Задача
- •2 Задача
- •Програма може бути якась така:
- •5 Задача
- •6 Задача
Флаг направления
Этот флаг может изменяться любыми программами с помощью специальных инструкций CLD и STD, а также загрузкой нового содержимого регистра флагов.
DF |
Флаг направления (бит 10). Когда этот флаг сброшен, строковые операции (MOVS, CMPS, SCAS, LODSи STOS) обрабатывают данные в порядке возрастания адресов (увеличивая содержимое регистров SI/ESI/RSI и DI/EDI/RDI после каждой итерации), а когда установлен — в порядке убывания адресов (уменьшая содержимое указанных регистров после каждой итерации) |
Системные флаги
Эти флаги могут изменяться только системным программным обеспечением, работающим при нулевом (наивысшем) текущем уровне привилегий (CPL). Исключением является флаг IF, состояние которого в определённых условиях может меняться менее привилегированным кодом. Загрузка регистров флагов программами, выполняющимися не на нулевом уровне привилегий, не изменяет значения системных флагов.
TF |
Флаг ловушки (бит 8). Когда установлен, вызывает прерывание #DB (вектор 1) после выполнения каждой команды процессора за исключением той, которая осуществила установку этого флага |
IF |
Флаг разрешения прерывания (бит 9). Когда установлен, процессор обрабатывает маскируемые прерывания, запросы на которые поступают от контроллера прерываний или улучшенного контроллера прерываний. Когда сброшен, маскируемые прерывания процессором игнорируются (находятся в ожидании обработки). Возможностью установки и сброса флага IF программами, выполняющимися не на нулевом уровне привилегий, управляют поле IOPL регистра флагов и бит VE управляющего регистра CR3 |
IOPL |
Поле уровня привилегий ввода/вывода (биты 12 и 13). Содержит уровень привилегий ввода-вывода для выполняемой в настоящий момент программы. Если текущий уровень привилегий (CPL)программы численно меньше либо равен значению, находящемуся в поле IOPL, программа может использовать инструкции ввода-вывода, а также менять состояние флага IF. Поле IOPL дополняетсякартой разрешения ввода-вывода в TSS, а также битом VME в управляющем регистре CR4 |
NT |
Вложенная задача (бит 14). Этот флаг устанавливается процессором автоматически при переключении на новую задачу. Переключение на задачу происходит при использовании её в качестве обработчика прерывания через шлюз задачи в IDT или при её вызове командой CALL, обращённой к TSS или шлюзу задачи, находящимся в GDT или LDT |
RF |
Флаг возобновления (бит 16). Управляет реакцией процессора на точки останова. Когда установлен, запрещает генерацию отладочных прерываний (#DB). Основной функцией флага RF является обеспечение повторного выполнения инструкции после возникновения отладочного прерывания, вызванного точкой останова. Для этого отладчик перед возвратом к прерванной программе должен установить этот бит в регистре флагов прерванной программы, сохранённом в стеке, что обеспечит нормальное выполнение инструкции, к которой произойдёт возврат из отладчика. После её выполнения процессор автоматически сбросит флаг RF, что обеспечит нормальное функционирование установленных точек останова |
VM |
Режим виртуального процессора 8086 (бит 17). Когда этот флаг установлен, процессор работает врежиме виртуального процессора 8086 |
AC |
Проверка выравнивания (бит 18). Когда одновременно установлены этот флаг и бит AC управляющего регистра CR0, а программа выполняется на третьем уровне привилегий, активизируется проверка выравнивания операндов, расположенных в памяти. При попытке доступа к невыровненному операнду возникает исключение #AC (вектор 17) |
VIF |
Виртуальный флаг разрешения прерывания (бит 19). Этот флаг используется совместно с флагом VIP, если в управляющем регистре CR4 установлен бит VME, разрешающий использование расширений режима виртуального процессора 8086 |
VIP |
Ожидающее виртуальное прерывание (бит 20). Этот флаг используется совместно с флагом VIF, если в управляющем регистре CR4 установлен бит VME, разрешающий использование расширенийрежима виртуального процессора 8086 |
ID |
Идентификация (бит 21). Возможность программно устанавливать и сбрасывать этот флаг служит признаком того, что процессор поддерживает инструкцию CPUID |
