Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как совместить ASM и С++?

4.1K
13 июня 2003 года
Shnobell
10 / / 13.06.2003
Дело в том, что я пишу прогу на С++, но некоторые вещи (графику, например) пишу на асме. Как использовать процедуры, написанные на асме и компилированные в отдельные obj файлы, в Си-ных прогах?

Вопрос 2 - как передавать параметры при вызове процедуры?
314
14 июня 2003 года
fanto
374 / / 15.02.2003
Цитата:
Originally posted by Shnobell
Дело в том, что я пишу прогу на С++, но некоторые вещи (графику, например) пишу на асме. Как использовать процедуры, написанные на асме и компилированные в отдельные obj файлы, в Си-ных прогах?

Вопрос 2 - как передавать параметры при вызове процедуры?


А почему бы не писать на асме просто посреди
текста на С++.Создать например процедурку
void asm_pr(int i,int j)
{
asm{
//Тут пиши на чистом асме...
}
}

4.1K
14 июня 2003 года
Shnobell
10 / / 13.06.2003
Цитата:
Originally posted by fanto

А почему бы не писать на асме просто посреди
текста на С++.Создать например процедурку
void asm_pr(int i,int j)
{
asm{
//Тут пиши на чистом асме...
}
}



Конечно можно использовать Inline Asm, но я хотел что в отдельных объектных модулях было...

2.5K
14 июня 2003 года
Mozart
5 / / 18.12.2002
Делать Make, а потом link ручками. (См. link /h)
А функции вызывать - смотря как на асме со стеком работаешь - в С++ используй модификаторы __fastcall, __stdcall ...
424
15 июня 2003 года
(C)dragon
307 / / 04.12.2002
Цитата:
Originally posted by Mozart
Делать Make, а потом link ручками. (См. link /h)
А функции вызывать - смотря как на асме со стеком работаешь - в С++ используй модификаторы __fastcall, __stdcall ...



Да, их прототипы надо описывать как extern "C" {...};

356
17 июня 2003 года
molnij
159 / / 20.06.2000
упс... а вот у меня вопрос почти по теме...
скажите можно ли как-нить убедить шестой MVC, понимать конструкцию
Цитата:
void asm_pr(int i,int j){
asm{
//Тут пиши на чистом асме...
}


если в этом самом чистом асме есть инструкции SSE ?

395
17 июня 2003 года
RelB
367 / / 09.11.2002
Цитата:
Originally posted by molnij
упс... а вот у меня вопрос почти по теме...
скажите можно ли как-нить убедить шестой MVC, понимать конструкцию

если в этом самом чистом асме есть инструкции SSE ?


Ну, наверное, просто ассемблер шестого вижуала не поддерживает ссе. Придется тебе записывать эти инструкции ручками (опкодами)...

1.8K
17 июня 2003 года
gwg605
76 / / 06.03.2003
Цитата:
Originally posted by molnij
упс... а вот у меня вопрос почти по теме...
скажите можно ли как-нить убедить шестой MVC, понимать конструкцию
если в этом самом чистом асме есть инструкции SSE ?



Поставить SP5 или Processor Pack. Все это доступно на MS сайте.

356
17 июня 2003 года
molnij
159 / / 20.06.2000
спасибо большое...
вот только качать 120 Mb из сети - это мне на пару дней развлечение... и то если конект хороший будет... Спасибо мелкософт за наше щастливое детство...!!!
1.8K
18 июня 2003 года
gwg605
76 / / 06.03.2003
Цитата:
Originally posted by molnij
спасибо большое...
вот только качать 120 Mb из сети - это мне на пару дней развлечение... и то если конект хороший будет... Спасибо мелкософт за наше щастливое детство...!!!



Если уже стоит SP4 , то можешь отделаться всего 1Mb с кепкой :)
А зачем вообще качать, найти ближайшее место где торгуют CD, и купить за 60р и студию и паки и черта в ступе :)

356
18 июня 2003 года
molnij
159 / / 20.06.2000
дык у том то и дело, что четвертого пака не стоит, что я выяснил скачав этот метр с кепкой, а идти с шестью десятками как-то все влом если честно...
но похоже придется...
НАиbest regardсов !:)
4.0K
27 июня 2003 года
profi_r
7 / / 26.06.2003
Цитата:
Originally posted by Shnobell
Дело в том, что я пишу прогу на С++, но некоторые вещи (графику, например) пишу на асме. Как использовать процедуры, написанные на асме и компилированные в отдельные obj файлы, в Си-ных прогах?

Вопрос 2 - как передавать параметры при вызове процедуры?



Ну сначала надо знать на какой платформе ты прогу пишешь (DOS или WIN32)...
А вобще там целый реферат написать можно. Я уже такие фокусы делал - могу поделиться исходниками(for DOS): прога определяет частоту твоего проца и выдает на экран. Там кстати есть некомпелируемая команда из набора MMX. Если интересно скажи мыло или асю.

4.1K
29 июня 2003 года
Shnobell
10 / / 13.06.2003
Цитата:
Originally posted by profi_r


Ну сначала надо знать на какой платформе ты прогу пишешь (DOS или WIN32)...
А вобще там целый реферат написать можно. Я уже такие фокусы делал - могу поделиться исходниками(for DOS): прога определяет частоту твоего проца и выдает на экран. Там кстати есть некомпелируемая команда из набора MMX. Если интересно скажи мыло или асю.



Мыло есть в профайле, а так продублирую:
[email]toilet_bandit@inbox.ru[/email]
заранее спасибо

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог