¿Son mov ax,100h y mov ax,[100h] iguales en la programación 8086?
No es lo mismo.
El primero es el modo de direccionamiento inmediato
Como MOV AX, 1234H
El operando está directamente en la instrucción.
Los números inmediatos se pueden enviar a registros o memoria
Los números inmediatos solo se pueden usar como operandos de origen
Agregue 0 antes de los operandos que comienzan con A-F. AL, 0AFH
Si se escribe como MOV AL, AFH---AF se utiliza como variable en lugar de un número inmediato
El segundo es el modo de direccionamiento directo
MOV AX, [ 2000]H
La dirección efectiva (desplazamiento) de la unidad de almacenamiento la proporciona directamente la instrucción, pero debe compararse con []
y la dirección inmediata. direccionamiento.
Ejemplo (AX)=0000H (DS)=1000H El contenido en 12000H es 11 y el contenido en 12001H es 22
Direccionamiento inmediato: MOV AX, 2000H Después de la instrucción se completa (AX)=2000 p>
Direccionamiento directo: MOV AX, [2000]H Después de que se completa la instrucción (AX) = 2211
Del análisis de la pregunta, la inicial el contenido de AX es 0000
Del valor inmediato Después del direccionamiento, cuente 2000 y envíelo directamente a AX, por lo que (AX) = 2000
Al direccionar directamente, primero escriba su valor físico dirección = 16*DS+dirección efectiva = 16*1000H+2000H=12000H
Leer 2 unidades a 12000H y 12001H (porque es AX), entonces (AX) = 2211