我想這一塊C代碼轉換爲64位NASM堆棧在NASM彙編
int gcd (int a, int b)
{
int c;
while (a != 0) {
c = a;
a = b%a;
b = c;
}
return b;
}
,但我不知道在那裏我的錯誤是,我想也許有一些關於棧組件我「M沒有意識到這 是我做的
調用
push word[max]
push word[min]
call gcf
pop word[num1_ones]
堆棧功能
gcf:
mov ebp, esp
while:
cmp word[ebp+4], 0
je return
mov dx, 0
mov ax, word[ebp+6]
mov bx, word[ebp+4]
div bx
mov word[ebp+4], dx
mov word[ebp+6], bx
jmp while
return:
ret 2
當我運行它,我得到這個:
那麼當你運行它會發生什麼?它看起來應該組裝。但是你沒有描述問題是什麼,所以這不是[mcve]。 –