Assembler
mov eax,[адерс памяти]
Я нашел какой-то непонятный для меня варинат mov eax,[20h] но Я не знаю, как сделать так что бы в скобках можно было использовать переменные или регистры.
mov eax, [eax]
в 2006 версии работало, а в 2010 не хочет
Цитата: omgnick
Ребята подскажи мне как в Microsoft Visual Studio 2010 обратиться к памяти, вот премер который мне нужно реализовать.
mov eax,[адерс памяти]
mov eax,[адерс памяти]
Код:
int value=*((int*)адрес_в_памяти);
Не? Или нужны именно асм-вставки? :)
нужны асм-вставки
Цитата: omgnick
нет, так не работает
в 2006 версии работало, а в 2010 не хочет
в 2006 версии работало, а в 2010 не хочет
и каким же образом оно "не работает" ? может там вообще 64-бит?
ну каким, выдает ошибку "improper operand type"
Код:
int x = 5;
int j=0;
__asm
{
lea eax, x
mov eax, [eax]
mov j , eax
}
cout << j << endl;
int j=0;
__asm
{
lea eax, x
mov eax, [eax]
mov j , eax
}
cout << j << endl;
я так понимаю, мы записываем адрес х в еах?
Цитата:
хотелось бы знать, что такое "lea eax,x"
вычисляет адрес x и записыавет его в eax, насколько я помню.