Red de conocimiento informático - Conocimiento sistemático - ¿Qué símbolos representan datos en lenguaje ensamblador?

¿Qué símbolos representan datos en lenguaje ensamblador?

4.8 Declaración de definición de símbolo

En los programas, a menudo usamos algunas constantes o expresiones numéricas y las escribimos directamente en las instrucciones. Sin embargo, cuando necesitamos modificarlas una por una, esto sin duda aumentará el esfuerzo de mantenimiento. el programa. Con la cantidad de trabajo, es fácil olvidar lo que representa cada constante o expresión.

Para mejorar la legibilidad del programa y reducir la carga de trabajo de su mantenimiento, el lenguaje ensamblador proporciona un método para definir nombres simbólicos para constantes o expresiones. Una vez definido el nombre de un símbolo, se puede utilizar directamente en una directiva.

4.8.1 Declaración equivalente

1, formato general

El formato común de declaración equivalente es el siguiente:

Nombre del símbolo EQU expresión La función de la fórmula

es que el nombre del símbolo de la izquierda representa la expresión de la derecha.

Nota: La declaración equivalente no asignará espacio de almacenamiento para el nombre del símbolo. El nombre del símbolo no puede tener el mismo nombre que otros símbolos ni se puede redefinir.

2. Utilice nombres simbólicos para representar constantes o expresiones.

Cuando una constante o expresión se define como un nombre simbólico con un significado determinado, el nombre simbólico se puede utilizar para representar la constante o expresión en el programa.

Por ejemplo:

Número EQU 100; asigne un nombre simbólico a la longitud del búfer.

BUFF_LEN EQU número 2

Recursos de China EQU 13; define un nombre de símbolo para el código ASCII del carácter de retorno de carro.

Si EQU 10; Define un nombre simbólico para el código ASCII del carácter "nueva línea".

¿Número de base de datos del buffer? , No. DUP(?); Utilice nombres simbólicos para definir buffers.

3. Utilice nombres simbólicos para representar cadenas.

Defina una cadena larga con un nombre de símbolo con un significado determinado y utilice el nombre del símbolo en programas posteriores. Por ejemplo:

Saludo EQU "¡Hola!"

Según esta definición, puedes usar el nombre simbólico SALUDO para representar la cadena "¡Cómo estás!".

4. Utilice nombres de símbolos, palabras clave o mnemónicos de instrucciones.

Reemplace las palabras clave o mnemónicos de instrucciones en lenguaje ensamblador con nombres de símbolos a los que los programadores están acostumbrados. Sin embargo, se recomienda no hacer esto aquí porque los escritores del programa están acostumbrados y otros lectores del programa pueden encontrarlo muy incómodo.

Por ejemplo:

Mover EQU·MOV; dale al comando MOV otro nombre en código llamado mover.

Contraataque EQU·CX; le da al registro CX un nombre simbólico "contraataque"

La definición anterior simplemente le da a los mnemotécnicos originales MOV y CX otro alias, pero Los mnemotécnicos originales MOV y CX todavía funciona, por lo que podemos escribir la siguiente declaración:

Move ax, CX; equivalente a la instrucción: MOV AX, CX

BX Contador MOV Equivalente a las instrucciones: MOV CX, BX

5. Utilice nombres simbólicos para definir alias para unidades de almacenamiento.

Puedes definir un nombre simbólico para otro tipo de datos para una unidad de almacenamiento. Consulte al operador anterior ESTE para obtener una descripción.

Por ejemplo:

WORD1 EQU; proporcione a la siguiente unidad de almacenamiento de bytes un nombre simbólico del atributo de palabra.

Byte 1 dB 12h, 21h

Flag DW 1234H

FLAG1 EQU byte ptr flag le da al byte bajo de la bandera un símbolo del nombre del atributo del byte; .

FLAG2 EQU byte ptr FLAG 1; Da al byte de orden superior de FLAG el nombre simbólico de un atributo de byte.

Con la definición anterior, se puede escribir la siguiente declaración:

MOV AX, palabra 1 después de la ejecución, (AX)=2112H.

MOV BL, bandera 1; después de la ejecución, (BL)=34H.