Problema: dibuje el diagrama de tiempo de la instrucción dada en 8085,
INR M
El contenido presente en la ubicación de registro/memoria designada (M) se incrementa en 1 y el resultado se almacena en el mismo lugar. Si el operando es una ubicación de memoria, se especifica mediante el contenido del par HL.
Ejemplo:
INR M Opcode: INR Operand: M
M es la ubicación de la memoria (digamos 5000H) y suponga que los datos presentes en M (o 5000H) son 26H, que deben incrementarse en 1. Código hexadecimal: 34H
Algoritmo –
La instrucción INR M es de 1 byte; por lo tanto, la instrucción completa se almacenará en una sola dirección de memoria.
Por ejemplo:
2000: INR M
La obtención del código de operación será la misma que para otras instrucciones en los primeros 4 estados T.
Solo es necesario agregar la lectura de memoria y la escritura de memoria en los estados T sucesivos.
Para el código de operación, obtenga el IO/M (activo bajo) = 0, S1 = 1 y S0 = 1.
Para la memoria, lea el IO/M (activo bajo) = 0, S1 = 1 y S0 = 0. Además, solo 3 Se requerirán estados T.
Para la memoria escriba el IO/M (activo bajo) = 0, S1 = 0 y S0 = 1 y se requerirán 3 estados T.
El diagrama de tiempo de la instrucción INR M se muestra a continuación:
En búsqueda de código de operación (estados t1-t4 T) –
- 00: bit inferior de la dirección donde se almacena el código de operación, es decir, 00
- 20: bit más alto de la dirección donde se almacena el código de operación, es decir, 20.
- ALE: proporciona señal para dirección multiplexada y bus de datos. Solo en t1 se usó como bus de direcciones para obtener el bit más bajo de dirección; de lo contrario, se usará como bus de datos.
- RD (activo bajo): la señal es 1 en t1 y t4 ya que el microprocesador no lee ningún dato. La señal es 0 en t2 y t3 porque aquí los datos son leídos por un microprocesador.
- WR (activo bajo): la señal es 1 en todo momento, el microprocesador no escribe ningún dato.
- IO/M (activo bajo): la señal es 0 en todo momento porque la operación se está realizando en la memoria.
- S0 y S1: ambos son 1 en caso de obtención de código de operación.
Lectura en memoria (t5-t7 estados T) –
- 00: bit inferior de la dirección donde se almacena el código de operación, es decir, 00
- 50: bit más alto de la dirección donde se almacena el código de operación, es decir, 50.
- ALE: proporciona señal para dirección multiplexada y bus de datos. Solo en t5 se usó como bus de direcciones para obtener el bit más bajo de dirección; de lo contrario, se usará como bus de datos.
- RD (activo bajo): la señal es 1 en t5, el microprocesador no lee ningún dato. La señal es 0 en t6 y t7, el microprocesador lee los datos.
- WR (activo bajo): la señal es 1 en todo momento, el microprocesador no escribe ningún dato.
- IO/M (activo bajo): la señal es 0 en todo momento, la operación se realiza en la memoria.
- S0 y S1: S1=1 y S0=0 para la operación de lectura.
En memoria escribir (t8-t10 T estados) –
- 00: bit inferior de la dirección donde se almacena el código de operación, es decir, 00
- 50: bit más alto de la dirección donde se almacena el código de operación, es decir, 50.
- ALE: proporciona señal para dirección multiplexada y bus de datos. Solo en t8 se usó como bus de direcciones para obtener el bit más bajo de dirección; de lo contrario, se usará como bus de datos.
- RD (activo bajo): la señal es 1 en todo momento, el microprocesador no lee ningún dato.
- WR (activo bajo): la señal es 1 en t8, el microprocesador no escribe ningún dato. La señal es 0 en t9 y t10, el microprocesador escribe los datos.
- IO/M (activo bajo): la señal es 0 en todo momento, la operación se realiza en la memoria.
- S0 y S1: S1=0 y S0=1 para la operación de escritura.
Publicación traducida automáticamente
Artículo escrito por SUDIPTADANDAPAT y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA