SIDT
(Store Interrupt Descriptor Table)
Сохранение регистра глобальной дескрипторной таблицы прерываний
Схема команды: | sidt источник |
Назначение: извлечение содержимого системного регистра idtr, содержащего значения базового адреса и размера дескрипторной таблицы прерываний IDT.
Алгоритм работы:
команда sidt выполняет чтение содержимого системного регистра idtr в область памяти размером 48 бит. Структурно эти 48 бит представляют 16 бит размера и 32 бита значения базового адреса начала таблицы IDT в памяти.
Состояние флагов после выполнения команды:
выполнение команды не влияет на флаги |
Применение:
Команду sidt применяют при работе системных программ с уровнем привилегий 0, в частности, при написании различных драйверов. В качестве операнда в команде указывается адрес области в формате 16+32. Младшее слово области — размер IDT, двойное слово по старшему адресу — значение базового адреса начала этой таблицы.
.286 ;структура для описания псевдодескрипторов gdtr и idtr point STRUC lim dw 0 adr dd 0 ENDS .data point_idt point
.code ... ;читаем содержимое idtr sidt point_idt ... |
См. также: урок 17 и команду