Red de conocimiento informático - Conocimiento sistemático - Lenguaje ensamblador: ¿Cuál es la diferencia entre PTR y LABEL? ¡Por favor explique en detalle!

Lenguaje ensamblador: ¿Cuál es la diferencia entre PTR y LABEL? ¡Por favor explique en detalle!

mov ax, bx es transferir el valor del registro BX a AX, porque ambos son tipos de palabras. Dado que ambas son palabras, no es necesario agregar "WORD"

mov ax, word ptr [bx] es para entregar los datos almacenados en la dirección de memoria igual al "valor de registro BX" ax; . ¿Porque sólo se da la dirección de la memoria? No sé qué regalar hacha. No sé si son bytes o palabras, entonces necesito especificar si son palabras. ¿ptr muestra una afirmación o una declaración? ¿así que lo que? ¿Cuándo el ancho de los dos operandos es diferente? ¿Es necesario utilizarlo? El ancho aquí está en bits, ¿simplemente 16 bits u 8 bits? ¿Los registros dentro de la computadora son de 16 bits? ¿Son 16 bits, mientras que el direccionamiento de la unidad de memoria es de 8 bits? Entonces no tienen el mismo ancho, entonces cuando uso dw y dt, db, etc., ¿necesito declarar explícitamente ptr? ¿Necesitas que muestre una declaración? ¿Cuánto tiempo son procesados ​​los datos por la instrucción? ¿Cuánto tiempo deben procesar los datos mediante la instrucción de la CPU 8086? La CPU 8086 puede manejar datos en tamaños de bytes y palabras, por lo que es importante especificar en las instrucciones de la máquina si la instrucción realiza operaciones de palabras u operaciones de bytes. Este problema se maneja en lenguaje ensamblador de la siguiente manera.

LABEL permite que una misma variable tenga atributos de diferente tipo. El formato es:

Nombre de variable tipo LABEL

o etiqueta tipo LABEL

El tipo de datos de la variable puede ser BYTE, WORD o DWORD, y el código El tipo de etiqueta puede ser CERCA o LEJOS.

La "variable" en el formato de pseudoinstrucción de definición de datos y asignación de memoria es el símbolo de la dirección del operando y es opcional

Su función es la misma que la marca antes de la instrucción. declaración. La diferencia es que no hay dos puntos después de la variable. Si hay una variable

en la declaración, el ensamblador asignará la dirección de desplazamiento del primer byte del operando a la variable.