Podprocedury - instrukcje CALL i RET
"
Podprocedury - 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ę.
Dla zwolenników twardej i niekiedy brutalnej praktyki - niepraktyczny
(jeśli chodzi o użycie)
programik demonstracyjny
procedur i podprocedur.
Powrót do spisu treści
kursu
Copyright by
Grzegorz Złotowicz
Form and Graphics: Michał Stanek
Pytanie komentarz do Autora
Wyszukiwarka
Podobne podstrony:
CALLRETwięcej podobnych podstron