Форум: "Система";
Текущий архив: 2002.05.27;
Скачать: [xml.tar.bz2];
ВнизРабота с системными прерываниями и регистрами процессора Найти похожие ветки
← →
Neo_Max (2002-03-01 12:56) [0]Здравствуйте!
Подскажите пожалуйста - как можно вызвать прерывание $21 и др.,
и как работать с регистрами процессора ?
Заранее очень благодарен!
Макс.
← →
[NIKEL] (2002-03-01 14:11) [1]используй asm`овские вставки, если конечно ассемблер знаешь...
← →
Shaman_Naydak (2002-03-01 14:28) [2]Только учти, что под Win2k/NT это все не имеет ни малейшего смысла.
Доса там нет, вызвать ничего не получится
← →
Доброжелатель :) (2002-03-02 15:25) [3]Вот это вот включи по директивой asm в свою программку. Очень хороший пример использования прерываний.
mov ax, offset RETURN ; Взять смещение адреса возврата
push ax ; Занести в стек флаги, сегмент
push cs ; и смещение адреса возврата
pushf ; в обратном порядке.
mov cl, 13h ; Функция: удалить по FCB
mov dx, offset FCB ; Расширенный FCB
push cs ; Для уверенности, что DS
pop ds ; указывает на текущий код.
jmp dword ptr ALT_DOS_PTR ; Выполнить функцию.
RETURN: mov ah, 4Ch ; Завершить процесс через DOS.
int 21h ;
ALT_DOS_PTR dw 00C0h, 0000 ; Адрес для перехода в альтер-
; нативный обработчик
FCB db 0FFh ; Расширенный FCB
db 5 dup (0) ; Зарезервированные байты
db 1Fh ; Установлены все биты атрибута файла
db 0 ; Номер дискового устройства
db "???????????" ; Искать все файлы
db 19h dup (0) ; Остальная часть FCB
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2002.05.27;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.006 c