??0001
178 6. Makro język asemblera MA SM
DEC ZMIENNA INC SI
Operator &
Operator & służy do połączenia stałego ciągu znaków występującego w makroinstrukcji z parametrem dołączonym z listy parametrów formalnych (a przy wywołaniu z listy parametrów aktualnych).
Definicja makroinstrukcji
OBLICZREJ MACRO R
REJESTR &R: PUSH AX
MOV AX, R
CALL... fn~
POP AX
ENDM
Wywołanie makroinstrukcji postaci OBLICZ REJ SI
spowoduje wygenerowanie następującego rozwinięcia
REJESTR SI: PUSH AX
MOV AX,SI
CALL... M
POP AX ♦
Operator ;;
Komentarz wewnątrz bloku makroinstrukcji, poprzedzony podwójnym znakiem średnika, nie jest umieszczany w rozwinięciu makroinstrukcji. Znaczenie średnika i podwójnego średnika w bloku makroinstrukcji zilustrowano poniżej
w rozwinięciu makroinstrukcji | ||
zastosowana dyrektywa |
komentarz występuje (nie występuje) | |
sterowania listingiem |
po; |
po;; . o |
XALL (lub standard) |
tak, ale tylko wtedy, |
nie |
kiedy jest generowany | ||
kod wynikowy | ||
w wierszu instrukcji | ||
.LALL |
tak |
nie |
.SALL |
nie |
nie |
BYLECO MACRO | |
; komentarz | |
DEC AX |
; komentarz |
;; komentarz | |
DEC AX |
;; komentarz |
.LALL | |
; komentarz | |
DEC BX |
; komentarz |
;; komentarz | |
DEC BX |
;; komentarz |
.SALL | |
; komentarz | |
DEC CX |
; komentarz |
;; komentarz | |
DEC CX |
;; komentarz |
Rozwinięcie powyższej makroinstrukcji jest następujące | |
DEC AX |
; komentarz |
DEC AX | |
. LALL | |
; komentarz | |
DEC BX |
; komentarz |
DEC BX | |
.SALL |
Operator!
Znaki występujące po wykrzykniku są przyjmowane jako ciąg znaków, tzn. zapisy: !abcd i < abcd > odpowiadają sobie.
Operator %
Operator % może wystąpić jedynie w definicji makroinstrukcji, bezpośrednio poprzedzając parametr (argument) aktualny (tzn. wywołania). W takim przypadku za ciąg znaków określających parametr zostaje podstawiona jego chwilowa wartość numeryczna.
Przykład
Definicja makroinstrukcji generujÄ…cej bajty danych
; wersja z %
BAJT
6.3. Dyrektywy i operatory dodatkowe
MACRO A