IBM PCSOftware 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 alSOWin32s. (1995-12-11)