Buenas!
Digamos que la cosa es esta:
mov eax, auxd (auxd viene de antes, pero vamos que es un número guardado en SDWORD normal y corriente)
mov ebx,8
div ebx
mov auxd, eax
Pues bien compila y todo, pero a la hora de llegar a la division peta el programa con el tipico error de windows.
Se que es la division pq he probado ir parando la ejecución con getkey, y es justo en la division dnd peta.
Puedo hacer cualquier otra operación ya sea add, sub o mul y no peta.. solo con div.
Tb he probado a usar otros registros u otro valor (necesito dividir por 8, pero bueno he probado otros) y lo mismo.
Del unico modo que no ha petado, es haciendo justo antes xor edx,edx. Pero al hacerlo, tp hace la división bien ya que siempre dice que el resultado es 13, y el valor de auxd suele ser siempre sobre 7000 y la división deberia ser sobre 800 y pico casi 900.
Hasta el momento antes de la divison he comprobado todos los valores, y efectivamente en eax está el valor de auxd y en ebx está el 8, pero despues lo que digo.. si uso el xor edx,edx acaba eax 13 si o si, y si no lo usa pues peta el programa.
Alguna idea?