Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.02.2013, 21:43   #1
Stasiksis
Пользователь
 
Регистрация: 12.09.2011
Сообщений: 19
По умолчанию Ассемблерные вставки.

Добрый вечер, пишу программу на си, с использованием вставок ассемблерных, в программе есть матрица, в ассемблерной вставке хочу использовать один ее элемент, к примеру с[i][j], как это сделать правильно?
Для компилятора Visual Studio.
Stasiksis вне форума Ответить с цитированием
Старый 14.02.2013, 22:30   #2
Somebody
Участник клуба
 
Регистрация: 08.10.2007
Сообщений: 1,185
По умолчанию

В общем случае что-то типа:
Код:
lea ecx, [c]
mov eax, [j]
mul [itemSize]
add ecx, eax
mov eax, [i]
mul [colSize]
add ecx, eax
mov dword ptr [ecx], 123
где colSize = sizeof(c[0]), itemSize = sizeof(c[0][0]).
А так - смотря какая ситуация. Если, например, colSize и itemSize - константы и itemSize - {2, 4, 8}, а массив статический, то можно и
Код:
imul eax, [i], colSize
mov edx, [j]
mov dword ptr [c + eax + edx * itemSize], 123
Somebody вне форума Ответить с цитированием
Старый 14.02.2013, 22:34   #3
Stasiksis
Пользователь
 
Регистрация: 12.09.2011
Сообщений: 19
По умолчанию

Цитата:
Сообщение от Somebody Посмотреть сообщение
В общем случае что-то типа:
Код:
lea ecx, [c]
mov eax, [j]
mul [itemSize]
add ecx, eax
mov eax, [i]
mul [colSize]
add ecx, eax
mov dword ptr [ecx], 123
где colSize = sizeof(c[0]), itemSize = sizeof(c[0][0]).
А так - смотря какая ситуация. Если, например, colSize и itemSize - константы и itemSize - {2, 4, 8}, а массив статический, то можно и
Код:
imul eax, [i], colSize
mov edx, [j]
mov dword ptr [c + eax + edx * itemSize], 123
Спасибо большое!
Stasiksis вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ассемблерные вставки в СИ sunny_alice Помощь студентам 0 22.12.2012 00:54
ассемблерные вставки в c++ chupchupps Помощь студентам 1 09.02.2011 11:54
delphi ассемблерные вставки tanek Помощь студентам 8 19.04.2010 18:35
Ассемблерные вставки в Delphi Jupiter Общие вопросы Delphi 2 24.08.2008 16:41
Ассемблерные вставки Assassin Помощь студентам 1 26.05.2008 08:19