Автор
|
Тема: О прерываниях
|
Ilyia |
опубликован 13-01-2002 17:05 MSK
Как я понял при выполнении процедуры Intr(Num:byte; var R:Registers) каждое из значений записи Registers записывается в соответствующие регистры прцессора. При этом в регистрах CS и DS записывается адрес программы прерывания. Скажите что при этом записывается в каждый из остальных регистров.
|
7in
|
опубликован 13-01-2002 19:26 MSK
В каждый из регистров, которые указанны в типе Registers (кроме Flags) записываются значения из переменной R, в т.ч. и в регистр DS. Что касается CS, то в него ничего не записывается и записываться не должно в принципе. В остальные регистры (CR#, MM# и т.д) ничего не записывается. После выполнения прерывания в переменную R записываются новые значения регистров (в т.ч. и флаги - Flags). |
Ilyia
|
опубликован 13-01-2002 20:30 MSK
В регистр записывается информация в зависимости от того какое прерывание выполнено или в зависимости от предназначения того или иного регистра ? |
gar_radik
|
опубликован 13-01-2002 20:40 MSK
в регистровых переменных записывается содержимое соотв.регистров на момент возникновения прерывания. если прерывание возникло по аппаратной причине, то содержимое абсолютно случайное, но жизненно важное для правильного продолжения прерванного процесса если по INT XX то что передали, то и идет, но берется все равно из регистров |
Ilyia
|
опубликован 13-01-2002 21:01 MSK
Большая просьба: Дайте таблицу, которая определяет для чего назначается каждый регистр, например: AX - ... BX - ... И Т.Д. А то я чего-то туплю... |
NOPIK
|
опубликован 14-01-2002 12:55 MSK
Нет такой таблицы. Регистры типа EAX, EBX, ECX, EDX - это регистры общего назначения. Жесткой функции у них нет (исторически регистр AX - аккумулятор, CX - счетчик DX - указатель данных и т.п. Но для Intel 80x86 это не важно.) В большинстве функций DOS и BIOS регистры используются идентично (но это не правило и оно не всегда выполняется!) - см. Руководство Программиста DOS - Правила вызова программных прерываний описаны там. Особенности вызова АППАРАТНЫХ прерываний описаны в руководстве микропроцессора (можно взять любое - от 80386 до Pentium IV) |
7in
|
опубликован 14-01-2002 23:43 MSK
А где, кстати, руководство такое можно скачать? :)))2 Ilya: ВО ВСЕ регистры записывается информация из переменной R (кроме Flags). А после выполнения прерывания в переменную К заносятся новые значения (которое возвратило прерывания, в т.ч. и Flags). При этом некоторые (а может, и все) регистры останутся неизменными. |
NOPIK
|
опубликован 14-01-2002 23:53 MSK
>>7In Какое - такое? |
Ilyia
|
опубликован 15-01-2002 12:00 MSK
7In:Я уже не помню где совсем недавно скачал где следующее, если надо пришлю (но это не пень 4): 1. Основные характеристики ...............................5 1.1. 32-битная архитектура ...........................6 1.2. Высокопроизводительная технология ...............7 1.3. Обеспечение работы с виртуальной памятью ........9 1.4. Механизмы защиты ...............................10 1.5. Расширенные возможности отладки ................11 1.6. Совместимость с микропроцессорами 8086/80286 ...12 1.7. Заключение .....................................12 2. Прикладная архитектура ...............................13 2.1. Регистры .......................................13 2.1.1. Общие регистры ...........................14 2.1.2. Флаги и счетчик команд ...................14 2.1.3. Регистры математического сопроцессора ....16 2.2. Память и логическая адресация ..................17 2.2.1. Сегменты .................................17 2.2.2. Логические адреса ........................18 2.2.3. Регистры сегментов и дескрипторов ........19 2.2.4. Способы адресации ........................22 2.3. Типы данных и команды ..........................23 2.3.1. Главные типы данных ......................23 2.3.2. Типы данных математического сопроцессора..27 2.3.3. Другие команды ...........................30 2.3.3.1. Команды операций со стеком .........30 2.3.3.2. Команды передачи управления ........30 2.3.3.3. Дополнительные команды .............31 3. Системная архитектура ................................32 3.1 Системные регистры ..................................32 3.2. Обеспечение многозадачных операционных систем ..33 3.2.1. Сегмент состояния задачи .................34 3.2.2. Смена задачи .............................35 3.3. Адресация ......................................36 3.3.1. Принцип тарнсляции адрса .................37 3.3.2. Сегменты .................................39 3.3.3. Страницы .................................42 3.3.4. Виртуальная память .......................45 3.4. Защита .........................................48 3.4.1. Привилегии ...............................48 3.4.2. Привилегированные команды ................50 3.4.3. Защита сегментов .........................50 3.4.4. Защита страниц ...........................52 3.5. Системные вызовы ...............................52 3.6. Прерывания и особые ситуации ...................55 3.6.1. Таблица дескрипторов .....................56 3.6.2. Особые случаи и регистры отладки .........58 3.7. Ввод/вывод .....................................59 4. Архитектурная совместимость ..........................60 4.1. Совместимость с 80286 ..........................61 4.2. Режимы реального и виртуального 8086 ...........61 5. Аппаратурная реализация ..............................64 5.1. Внутренняя структура ...........................65 5.2. Внешний интерфейс ..............................67 5.2.1. Синхросигнал .............................68 5.2.2. Шины данных и адреса .....................68 5.2.3. Определение циклов шины ..................69 5.2.4. Управление циклом шины ...................70 5.2.5. Динамическое управление разрядность шины .71 5.2.6. Статус процессора и управление ...........72 5.2.7. Управление сопроцессором .................73 Это к сожалению всё (забыл где качал) |
NOPIK
|
опубликован 15-01-2002 12:39 MSK
Вообще то, это оглавление описания МП Intel 80386 |
NOPIK
|
опубликован 15-01-2002 01:01 MSK
Собственно, если вы не в силах набрать несколько букв(www.intel.ru) на клавиатуре (тугая там, провод короткий, батарейки сели)...http://developer.intel.ru/design/processor/ |
MishaZ
|
опубликован 20-01-2002 13:42 MSK
А может парню просто Интеррапт лист нужен а? |
7in
|
опубликован 20-01-2002 23:54 MSK
2 MishaZ: Нет, охото было список инструкций для пней 2/3/4 :) 2 NOPIK: Спасибо за ссылку. Понадобится - загляну :) |
NOPIK
|
опубликован 21-01-2002 01:15 MSK
Тиресно! Охота, но пока не надобится :-) |
7in
|
опубликован 22-01-2002 23:52 MSK
:))))))))))) |