3012
edycji
Linia 154: | Linia 154: | ||
etykieta: | etykieta: | ||
=== Zasięg symboli === | |||
EMAS pozwala na zawężenie zasięgu symbolu przez poprzedzenie go kropką. Tak zdefiniowany symbol dostępny jest w zakresie od poprzedniego do następnego symbolu globalnego. Dzięki temu możliwe jest używanie takich samych nazw etykiet lokalnych w różnych kontekstach. Na przykład: | |||
globalny1: | |||
... | |||
.lokalny: | |||
... | |||
ujs lokalny | |||
globalny2: | |||
.lokalny: | |||
... | |||
ujs lokalny | |||
Skok 'ujs' wykonany zostanie każdorazowo do adresu opisanego symbolem ".lokalny", różnego dla zasięgów "globalny1" i "globalny2". Symbol lokalny nie może być zdefiniowany, jeśli uprzednio nie wystąpił żaden symbol globalny. | |||
Można również odwołać się do lokalnego symbolu spoza jego zasięgu poprzedzając jego nazwę nazwą symbolu globalnego, w kontekście którego został zdefiniowany: | |||
globalny1.lokalny | |||
globalny2.lokalny | |||
Lokalnych symboli można używać również definiując stałe i zmienne: | |||
zmienna: | |||
.equ a 1 | |||
.equ b 2 | |||
i odwoływać się do nich: | |||
lw r1, zmienna.a | |||
lw r2, zmienna.b | |||
=== Dostępność symboli na zewnątrz obiektu === | === Dostępność symboli na zewnątrz obiektu === |