A 16 bit application is software for MS-DOS or Microsoft Windows which originally ran on the 16-bit Intel 8088 and Intel 80286 microprocessors. These used a segmented address space to extend the range of addresses from what is possible with just a 16-bit address. Programs with more than 64 kilobytes of code or data therefore had to waste time switching between segments. Furthermore, programming with segments is more difficult than programming in a flat address space. Segmented address space is the cause of the memory models in the C programming language and C++ that many programmers feel are inelegant.
This article (or an earlier version of it) contains material from FOLDOC, used with permission. Update as needed.