je un tableau contenant sbytes qui se sont ajoutés les uns aux autres à l'aide duLe passage d'un registre à un x86 variables
EDX
et
ebp
registres.
Le code fonctionne très bien, sauf que maintenant je suis en train de se déplacer
ebp
à une variable appelée total_sum qui détiendrait Swords. Cependant, je ne suis pas sûr de savoir comment faire cela.
L'erreur que je reçois est
erreur A2022: opérandes d'instruction doivent être les mêmes SIZ
que je comprends à dire que les formats que je suis en train de convertir entre sont différents.
Quelqu'un pourrait m'aider à me diriger dans la bonne direction?
Voici le code correspondant:
mov esi, OFFSET array
mov ecx, LENGTHOF array
mov total_sum, 0
mov ebp,0
L1:
movsx edx, byte ptr [esi]
add ebp, edx
inc esi
loop L1
mov eax, ebp
call WriteInt
call Crlf
mov [total_sum], ebp
Est-ce tout ce qui doit être fait? J'ai essayé et le problème est resté. –
Ensuite, déclarez la variable en tant que DWORD et supprimez le "byte ptr". –
Y a-t-il un moyen de le garder comme une épée? –