ATing system> IBM PC software thAT runs in a 32-bit flAT address space. The term 32-bit applicATion came about because MS-DOS and Microsoft Windows were originally written for the {Intel 8088} and {80286} {microprocessors}. These are {16 bit} microprocessors with a segmented address space. Programs with more than 64 kilobytes of code and/or dATa therefore had to switch between segments quite frequently. As this operATion is quite time consuming in comparison to other machine operATions, the applicATion' s performance may suffer. Furthermore, programming with segments is more involved than programming in a flAT address space, giving rise to some complicATions in programming languages like "memory models" in C and C++. The shift from 16-bit software to 32-bit software on IBM PCclones became possible with the introduction of the {Intel 80386} microprocessor. This microprocessor and its successors support a segmented address space with 16-bit and 32 bit segments (more precisely: segments with 16- or 32-bit address offset) or a linear 32-bit address space. For compATibility reasons, however, much of the software is nevertheless written in 16-bit models. OperATing systems like Microsoft Windows or OS/2 provide the possibility to run 16-bit (segmented) programs as well as 32-bit programs. The former possibility exists for {backward compATibility} and the lATter is usually meant to be used for new software development. See also Win32s. (1995-12-11)