Форум программистов, компьютерный форум CyberForum.ru

Обнулить элементы вектора через __asm - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ругается на неоднозначный вызов перегруженной функции http://www.cyberforum.ru/cpp-beginners/thread1140365.html
Делаю все по примерам не могу понять в чем ошибка. Уверен что ошибка элементарная. Ругается на неоднозначный вызов перегруженной функции. Причем на все функции( #include <iostream> #include <cmath> using namespace std; #define Pi 3.14 int main() { int T; double P; int r,t,Y,R,A; cout<<"T = "; cin>>T;
C++ Удаление элемента списка и всего списка Компилируется, но не работает. Что и как исправить? #include <cstdlib> #include <iostream> #include <cstring> #define M 5 using namespace std; struct A { char key ; http://www.cyberforum.ru/cpp-beginners/thread1140351.html
предлоги C++
помогите пожалуйста! Есть предложение в нем надо подсчитать кол-во предлогов! Как это сделать, и что для этого надо почитать
C++ Запуск подпрограмм
Только начал изучать, сильно не пинайте. Запускаю много разных исходников, приходиться каждый раз создавать новый проект, либо все стирать в старом и писать/вставлять новый. Причем IDE не позволяют видеть боьше 1 проекта (Visual2010 & DevCpp) :no: Хочется просто открыть новую вкладку IDE и писать/запускать, не теряя из виду содержимое изначальной вкладки. Пока решил оформлять новые задачи в...
C++ Найти все числа в массиве которые заканчиваются на число 47 http://www.cyberforum.ru/cpp-beginners/thread1140306.html
Помогите пожалуйста решить задачу: Неоходимо найти все числа в массиве (диапазон случайных чисел от 200 до -200) которые заканчиваются на 47 (как я понял вариантов будет не много. -47 47 -147 147) и вывести эти числа с ихними индексами в массиве. Пример: Число -47 | Ряд 2 | Строка 7 Число 147 | Ряд 4 | Строка 8 Знакомый сказал что можно реализовать это задание следующим способом. От...
C++ Метод перебора Пожалуйста помогите решить задачу за оптимальное время МИНИМАЛЬНОЕ ПОКРЫТИЕ УСЛОВИЕ. Заданы набор С подмножеств конечного множества S, положительное целое число K<=C. ВОПРОС. Верно ли, что С содержит покрытие мощности не более K Иными словами, существует ли такое подмножество C1 из C, что |С1|<=K( и любой элемент из S принадлежит по крайней мере одному подмножеству из С1? Комментарий.... подробнее

Показать сообщение отдельно
mat_for_c
 Аватар для mat_for_c
117 / 112 / 20
Регистрация: 26.04.2013
Сообщений: 591
Завершенные тесты: 2
06.04.2014, 15:06     Обнулить элементы вектора через __asm
Хочу обнулить элементы вектора через __asm

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <vector>
#include <iostream>
 
using namespace std;
 
void main() {
   vector<vector<int>> v(2, vector <int> (3, 1));
 
   __asm {
      mov ecx, 2
      mov edi, v
      mov eax, dword ptr [edi + 16]
      mov edi, [edi][1]
        
      //mov dword ptr [edi + 8], 0
   cycl:
      mov dword ptr [edi + ecx*4], 0
      //add eax, 4
      loop cycl
   }
     
   for (int i = 0; i < 2; ++i) {
      for (int j = 0; j < 3; ++j)
         cout << v[i][j] << " ";
      cout << endl;
   }
}
Сам вопрос: eax и edi имеют разные значения, причем в eax лежит правильный результат. Я же хочу получить доступ ко 2-й строке через индексацию [1]. Как это реализовать?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 01:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru