Diferencia entre instrucciones de 2 direcciones e instrucciones de 1 dirección

Requisito previo: formatos de instrucción
1. Instrucciones de dos direcciones:
la instrucción de dos direcciones es un formato de instrucción de máquina. Tiene un código de operación y dos campos de dirección. Un campo de dirección es común y se puede usar para el destino o el origen y otro campo de dirección para el origen.

Ejemplo:

X = (A + B) x (C + D) 

Solución:

MOV R1, A      R1 <- M[A]
ADD R1, B      R1 <- R1 + M[B]
MOV R2, C      R2 <- M[C]
ADD R2, D      R2 <- R2 + D
MUL R1, R2     R1 <- R1 x R2
MOV X, R1      M[X] <- R1 

2. Instrucciones de
una dirección: la instrucción de una dirección también es un formato de instrucción de máquina. Tiene sólo dos campos. Uno para el código de operación y otro para el operando.

Ejemplo:

X = (A + B) x (C + D) 

Solución:

LOAD A      AC <- M[A]
ADD B       AC <- AC + M[B]
STORE T     M[T] <- AC
LOAD C      AC <- M[C]
ADD D       AC <- AC + M[D]
MUL T       AC <- AC x M[T]
STORE X     M[X] <- AC  

Diferencia entre la instrucción de dos direcciones y la instrucción de una dirección:

INSTRUCCIÓN DE DOS DIRECCIONES INSTRUCCIÓN DE UNA DIRECCIÓN
Tiene tres campos. Tiene sólo dos campos.
Tiene un campo para el código de operación y dos campos para la dirección. Tiene un campo para el código de operación y un campo para la dirección.
Tiene una longitud de instrucción larga en comparación con una dirección. Si bien tiene una longitud de instrucción más corta.
Es más lento acceder a la ubicación dentro del procesador que a la memoria. Es más rápido acceder a la ubicación dentro del procesador que a la memoria.
Generalmente necesita dos accesos a la memoria. Generalmente necesita un acceso a la memoria.
Puede haber tres accesos a la memoria necesarios para una instrucción. Se necesita un único acceso a la memoria para una instrucción.
No puede eliminar por completo tres accesos a la memoria. Elimina dos accesos a la memoria por completo.

Publicación traducida automáticamente

Artículo escrito por pp_pankaj y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *