|
|
|
| Подскажите - как в визуал студии 2008 правильно подключить асм. Использую NASM2.02. Скинул в папку VC\Bin\ вроде работает. Как из cpp правильно обращаться к коду из asm файлов. Уже есть готовые асм модули, писал для задействования Simd инструкций процессора, как вызвать из С++ не знаю. | |
|
|
|
|
|
|
|
для: Miha_drinking_bout
(24.07.2010 в 21:32)
| | Для тех кто знаком с си, си++ изучать ассемблер при помощи асм вставок очень просто. Непокидаешь привычной среды разработки. Но мне к сожалению это не подходит.
Искал и нашел только пример из вики.
Чтото вроде того:
// sse2.cpp: определяет точку входа для консольного приложения.
//
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
float a[4] = { 300.0, 4.0, 4.0, 12.0 };
float b[4] = { 1.5, 2.5, 3.5, 4.5 };
__asm {
movups xmm0, a ; // поместить 4 переменные с плавающей точкой из a в регистр xmm0
movups xmm1, b ; // поместить 4 переменные с плавающей точкой из b в регистр xmm1
mulps xmm1, xmm0 ; // перемножить пакеты плавающих точек: xmm1=xmm1*xmm0
; // xmm10 = xmm10*xmm00
; // xmm11 = xmm11*xmm01
; // xmm12 = xmm12*xmm02
; // xmm13 = xmm13*xmm03
movups a, xmm1 ; // выгрузить результаты из регистра xmm1 по адресам a
}
int x;
for(x=0;x<4;x++)
{
printf("%f\n",a[x]);
}
}
|
Приятное, естественное обращение - не правда ли?
Но мне надо включить внешние асм файлы:( | |
|
|
|
|
|
|
|
для: Miha_drinking_bout
(24.07.2010 в 21:32)
| | кстати - как включать файлы с расширением cu (cuda). До этого я просто брал чужие исходники и редактировал немного. | |
|
|
|