Dzień dobry!
Mam parę pytań odnośnie koprocesora FPU w NASM.
Jak dobrze rozumiem st0
, st1
, to rejestry koprocesora FPU?
Czym się różnią od st(0)
, st(1)
,?
Czy te rejestry st0
, st1
... domyślnie wskazują na poszczególne wartości na stosie FPU?
0
1
Niczym się nie różnią. Jeden asembler może używać składni st(0)
, inny st0
na oznaczenie tego samego rejestru.
0
Czyli na stos mogę wrzucić nieskończenie wiele wartości, ale rejestry od st0 do st7 wskazują na pierwsze 8 wartości?
1
Stos FPU (rejestry od st0 do st7) to zupełnie inny stos niż ten obsługiwany instrukcjami push i pop.
Ten pierwszy to po prostu 8 rejestrów zmiennoprzecinkowych procesora.
Ten drugi znajduje się w zwykłym RAMie.
Stos FPU składa się tylko z tych 8 rejestrów.
Stos programu jest duży (liczony w kilobajtach lub megabajtach) ale nie nieskończenie wielki.