Форум: Форум C++Разное
Новые темы: 00
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум C++

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: VisualStudio2008 + ASM
 
 автор: Miha_drinking_bout   (24.07.2010 в 21:32)   письмо автору
 
 

Подскажите - как в визуал студии 2008 правильно подключить асм. Использую NASM2.02. Скинул в папку VC\Bin\ вроде работает. Как из cpp правильно обращаться к коду из asm файлов. Уже есть готовые асм модули, писал для задействования Simd инструкций процессора, как вызвать из С++ не знаю.

  Ответить  
 
 автор: Miha_drinking_bout   (29.07.2010 в 17:56)   письмо автору
 
   для: 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   (29.07.2010 в 17:56)   письмо автору
 
   для: Miha_drinking_bout   (24.07.2010 в 21:32)
 

кстати - как включать файлы с расширением cu (cuda). До этого я просто брал чужие исходники и редактировал немного.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования