| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Ассемблерный код в программе c++ |
| Автор: fullnull 21.7.2008, 21:15 | ||||
| Всем привет! Проблемка: нужно вставить asm-код в программу на cpp TASM программа:
Нужно выполнить то же самое в программе на C++:
Программа не компилиться, куча ошибок. Слышал, что gcc не дружит с таким способом вставки asm-кода. Но как это сделать? |
| Автор: SABROG 21.7.2008, 21:49 |
| Учи синтаксис AT&T gcc использует компилятор ассемблера gas Первое что выдал гугл: http://sig9.com/articles/att-syntax http://ru.wikipedia.org/wiki/AT&T_%D1%81%D0%B8%D0%BD%D1%82%D0%B0%D0%BA%D1%81%D0%B8%D1%81 http://www.ibiblio.org/gferg/ldp/GCC-Inline-Assembly-HOWTO.html А теперь насчет самого ассемблерного кода. Если программа будет собираться под линуксом, то она работать не будет, там совершенно другие прерывания. Кстати вот еще что. У gcc есть опция -masm-compat, но нигде нет информации о том как с ней работать. |
| Автор: fullnull 24.7.2008, 20:39 | ||
| Я сделал все, чтобы не учить этот непривлекательный для меня синтаксис. Вот что я нашел: http://www.redhat.com/docs/manuals/enterprise/RHEL-3-Manual/gcc/invoking-gcc.html
|
| Автор: xvr 25.7.2008, 11:28 | ||||||
А придется
Кстати, совершенно непонятно, для чего этот ассемблер нужен - получить GPF (и аварийное завершение программы) можно и гораздо более простыми срособами |
| Автор: nerezus 27.7.2008, 13:07 |
| fullnull, код на асме должен быть для целевой платформы. А синтаксис - для конкретного компилятора. |
| Автор: jonie 27.7.2008, 23:59 |
| можно скомпилить отдельные части ассемблером, что понимает синтаксис intel и прилинковать эту функциональность при линковке частей из cpp ... незнаю как это сделать с gcc, но уверен что такое возможно. |