sistema significa que programa pasa operativo instalo entre diferencia cual arquitectura memory operating-system processor computer-architecture

memory - que - 32 vs 64 bits... o, ¿qué significa exactamente ''procesar información''?



que pasa si instalo un programa de 32 bits en 64 bits (6)

Básicamente, significa poder realizar operaciones en números de ese tamaño (agregarlos, por ejemplo). Aunque hay más diferencias entre las arquitecturas de 32 bits y 64 bits que esto.

Tengo problemas para entender la diferencia entre un procesador de 32 bits y un procesador de 64 bits. Sé que un procesador de 32 bits puede acceder a 32 bits a la vez, mientras que un procesador de 64 bits puede acceder a 64 bits a la vez. Pero, ¿qué significa exactamente acceder a un cierto número de bits a la vez?


Es una medida de la potencia de procesamiento. Más bien como un vehículo que puede llevar 4 pasajeros, o 12, para aproximadamente la misma cantidad de energía.

Por ejemplo, 32 bits contienen 4 bytes, o 4 caracteres ordinarios, y 64 bits son 8 bytes y, para idiomas románticos, ocho caracteres. Se pueden manipular a la vez para muchos tipos de operaciones para el ancho de datos arquitectónicos correspondiente.

Otra forma de verlo es la forma en que un entero puede trabajar directamente con una arquitectura. Para cada uno de estos anchos, el rango correspondiente es

8 bits: 0 a 255 / -128 a 127
16 bits: 0 a 65,535 / -32768 a 32767
32 bits: 0 a 4,294,967,295 / -2,147,483,648 a 2,147,483,647
64 bits: de 0 a 18,446,744,073,709,551,615 / -9,223,372,036,854,775,808 a 9,223,372,036,854,775,807



No es una expresión muy precisa, pero entiendo que significa la longitud de las direcciones de memoria. Por ejemplo, 32 bits significa que 4 GiB (2 32 bytes) está disponible para los programas.

(Para mayor información, consulte la arquitectura IBM s390 que es de 31 bits).

Además, no siempre es la cantidad máxima de datos que la CPU puede leer u operar a la vez. Por ejemplo, los procesadores AMD / Intel de 64 bits tienen una serie de cachés en el chip que pueden extraer datos de la memoria principal en grandes porciones. También tienen registros SSE de 128 bits.


Observo que etiquetaste la memoria, así que voy con esa respuesta:

En un procesador de 32 bits, el procesador solo puede usar 32 bits para direccionar la memoria. Esto significa que hay 2 ^ 32 combinaciones únicas, por lo tanto, el procesador solo puede direccionar 2 ^ 32 bytes. (4 GB)

En un procesador de 64 bits, el procesador puede (en teoría) usar 64 bits para direccionar la memoria, o 2 ^ 64 bytes de memoria direccionable. Creo que eso equivale a 16 Exo Bytes, que es una cantidad enorme que está casi al punto de contar la cantidad de moléculas en su máquina. Sin embargo, en la práctica, la mayoría de las CPU de la línea hoy en día solo le permiten abordar 42 bits de memoria física y 48 bits de memoria virtual debido a las restricciones de hardware actuales.


Supongo que la respuesta real es que es complicado. La metáfora es lo único además del estudio dedicado que te dará una idea básica. Wallyk está en el camino correcto.

Algunas cosas conducen un procesador. Una es cuántas operaciones puede realizar por segundo (medido en hercios). Mientras que la arquitectura impide una respuesta simple, un procesador de un solo núcleo de 1Ghz realiza 1,000,000,000 de operaciones por segundo. Aproximadamente. Si bien es posible obtener una respuesta más concreta, no aclararía este caso.

Un procesador también es otra cosa, como un controlador de memoria (en i7), ALU y FPU, y otros circuitos especializados, que es lo que hace que incluso una pregunta difícil de responder.

Para sus propósitos y propósitos, sin embargo, cada procesador tiene registros. Los registros son como un espacio de memoria (más rápido que la memoria) para que un procesador almacene pequeñas cantidades de datos mientras trabaja en él. Estos están respaldados por L1 y L2 (a veces L3) cachés, que también son ridículamente rápidos. Básicamente, 64 bits se refiere al tamaño del espacio reutilizable (y por proxy, el conducto que conecta el registro con el caché, ya que los datos se cargan y se cargan de una vez).

Un espacio más grande para rascar significa que se puede hacer más sin leer información nueva de la memoria caché o memoria. Sin embargo, solo porque se puede hacer no significa que siempre lo hará. Por lo general, un programa tiene que compilarse con soporte de 64 bits para aprovechar la aceleración, e incluso entonces generalmente no verá una diferencia a menos que esté manipulando datos de más de 32 bits que pueda almacenar. Eso es más una pregunta para un programador de sistemas sin embargo.

Un procesador también necesita mantener un registro de lo que está en la memoria (como en, lo que está en uso y lo que no lo está). Lo hace mediante un registro especial. La razón por la que un procesador de 32 bits no puede abordar más de 4 GB de RAM tiene que ver con el tamaño de este registro. Mientras que las extensiones de procesadores como PAE permiten que los sistemas operativos de 32 bits en los procesadores de 32 bits se dirijan a 64 Gigabytes de RAM, la mayoría de los sistemas operativos generalmente no lo admiten.

Los procesadores TL; DR, de 64 bits brindan la posibilidad con la programación correcta de realizar operaciones en grandes porciones de datos a la vez, y abordar más memoria. Aparte de eso, no hay una gran diferencia.

EDITAR: Para que las personas no tengan una idea equivocada, por "operaciones" no me refiero específicamente a las operaciones (suma, multiplicación, etc.). Lo malo es que me estaba enfocando en responder la pregunta en lugar de dar una introducción completa a la arquitectura del microprocesador.