Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 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.005 c
1-88404
Mush[RUM]
2002-05-16 22:30
2002.05.27
Variable required


7-88660
SerVS - S
2002-02-27 10:37
2002.05.27
Как по ярлыку определить на что он ссылается?


7-88666
George Wheels
2002-02-28 10:27
2002.05.27
Проблема с IPX/SPX в


14-88635
lel
2002-04-16 16:36
2002.05.27
Великое событие, СМЕРТЕЛЬНАЯ БИТВА


1-88461
Ironwit
2002-05-17 16:51
2002.05.27
как получить размер символов в пискелях





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский