The theoretical memory limits in 16, 32 and 64 bit machines are as follows:
16 bit = 65, 536 bytes (64 Kilobytes)
32 bit = 4, 294, 967, 295 bytes (4 Gigabytes)
64 bit = 18, 446, 744, 073, 709, 551, 616 (16 Exabytes)
I remember from DOS / Windows 3.11 days, that 16 bit memory could be separated into segments, so that a 16 bit machine could access a greater amount of memory than 64 Kilobytes.
I have a machine with 16GB of memory, and am dual booting a 32bit operating system and a 64bit operating system. I can access all 16GB from 64bit, but only 3.21GB in 32bit.
So, my question is, if 16bit operating systems allowed greater that 64KB memory access due to memory segmenting, why do 32bit machines not follow the same pricipal?