Je rencontre beaucoup de problèmes pour accéder à une valeur dans un tableau de caractères à un emplacement spécifique. J'utilise inline-assembly en C++ et en utilisant Visual Studio (si cela aide). Voici mon code:Obtenir un caractère à l'emplacement de l'index dans la matrice char Assembly X86 embedded
char* addTwoStringNumbers(char *num1)
{
// here is what I have tried so far:
movzx eax, num1[3];
mov al, [eax]
}
Quand je debug, je peux voir que num1 [3] est la valeur que je veux, mais je ne peux pas sembler faire soit al
ou égale eax
cette valeur, il semble être toujours une référence de pointeur. J'ai aussi joué avec Byte PTR sans aucune chance.
Vous devriez publier un code * réel *. Ce fragment n'est pas valide, vous devez au moins dire au compilateur C++ que le corps du code est assembleur sinon il tentera de l'analyser comme du code C++. http://msdn.microsoft.com/en-us/library/5f7adz6y%28v=VS.71%29.aspx – Clifford