CodeLan
Administrator
Dołączył: 03 Lis 2006
Posty: 171
Przeczytał: 0 tematów
Pomógł: 3 razy Ostrzeżeń: 0/5 Skąd: Z pod skrzydeł Google.pl
|
Wysłany: Nie 7:34, 17 Cze 2007 Temat postu: Podprocedury czyli instrukcje CALL i RET |
|
|
Jak wskazuje na to temat instrukcje CALL (wołaj) i RET (return - powrót) służą do tworzenia podprocedur:) - części programu, które będą używane częściej niż raz - tak jak procedury np. w pascalu.
Ponieważ wierzę w moc przykładów - znowu nie będę się zbyt długo rozwodził nad tematem... A więc do rzeczy:
Składnia:
CALL ETYKIETA
ret
CALL- zapamiętuje na stosie adres następnej instrukcji programu a następnie przeskakuje do etykiety "etykieta" tak, jak to robiła instrukcja JMP.
Po napotkaniu instrukcji RET procesor pobiera ze stosu adres zapamiętany tam przez CALL i przeskakuje pod ten właśnie adres czyli "wraca" do programu nadrzędnego.
Schemat użycia instrukcji CALL i RET wygląda więc następująco:
Nazwa_procedury: ; etykieta określająca nazwę procedury
;Kod podprocedury
;...
;...
;...
RET ; Powrót do programu nadrzędnego.
Gdzieś w programie natomiast - należy użyć następującego wywołania:
CALL nazwa_procedury
To tak dla wszystkich lubiących schematy i teorię.
Post został pochwalony 0 razy
|
|