¿Qué registro contiene los resultados aritméticos y lógicos finales?

1

Esta página de Wikipedia dice

  

un acumulador es un registro en el que intermedio es aritmético y   los resultados lógicos se almacenan.

Entonces, ¿qué registro contiene el resultado final ?

    

2 respuestas

1

Esa cita que usted pone se refiere a la perspectiva de un cálculo complejo que usa varias variables y constantes. El resultado final terminará donde la especificación (por ejemplo, una declaración de lenguaje de alto nivel) especifica que debería. Tomemos por ejemplo

A = ( 3 * B ) + C

Está claro que el resultado final debe terminar en A, porque la declaración lo dice. Pero la mayoría de las CPU no pueden hacer este cálculo sin primero calcular (3 * B). Entonces, ¿dónde debería terminar ese valor? Eso depende del tipo de arquitectura de la CPU. En una arquitectura de acumuladores, la declaración se traduciría a algo como

LOAD B   ; accu == B
MULT 3   ; accu == ( B * 3 )
ADD C    ; accu == ( B * 3 ) + C
STORE A  ; A := accu

El acumulador (que no se menciona explícitamente en las instrucciones, porque en una arquitectura de acumuladores es la única opción) se usa para mantener el resultado intermedio (y final!) del cálculo.

En estos días, las arquitecturas de los acumuladores no están de moda porque la diferencia de velocidad entre la CPU y la RAM las haría muy lentas. Las arquitecturas dominantes ahora son registro-registro, donde el destino de cada cálculo se puede elegir de un conjunto de registros. Por lo general, estas también son arquitecturas de almacenamiento de carga, donde una operación puede acceder a los datos de la RAM o hacer un cálculo, pero no ambos. Para tal arquitectura, la declaración podría traducirse a

LOAD R0, [ B ]
LOAD R1, 3
MULT R0, R0, R1
LOAD R1, [ C ]
ADD R0, R0, R1
STORE [ A ], R0
    
respondido por el Wouter van Ooijen
0

Un acumulador es simplemente una combinación de funciones lógicas como un sumador con un registro que almacena un resultado. (esto es lo que el wiki define como el registro intermedio) En la mayoría de las lógicas digitales, el valor del acumulador se almacena más tarde en un registro de la CPU o si su lógica personalizada el valor se usa más tarde.

Debido a que la lógica digital, como los agregadores, contiene

Aquí hay un ejemplo de una tubería moderna de CPU.

    
respondido por el laptop2d

Lea otras preguntas en las etiquetas