Comment utiliser les div instruction à trouver reste en x86 assemblée?

mov eax, 0
mov ebx, 0
mov edx, 0
mov ax, 31
mul cx
mov bx, 12
div bx
add bp, ax
mov eax, 0
mov ebx, 0
mov bp, bp
mov al, 7
div al

quelqu'un peut me dire quoi de mal avec la div al instruction dans ce bloc de code, donc, comme je suis de débogage chaque nombre de bp j'ai calculé, lorsque je divise par al il me donner 1 comme le reste, pourquoi est-ce arrivé?

le reste devrait être de magasin en arrière de registre ah

merci d'avance

édité code :

mov eax, 0
mov ebx, 0
mov edx, 0
mov ax, 31
mul cx
mov bx, 12
div bx
add bp, ax
mov eax, 0
mov ebx, 0
mov ax, bp
mov bl, 7
div bl
mov al, 0
mov reg, 0 serait mieux rédigé comme xor reg, reg
Comment, sans exiger div: stackoverflow.com/questions/8021772/... GCC 4.8 ne pas utiliser les div par défaut parce qu'il est lent: stackoverflow.com/questions/4361979/...

OriginalL'auteur bluebk | 2013-05-06