Por qué la FAT32 sólo puede almacenar un archivo con un tamaño límite de 4GB en windows?

Para poner un poco de contexto a la respuesta de Eric...

Un bit, al ser binario, sólo puede ser una de dos cosas: un 0 o un 1. Como FAT32 es de 32 bits, el valor máximo posible (todos los 1's) para ese campo de 32 bits que mencionó Eric es 2^32, que es 4.294.967.296 bytes, o 4.295... gigabytes (GB). Este número puede no parecer tan familiar o significativo. Esto se debe a que se asume que 1 GB = 1.000 megabytes (MB); después de todo, los prefijos kilo-/mega-/giga- son términos métricos.

Sin embargo, el binario no sigue el sistema métrico y avanza en incrementos de 1.024 en lugar de 1.000. Así que 1 gibibyte (GiB) = 1.024 mebibytes (MiB) = 1.048.576 kibibibytes (KiB) = 1.073.741.824 bytes.

Así que para esta pregunta hay que hacer las cuentas de forma un poco diferente...

4.294.967.296 bytes / 1024 = 4.194.304 kibibytes (KiB)

4.194.304 KiB / 1024 = 4.096 mebibytes (MiB)

4,096 MiB / 1024 = 4 gibibytes (GiB)

Dado que la terminología kibi-/mebi-/gibi- es relativamente nueva (década de 1990), mucha gente utiliza los prefijos kilo-/mega-/giga- como términos generales porque son más familiares.

Consecuentemente, esta es la misma razón por la que los sistemas operativos de 32 bits (por ejemplo, Windows XP) sólo reconocen 4GB de RAM.