Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: CL | DM;

Вниз

Почему неработает функция прерывания int в программе на Delphi   Найти похожие ветки 

 
Demi   (2004-04-22 10:02) [0]

У меня есть кника по ассемблеру в ней написано зделайте так проделайте эдак. Проблема в том что всё было бы  нормально если бы команда  int не вызывала исключение, от которой всё зависит.Подскажите в чём проблема. Спасибо.


 
Игорь Шевченко ©   (2004-04-22 10:09) [1]


> У меня есть кника по ассемблеру


Сходить на форум по ассемблеру ?


 
Григорьев Антон   (2004-04-22 10:50) [2]

Программе, работающей в пользовательском режиме, нет нужды вызвать прерывания, вот система и не разрешает делать это. Забудьте вообще про прерывания и ищите альтернативный способ.


 
inic   (2004-04-22 11:05) [3]

Предыдущий человек (Григорьев Антон) прав. Я не помню точно, но обычные программы в Win32 выполняются в некотором режиме, для которых недопустимы некоторые инструкции процессора, например int, in, out и т.п. (необходимо прочитать материал о защищенном режиме - Protected Mode; уверен, что в Вашей книге по ассемблеру это описывается). Но такие инструкции доступны для драйверов (кстати, часто их и создают не в качестве драйвера, а в качетсве библиотеки к главной программе для доступа к ним).


 
PVOzerski ©   (2004-04-22 11:08) [4]

Уточнение: win"9x и win"NT здесь ведут себя по-разному.


 
Digitman ©   (2004-04-22 11:33) [5]


> если бы команда  int не вызывала исключение, от которой
> всё зависит


не понял, от кого и что зависит ? от исключения что-то зависит ? или от невозможности якобы использовать int-инструкцию ?


 
Матлабист   (2004-04-22 11:35) [6]

Почитай внимательно книжку, на какую OS она рассчитана. Скорее всего DOS ;)


 
Матлабист   (2004-04-22 11:50) [7]

> вот система и не разрешает делать это

Очень даже разрешает. Половина функций из ntdll уходят в int $2e. Например:

ntdll.ZwCreateMutant:  mov eax, $00000025
 lea edx, [esp+$04]
 int $2e ; Обращение к ядру Windows  
 ret $0010



Страницы: 1 вся ветка

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.069 c
6-1076080625
IgoX
2004-02-06 18:17
2004.04.11
прибавление IP


1-1082546093
CraKer
2004-04-21 15:14
2004.04.11
Как поставить на форму свой курсор(не из стандартны) например в .


7-1079636270
Константин
2004-03-18 21:57
2004.04.11
Автозапуск


14-1079517038
YurikGl
2004-03-17 12:50
2004.04.11
АнтиСпам


8-1076650449
Spider
2004-02-13 08:34
2004.04.11
Проиграьт звук при помощи DirectSound (DirectX 9)