Assembly Language Help (alang.hlp) (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
Memory Model Selection
                                             Up Contents Index Back
────────────────────────────────────────────────────────────────────────────
 
     Your choice of a memory model determines how memory is set up for
     program code and data. The following table shows attributes of the
     different memory models. Select a memory model for more information.
 
 
              Code      Data      Segment  Data and Code
              Distance  Distance  Width    Combined?
             ┌─────────┬─────────┬────────┬─────────────┐
     Tiny    │ NEAR    │ NEAR    │ 16-bit │ Yes         │
             ├─────────┼─────────┼────────┼─────────────┤
     Small   │ NEAR    │ NEAR    │ 16-bit │ No          │
             ├─────────┼─────────┼────────┼─────────────┤
     Compact │ NEAR    │ FAR     │ 16-bit │ No          │
             ├─────────┼─────────┼────────┼─────────────┤
     Medium  │ FAR     │ NEAR    │ 16-bit │ No          │
             ├─────────┼─────────┼────────┼─────────────┤
     Large   │ FAR     │ FAR     │ 16-bit │ No          │
             ├─────────┼─────────┼────────┼─────────────┤
     Huge    │ FAR     │ FAR     │ 16-bit │ No          │
             ├─────────┼─────────┼────────┼─────────────┤
     Flat    │ NEAR    │ NEAR    │ 32-bit │ Yes         │
             └─────────┴─────────┴────────┴─────────────┘
     The OPTION SEGMENT and SEGMENT directives can override the default
     segment width.
 
     See also: .MODEL, .386/.486 Differences, /AT Command-Line Option,
                Simplified Segment Control, Complete Segment Control,
                OPTION SEGMENT:
                                    -♦-