X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Установка вектора прерываний emu8086
PRStudio
PRStudio
Topic Starter сообщение 22.5.2013, 18:58; Ответить: PRStudio
Сообщение #1


Делаю лабу по системному. Как и должно быть, препод сам не зная предмета не дал никакой внятной теории. Изучаю код приведенный в примерах лабы, и меня смутило следующее:

;занесем в вектор 23h адрес обработчика
mov AX,2523h
mov DX,offset trololo
...


Как ?? Куда что заносится мать его?
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Alcorn
Alcorn
сообщение 23.5.2013, 12:22; Ответить: Alcorn
Сообщение #2


Сперва скомпиленый код обработчика прерываний ложится в ОЗУ, далее в таблице прерываний (прерываний всего 256 (00 - FF) по 4 байта на адрес: 256*4=1024 = 400h = 03FC + 4 (последнее под номером FF), т.е. адреса ОЗУ от 0 до 03FCh) в нужное прерывание запихивается адрес обработчика сегмент:смещение (4 байта на адрес). При программном прерывании int, из таблицы выхватывается адрес (в данном случае 23-ий 008Ch от начала) и передаётся управление на проц по тому адресу cs:смещение + кажется в стек пишется адрес возврата (точно уже не помню).

// до этого сохраняем скомпиленый код обработчика по адресу 2222h:1111h
mov ax,0
mov ds,ax // ставим сегмент данных на начало ОЗУ
mov word ptr ds:[008Ch],1111h // записываем адрес смещения
mov word ptr ds:[008Eh],2222h // записываем адрес сегмента
int 23h // генерируем прерывание, которое вызовет наш скомпиленый в ОЗУ код

Я к ассемблеру уже 7 лет не подходил, так что это так, в общих чертах.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Vapaamies
Vapaamies
сообщение 24.5.2013, 23:34; Ответить: Vapaamies
Сообщение #3


+1. Специалистов по Oracle отличает хорошее знание ассемблера. :goodpost:

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Установка лицензионного плагина Elementor Pro
0 NoFuel 906 15.11.2020, 17:21
автор: NoFuel
Открытая тема (нет новых ответов) [ИЩУ] Установка и настройка Keitaro TDS на VPS
0 rokot 2323 24.11.2018, 14:23
автор: rokot
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыУстановка и настройка CMS, перенос контента, перевод шаблонов, консультации по юзабилити и другое
Перевод шаблонов для CMS , чистка от мусора и ссылок, установка CMS
22 winlogon 18009 6.11.2018, 14:13
автор: winlogon
Открытая тема (нет новых ответов) Нужна установка и настройка сайтов на WP
рутина по установке движков
0 Eji 2247 20.10.2016, 12:56
автор: Eji
Открытая тема (нет новых ответов) Предложение, установка витрины баннеров взамен трафик .
2 linkos-bux 2724 8.5.2016, 8:06
автор: rom-36


 



RSS Текстовая версия Сейчас: 24.4.2024, 15:28
Дизайн