Cómo funcionan juntas la CPU, la RAM y todas las unidades. ¿Cómo controla la programación el funcionamiento de estos?

Este es un proceso bastante complejo. Esta es una versión sobre simplificada.

En primer lugar, el compilador lee el código que escribe (el software que verifica su código antes de ejecutarlo), si detecta que no hay errores, se convierte a formato binario (es decir, 0 o 1), ahora, cualquier instrucción que dé es una serie de 0 y 1.

Supongamos que, en su código, escribe, agrega 5 + 6;
esto se convierte en 000010 000101 0000110 00011 00001
(es decir, una serie de 0 y 1),

ahora el microprocesador lee todos estos datos binarios,
Ha notado que las personas dicen que tienen una PC de 32 bits, una PC de 64 bits, esta descripción de la longitud de la instrucción que se forma, mientras compila,

Los primeros 6-10 bits están reservados para el código de operación,

por ejemplo, 000010 significa que se debe realizar una adición y 000011 significa realizar una resta,
el siguiente bit se comporta de acuerdo con el código de operación, y así es como funcionan las computadoras

Puede visualizar la RAM como un simple cuaderno. En cada página, la línea comienza desde 0 hasta 40 (suponga 40 líneas / página). Cada línea en un cuaderno puede contener instrucciones. La CPU JOB es leer instrucciones en cada línea, ejecutarlas una tras otra. Por lo general, la CPU ejecuta las instrucciones en la línea una tras otra (como en la Línea 10, luego en la Línea 11 y así sucesivamente, aunque no es cierto en muchos casos). Considera un ejemplo.

En este ejemplo, con cada línea, se proporciona la instrucción correspondiente.

Línea 0: R1 = 1
Línea 1: R1 = R1 + 1
Línea 2: si (R1 <3) pasa a la Línea 1
Línea 3: R2 = R1
La CPU lee una línea a la vez y ejecuta la instrucción. La siguiente es la secuencia:

  1. La CPU obtiene instrucciones en la línea 0 y la ejecuta. Como resultado, R1 se convierte en 1
  2. La CPU obtiene la siguiente instrucción en la línea 1 y la ejecuta. , La CPU aumentará el valor de R1, en 1, por lo que R1 = 2
  3. La CPU obtiene la siguiente instrucción en la línea 2 y la ejecuta. : La CPU comparará R1 con 3., R1 es 2 y es menor que 3. En tal caso, esta instrucción le dice a la CPU que busque la siguiente instrucción de la “Línea 1”
  4. La siguiente CPU obtiene instrucciones en la línea 1 y se ejecuta. La CPU aumentará el valor de R1 en 1. Actualmente el valor R1 vslue es 2. Se convertirá en 3.
  5. La CPU obtiene instrucciones en la línea 2. La CPU comparará R1 con 3., R1 es 3 y NO ES MENOS que 3. Por lo tanto, la próxima instrucción que se obtenga NO SERÁ de la línea 1 sino de la línea 3.
  6. La CPU obtiene las instrucciones en la línea 3:

Este conjunto de instrucciones no realiza nada significativo, pero todos los programas no son más que un “conjunto de instrucciones” para la CPU.

Espero que esto ayude