Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Asm: Общие вопросы > прерывания во встроенном Ассемблере


Автор: Solomon 23.8.2007, 12:29
Вообщем я только пытаюсь разобратся со встроенным ассемблером в С++ и вот столкнулся с такой проблемой: на этапе выполнения, когда программа доходит то строчки с прерыванием то почемуто меня выкидывает... пробывал как с прерыванием int 16h так и с int 21h.
Из за чего может возникать такая проблема?

p.s. извеняюсь если написал не туда... но более подходящего места я не предумал

Автор: MAKCim 23.8.2007, 12:46
Solomon, 
компилятор?

Автор: cardinal 23.8.2007, 12:47
Так напрямую работать не будет, т.к. прерывания напрямую в Windows запрещены. Можно как тут описано
http://subscribe.ru/archive/comp.prog.assembler/200609/10143437.html
и тут еще есть пример с асм'ом
http://www.lib.csu.ru/DL/bases/prg/frolov/books/bsp/v17/ch5.htm

Но я этим более глубоко не занимался.

Добавлено через 27 секунд
И не в компиляторе дело...

Автор: Solomon 23.8.2007, 12:47
Visual C++.NET 2000

Автор: cardinal 23.8.2007, 12:49
Смотрите в сторону драйверов, а это еще тот дремучий лес...

Автор: Solomon 23.8.2007, 12:53
cardinal, спасибо... мож что нибуть и выйдет из этой, как я понял не очень удачной затеи ))

Автор: Severyanin 23.8.2007, 13:02
А зачем в С++ прерывания DOS? Почему бы напрямую не вызвать соответствующие ф-ции С?

Автор: MAKCim 23.8.2007, 16:08
Цитата(cardinal @  23.8.2007,  12:47 Найти цитируемый пост)
И не в компиляторе дело...

в компиляторе
если взять к примеру Turbo C++ 3.0
то в итоге созданный им бинарник будет выполняться в режиме V86 с эмуляцией всех прерываний DOS/BIOS

Автор: cardinal 23.8.2007, 19:56
Цитата(MAKCim @  23.8.2007,  15:08 Найти цитируемый пост)
то в итоге созданный им бинарник будет выполняться в режиме V86 с эмуляцией всех прерываний DOS/BIOS 

Ну все равно же это идет уже в сторону особой компиляции и т.д. Короче для начинающего думаю это все дремучий лес, в который суваться не стоит... smile 

Автор: MAKCim 23.8.2007, 20:09
Цитата(cardinal @  23.8.2007,  19:56 Найти цитируемый пост)
Короче для начинающего думаю это все дремучий лес, в который суваться не стоит...

это уже другой вопрос
я просто тебе доказал, что мой вопрос
Цитата(MAKCim @  23.8.2007,  12:46 Найти цитируемый пост)
компилятор? 

был по существу  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)