Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.034 c
9-1068147963
kootel
2003-11-06 22:46
2004.04.11
Установка GLScene


3-1079438598
Жук
2004-03-16 15:03
2004.04.11
Проблема с ADODataSet.Delete


1-1080198345
Yevgeniy
2004-03-25 10:05
2004.04.11
Как добавить картинку в компонент


1-1082870985
Артем К.
2004-04-25 09:29
2004.04.11
Проблема с предварительным просмотром в QuickReport


1-1080108709
sohat
2004-03-24 09:11
2004.04.11
А есть ли книть компоненты - интерпритаторы?




   Наверх