Maszyna stosowa to maszyna (procesor bądź maszyna wirtualna), w której podstawowe operacje prowadzi się na stosie, nie zaś na rejestrach.
Liczenie pierwiastków równania kwadratowego na przykładowej maszynie stosowej (pomijając sprawdzenie czy w ogóle istnieją pierwiastki rzeczywiste):
Operacja Stos (tylko część używana w algorytmie) push memory(A) push memory(C) push 4 mul mul push memory(B) dup mul sub sqrt dup push memory(B) neg add xchg push memory(B) neg sub push memory(A) push 2 mul xchg div pop memory(X1) push memory(A) push 2 mul xchg div pop memory(X2)
Argument znajdują się w komórkach pamięci A, B i C. Wynik znajduje się w komórkach pamięci X1 i X2.
Porównaj z tym samym algorytmem na maszynie rejestrowej.
Większość maszyn wirtualnych to maszyny stosowe. Maszyną stosową był transputer oraz polski minikomputer Mera 400. Także rejestry koprocesorów arytmetycznych z serii x87 są zorganizowane w stos.
Kategoria:Architektury procesorów Kategoria:Programowanie komputerów