这段汇编指指令是什么意思?

2025-03-10 12:02:28
推荐回答(2个)
回答1:

div是除法指令,使用div做除法的时候应注意以下问题:
1、除数:有8位和16位两种,在一个寄存器或者内存中。
2、被除数:默认放在AX或(DX和AX)中,如果除数为8位,被除数为16位,被除数默认在AX中存放,如果除数为16位,被除数为32位,被 除数则在(DX和AX)中存放,DX存放高16位,AX存放低16位。
3、结果:如果除数是8位,则AL存储除法操作的商,AH存储除法操作的余数;如果除数是16位,则AX存储除法操作的商,DX存储除法操作的余数。

回答2:

div dword ptr [ecx+14]
这种情况是(EDX:EAX)/(dword ptr [ecx+14]),(EDX)<-余,(EAX)<-商

代码片段的大致意思是:
(a+b)/c
其中
a=(dword ptr [eax])b=(dword ptr [eax+4])
c=(dword ptr [ecx+8])

具体功能应参照上下文!