Witam program oblicza funkcje y = ax3 + bx2 + cx + d, niestety nie do końca go rozumiem.
-
Nie jestem pewien od której strony zaczynać definiowanie takiej funkcji. W tym wypadku udało się to zrobić od prawej.
-
faddp st(3),st ;
sciaga z wierzcholka stosu parametr i dodaje do st(3) st(0) i sytuacja na stosie wygląda tak : xx,x,axxx+d , natomiastfaddp st(2),st; //x,axxx+b*xx+d
Nie rozumiem, dlaczego po powyższej instrukcji sytutacja na stosie nie wygląda tak: axxx+d + b*xx -
Czy zna ktoś stronkę, gdzię są rozwiązane podobne zadania, a do tego opisane ?
__asm {
fld d; //d
fldx; //x,d
fld st; //x,x,d
fmul st,st(1); // xx,x,d
fld st(1); // x,xx,x,d
fmul st,st(1); // xxx,xx,x,d
fmul a; // axxx, xx, x, d
faddp st(3),st; // xx,x,axxx+d
fmul b; // b^xx, x, axxx+d
faddp st(2),st; //x,axxx+b*xx+d
fmul c; // c*x,axxx+b*xx+d
fadd ; // axxx+b*xx+c*x+d
fstp y;
}