Главная страница
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.031 c
3-1082024650
Ткаченко Сергей
2004-04-15 14:24
2004.04.11
Контекстное меню правой кнопкой мыши на записи в DBgrid???


7-1079509984
Fuad
2004-03-17 10:53
2004.04.11
Как заменить файл используемый системой(Win2k, WinXP).


1-1082742943
Федя Мегатронов
2004-04-23 21:55
2004.04.11
Компилятор пишет "Undeclared identifier: FileExists "


1-1079999039
@ng3L
2004-03-23 02:43
2004.04.11
Векторная карта ->>>> TXT файл..


1-1079985762
MonkRo
2004-03-22 23:02
2004.04.11
Надстрочные и подстрочные знаки в RichEdit