| .COM Format Executable |
.EXE Format Executable |
| one single 64KByte segment |
many segments |
| Program Segment Prefix is first 0100h bytes |
PSP has its own segment, separate from code |
| CS, DS, ES, SS all point to same single segment |
CS points to code segment
DS, ES point to separate PSP segment
SS points to stack segment |
| IP always set to start at 0100h |
IP typically starts at zero; but, can start anywhere |
| stack segment is fixed size (part of code segment) |
separate stack segment is programmer-defined size |
| SP starts at FFFEh (high memory of segment) |
SP starts at high memory of separate stack segment |
| must run in Real memory (first megabyte) |
can run anywhere (including above 1MB) |
| disk file is exact copy of code memory image |
disk file has many segments; needs to be loaded |