您好我正在尝试计算简单的数学函数(2c-a)/(c + ax)。但出于某种原因,我所有的答案都是0。 给定:a - b,b - w,c - w,x - w,y - b
MOV ax, 2
MUL c ; dx:ax=2c
JC kl1 ; sandauga netilpo i ax
XCHG ax, dx
MOV al, a
XOR ah, ah
ADD dx, ax ; c^2-a
JC kl1
MOV al, a
MUL x[si] ; a*x
JC kl1 ; sandauga netilpo i ax
ADD bx, ax ; ax+c
JC kl1
CMP al, 0
JE kl2 ; dalyba is 0
MOV ax, dx
XOR dx, dx
DIV bx ; ax=rez
re:
感谢任何想法。
答案 0 :(得分:0)
按照此示例进行操作,以便在出现错误时出现短问题 表达式=(2 * c-a)/(c + a * x)
mov ax,c;用变量c
加载axshl ax,1;多重播放c * 2
sub ax,a; 2c - a
mov parte1,ax;存储结果
mov ax,a;用变量a
加载axmov bx,x;用变量x
加载bxmul bx; ax = a per x
添加ax,c; C +斧
mov parte2,ax;存储结果
推斧;保留最后一个calcolus表达式的第二个操作数mov ax,parte1;使用作为第一个操作数的变量parte1加载ax 表达
pop bx;使用变量parte2加载bx,这是表达式的第二个操作数
div bx; risultato = parte1 / parte2 = ax:dx
ax = int part dx =休息
我希望能帮助你。