Retro video games delivered to your door every month!
Click above to get retro games delivered to your door ever month!
X-Hacker.org- Peter Norton Programmer's Guide - Norton Guide http://www.X-Hacker.org [<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]

  Each byte is referred to by a 20-bit numeric address. In the 8086 memory
  scheme, the addresses are 20 bits "wide" because they must travel along
  the 20-bit address bus. This gives the 8086 an address space with
  address values that range from 00000H through FFFFFH (0 through
  1,048,576 in decimal notation). If you have trouble understanding hex
  notation, you might want to take a quick look at Appendix B.

  Similarly, the 80286's 24-bit addressing scheme lets it use extended
  address values in the range 000000H through FFFFFFH, or 16 MB. The 80386
  can use extended 32-bit addresses, so its maximum address value is
  FFFFFFFFH; that is, the 80386 can directly address up to 4,294,967,296
  bytes, or four gigabytes (GB), of memory. This is enough memory for most
  practical purposes, even for the most prolific programmer.

  Although the 80286 and 80386 can address more than 1 MB of memory, any
  program compatible with the 8086 and with DOS must limit itself to
  addresses that lie in the 1 MB range available to the 8086. When the IBM
  PC first appeared in 1981, 1 MB seemed like a lot of memory, but large
  business-applications programs, memory-resident utility programs, and
  system software required for communications and networking can easily
  fill up the entire 8086 address space.

  One way to work around the 1 MB limit is with the LIM
  (Lotus-Intel-Microsoft) Expanded Memory Specification (EMS). The EMS is
  based on special hardware and software that map additional RAM into the
  8086 address space in 16 KB blocks. The EMS hardware can map a number of
  different 16 KB blocks into the same 16 KB range of 8086 addresses.
  Although the blocks must be accessed separately, the EMS lets up to 2048
  different 16 KB blocks map to the same range of 8086 addresses. That's
  up to 32 MB of expanded memory.

  ------------------------------------------------------------------------
  NOTE:
    Don't confuse EMS "expanded" memory with the "extended" memory located
    above the first megabyte of 80286 or 80386 memory. Although many
    memory expansion adapters can be configured to serve as either
    expanded or extended memory (or both), these two memory configurations
    are very different from both a hardware and software point of view.
  ------------------------------------------------------------------------

Online resources provided by: http://www.X-Hacker.org --- NG 2 HTML conversion by Dave Pearson