¿Cuál es la diferencia entre ensamblar MOV DPTR, #E000H; MOVX A, @DPTR y MOVX A, #E000H?
Oye
¿Cuál es la diferencia entre MOV DPTR, #E000H; MOVX A, @DPTR y MOVX A, #E000H;
La mayor diferencia es que una es una instrucción legal del microcontrolador 51 y la otra es una instrucción ilegal del microcontrolador 51.
Si desea acceder al chip externo memoria de datos, establezca la dirección de la memoria de datos fuera del chip en El contenido de la unidad E000H se transfiere al acumulador A.
Para acceder a la memoria de datos fuera del chip, debe utilizar el puntero de datos DPTR como registro indirecto para acceder
MOV DPTR, #E000H Primero, envíe la dirección a la que se accederá; el puntero, es decir, determina el valor del puntero de datos. Apunte a (la unidad de E000H)
MOVX A; use la instrucción de transferencia de la memoria de datos fuera del chip para enviar el contenido de la unidad; señalado por el puntero del acumulador A.
Por lo tanto el comando anterior es correcto.
Sin embargo, MOVX A, #E000H no existe en la tabla de instrucciones del microcontrolador 8051.
La instrucción MOVX solo puede utilizar direccionamiento indirecto de registro, como @DPTR, @R0. ; No se pueden utilizar otros métodos de direccionamiento
Por ejemplo: #E000H Direccionamiento inmediato E000H El direccionamiento directo es incorrecto, es decir, ilegal.
Jaja, satisfecho, solo elige la respuesta satisfactoria