Esos numeros se refieren a la cantidad de bits que utiliza el procesador , y en especifico la ALU (Unidad aritmetica lógica) para realizar operaciones matemáticas.
A final de cuentas en un ordenador todo se maneja a partir de bits, 1 y 0, pero no es lo mismo manejar 16 bits al mismo tiempo que manejar 64 bits simultaneamente.
Tratando de simplificar el modelo, imagina que tienes una autopista de 16 carriles por donde van corriendo un monton de coches a una velocidad constante, y ahora imagina y que en esa autopista pones un pago de peaje y que todos los coches que llegan a ese putno tienen que detenerse un momento para pagar y continuar adelante, si van muchos coches llegara un momento en que el paso por el peaje no sea rapido, sino que tendran que esperar en una fila para que sean atendidos. ¿ que pasa si de repente abres 16 carriles mas para que puedan pagar el peaje?, pasan 2 cosas, que tus coches pasaran mas rapido y que tendras mas capacidad de atenderlos, asi que de entrada esto se traduce en VELOCIDAD en el flujo de datos.
¿ Esto quiere decir que se duplica la velocidad ?, NO, si aumenta la velocidad, pero no se duplica, aumenta proporcionalmente de acuerdo a la base. Para hacer esto mas claro, esto significa que las operaciones que antes se hacian en base a un 16, ahora se hacen en base a un 32.
Por ejemplo: En clipper y five Win de 16 bits, el tamaño máximo de un fichero de texto, de un campo memo o de una variable tipo caracter es de 64 kbytes, es decir, que no puedes leer o escribir mas de 65536 bytes de largo.
Esta operación proviene de elevar 2 ^ 16 potencia = 65536
¿ Esto quiere decir que a 32 bits el tamaño máximo de capacidad de un campo memo, texto o variable caracter será del doble, es decir de 131072 bytes ?, NO, la operacion es en base a 16, veamos ahora que pasa en base 32:
2 ^ 32 = 4294967296
Esto quiere decir, que el tamaño maximo de un texto, cadena de caracteres o campo memo puede ser de hasta 4 Gigabytes de tamaño a 32 bits.
Veamos otro ejemplo:
En Clipper te decian que podías tener hasta 256 "areas" de trabajo abiertas, pero todos sabemos que eso no era cierto, que la cantidad de "areas" dependia de la cantidad de memoria que tuviera disponible el equipo y de lo que tuvieran las varialbes de enotrno FILES Y BUFFERS. Lo importante no es la memoria sino de donde viene el 256.
16 ^ 2 = 256
Para saber cuantos archivos DBFs puedes tener abiertos al mismo tiempo con (x)Harbour aplicamos esto:
32 ^ 2 = 1024
Solo que a 32 bits este numero SI es real, porque una aplicación de 32 bits en xHarbour es una aplicación Windows, y siendo Windows quien maneja la memoria, entoces si puedes tener 1024 ficheros DBF abiertos AL MISMO TIEMPO (lo he comprobado personalmente)
Ahora, si llevamos este ejemplo a base 64, los resultados son aun mas alucinantes., por ejemplo puedes tener 4096 ficheros DBF abiertos al mimo tiempo y tus campos memo podrian ser de hasta 18446744073709551616 bytes de tamaño.
¿ Afecta en algo que ejecute una aplicación de 16 bits en un entorno de 32 bits ?
Si y mucho, los sistemas operativos de 32 bits no tienen nada que ver con los SO de 32 bits.
Hablando de Windows los windows "true 32" (NT, XP, 2000, 2003 y Vista) no pueden ejecutar programas de 16 bits.... ¿ porque entonces funcionan los programas en Clipepr y en FiveWin 16 bits ?
AAAAAhhhh, porque Windows para mantener la compatibilidad con programas "viejos", ejecuta una cosa llamada WOW (Windows On Windows) que es un EMULADOR de Windows de 16 bits, es decir, que se corre un "mini windows 3.11" dentro de Windows XP para que tu puedas ejecutar tu programa.
Si tu programa tiene llamadas o funciones que hagan referencia funciones DOS, la cosa empeora, porque ademas de ejecutar el WOW, vas a necesitar ejecutar un segundo programa llamado NTDVM (NT Dos Virtual Machine) que es un emulador de MS-DOS corriendo dentro del emulador de Windows, con lo cual tu programa de 16 bits consume un monton de recursos para poder ejecutarse, mas que un programa de 32 bits nativo.
Esto a su vez presente OTRO problema mas, esos "mini windows" y esos emuladores de MSDOS no necesariamente tienen toda la funcionalidad que tenia MSDOS 6.22 por ejemplo, razón por la cual, si haces uso de alguna interrupción "extraña" como por ejemplo de un TSR (Terminate and Stay Resident) es altamente probable que te cargues alguna cosa en la ejecucion del programa.
A 64 bits, con versiones especiales de Windows XP 64 y Vista 64, los programas de 16 bits, simple y llanamente no corren.... no hay emulador de WOW ni de NTDVM en esos entornos. ¿ para que ?, con esos volúmenes mastodonticos de información que puedes manejar a 64 bits.... ¿ quien va a querer ejecutar un programa de 16 bits ?.