[C con Clase] Aplicación 32 bit en plataforma 64 bit

Steven Richard Davidson stevenrichard.davidson en gmail.com
Jue Ago 30 23:44:07 CEST 2007


Hola Fran,

On 8/30/07, Fran Kener <jfkener en hotmail.com> wrote:
>
> Hola a todos y gracias de antemano.
>
> Supongamos que en mi plataforma de 32 bit compilo un programa y me enseña el
> resultado de sizeof(int)*8, me mostrará 32.
> Pero, ¿Qué me saldrá si el mismo programa compilado en la plataforma de 32
> bit lo ejecuto en una de 64?
>

Seguirá siendo de 32 bits. El sistema operativo de 64 bits es quien
toma decisiones en cuanto a nuestro programa. Si tal S.O. es capaz de
entender programas de 32 bits, entonces no habrá muchos problemas,
ejecutando tal programa como es compilado.

Obviamente, la arquitectura del procesador también influye en la
ejecución correcta del programa de 32 bits. Si tal procesador
implementa instrucciones de 32 bits y de 64 bits, entonces tampoco
habrá ningún problema. Lo más seguro es que los registros y las
instrucciones sean de 64 bits. Por lo tanto, no perdemos información
al guardar y al manipular valores de 32 bits, ya que serán tratados
como 64 bits - agregando ceros al principio.

> Mi duda es si derrocha memoria lo anterior, gracias 8)

Lo más seguro es que no. Sin embargo, ten en cuenta que hay muchas
"piezas" en el rompecabezas de la plataforma tanto a nivel de
hardware: procesador, direcciones de memoria, buses, etc. como de
software: sistema operativo, en general.


Espero haber aclarado la inquietud.

Steven




Más información sobre la lista de distribución Cconclase