Как в данном коде работает команда CDQ?
Дана ассемблерная вставка на C++. Не могу разобраться, как (именно в данном случае) работает команда cdq: какие регистры изменяет, что и куда записывает и т. п.
mov eax, a;
mov ebx, b;
add eax, ebx;
mov ebx, c;
imul eax, ebx;
mov ebx, d;
sub eax, ebx;
mov ebx, e;
cdq;
idiv ebx;
mov x, eax;
Источник: Stack Overflow на русском