“Conocimiento Programación>C /C + + Programming

¿Por qué registrarse en la instrucción es más rápido?

2016/3/3
Las instrucciones de registro para registrar son más rápidas que la memoria de registro o las instrucciones de registro a memoria principalmente debido a las diferencias fundamentales en las velocidades de acceso entre registros y memoria:

* Proximidad a la CPU: Los registros se encuentran * dentro * de la CPU. Son parte de la arquitectura interna de la CPU, directamente accesible por la ALU (unidad lógica aritmética) y otras unidades de procesamiento. Esto significa que el acceso es increíblemente rápido, generalmente toma solo un ciclo de reloj.

* Jerarquía de memoria: La memoria (RAM) es externa a la CPU. Acceder a la memoria implica un proceso más complejo:

* Traducción de direcciones: La CPU necesita traducir la dirección de memoria en una dirección física.

* Acceso de caché: La CPU primero verifica su caché (cachés L1, L2, L3) para ver si los datos ya están presentes. Si no es así, se requiere un acceso más lento a la memoria principal.

* Acceso a la memoria: Acceder a la memoria principal implica enviar señales a través del bus del sistema a los chips de RAM, esperar a que se recuperen los datos y luego enviarlo de regreso a la CPU. Este proceso es significativamente más lento que acceder a registros.

* Contención del bus: Múltiples dispositivos pueden competir por el acceso al bus del sistema, retrasando aún más el acceso a la memoria.

En resumen:el registro de las operaciones de registro evita todas las complejidades y retrasos asociados con el acceso a la memoria principal. Los datos ya están "disponibles" dentro de la CPU, lo que permite una ejecución mucho más rápida. La diferencia en la velocidad puede ser órdenes de magnitud; Los accesos de memoria pueden tomar decenas o incluso cientos de ciclos de reloj, en comparación con un solo ciclo para las operaciones de registro. Esta es una limitación fundamental de la arquitectura informática.

C /C + + Programming
¿Qué son los identificadores en C?
Cómo cambiar el nombre de un archivo en Visual Studio C
Cómo hacer una calculadora Geometría en C + +
Cómo utilizar Visual Studio para C + +
Cómo crear un C + + en Visual Studio 6.0
Cómo agregar un encabezado de DataGrid
Cómo mostrar el contenido de una lista de matrices en un cuadro de texto en C #
Cómo utilizar el interruptor de la caja en C #
Conocimiento de la computadora © http://www.ordenador.online