NASM eax,ebx,ecx,edx Divde

时间:2015-04-30 01:48:08

标签: assembly nasm division multiplication addition

我在32位Ubuntu上使用NASM,我很难将两个寄存器分开。

继承我的表达方式,显示在C:

int A, B, C, D, E, F, Z ;

A = 10;
B = 12 ;
C = A + B ;
D = 3 ;
E = 6 ; 
F = C – D ;

Z = ((A + B * C) / (D – E * F)) + 1 ;

我的代码如下所示:

mov eax, dword [B]
mov ebx, dword[C]
mul ebx ; result should be B * C?
add eax, dword [A]
mov eax

结果等于274,但应如何保留此值以便使用PEMDAS并分别求解方程的另一半然后除以?我的eax寄存器持有274(我认为)一直被覆盖。

有任何帮助,谢谢?

0 个答案:

没有答案