| La sostituzione dei numeri con etichette rende
più chiara la lettura del sorgente: per esempio scrivere CR
invece di 0DH rende sicuramente più
chiaro il significato di Carriage Return
che desideriamo associare al numero esadecimale. |
| Con questa tecnica si possono "sostituire"
numeri interi (decimali, esadecimali o
altro) o espressioni aritmetiche costanti,
purché di valore inferiore a 65536,
ma anche stringhe di caratteri. |
| Naturalmente le etichette scelte per le
assegnazioni devono essere uniche e non
possono essere ridefinite, più avanti, nel programma. |
| Di solito è conveniente
scrivere la raccolta di queste EQU
subito dopo l'intestazione; è
possibile anche creare degli alias,
cioè simboli che rappresentano altri simboli; negli esempi che seguono gli
alias si riferiscono a simboli costanti:
; COSTANTI DEFINITE PER IL PROGRAMMA:
ESC_ EQU
27 ;al posto del codice del tasto <ESC>
CR EQU
0DH ;carriage return
vaAcapo EQU CR
;carriage return
Enter EQU vaAcapo
;carriage return
LF EQU
0AH ;line feed
dato1 EQU 0DH*0AH ;
dato2 EQU 13*10
;
dato3 EQU CR*LF
;
dato4
EQU 700000 ;
dato5 EQU 0FFFFH*10;
testo EQU 'La vispa Teresa' |
|
| L'assemblatore
sostituisce l'etichetta
di una espressione numerica con il
valore corrispondente solo se esso è compreso tra
0 e 65535 (pari a FFFF in
esadecimale); in caso contrario associa al simbolo il testo
composto da quei caratteri. Possiamo verificare questo fatto osservando la
tabella dei simboli creata da MASM per
le assegnazioni precedenti:
Symbols Name Type Value Attr
ESC_ NUMBER 001B
CR NUMBER 000D
ENTER ALIAS VAACAPO
VAACAPO ALIAS CR
LF NUMBER 000A
DATO1 NUMBER 0082
DATO2 NUMBER 0082
DATO3 NUMBER 0082
DATO4 TEXT 700000
DATO5 NUMBER FFF6
TESTO TEXT 'La vispa Teresa' |
|