Builder 6.0 взаимодействие с ассемблерными вставками __asm

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

Ответить
ZaikinMaxim
Сообщения: 23
Зарегистрирован: 23 фев 2005, 09:18
Контактная информация:

Добрый день. Вопрос такой, как используя ассемблерную вставку,
после ее отработки, считать результат и передать этот результат функции ?
С уважением Заикин Максим Викторович
ZaikinMaxim
Сообщения: 23
Зарегистрирован: 23 фев 2005, 09:18
Контактная информация:

А вот еще из той же темы, при отработки вот этого :
_asm {
mov dx, 3f2h
mov al, 0
out dx, al

}( Это включает мотор дисковода )

выдается ошибка, дебагер встает на последней строке, то есть когда мы выводим в порт, что не так ? И опять же как считать, слово состояния st0 и передать его уже функции в билдере, для дальнейшего анализа ?
С уважением Заикин Максим Викторович
Аватара пользователя
Romeo
Сообщения: 3126
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

В асемблерных вставках можно оперировать с С переменными (например mov my_local_var, ax). Это решит, как первую, так и вторую проблему. Почему апликуха падает при выводе в порт ответить на вскидку не могу. Может работа с этим портом правомерна только под DOS? Хотя предположение довольно ветхое, сказать по правде.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Ответить