REAL ADDRESS MODE

Since the CS register contains FOOO (thus specifying a code segment starting at physical address FOOOO) and the instruction pointer contains FFFO, the processor will execute its first instruction at physical address FFFFOH. The uppermost 16 bytes of physical memory are therefore reserved for initial startup logic. Ordinarily, this location contains an intersegment direct JMP instruction whose target is the actual beginning of a system initialization or restart program.

Some of the steps normally performed by a system initialization routine are as follows:

Allocate a stack.

Load programs and data from secondary storage into memory.

Initialize external devices.

Enable interrupts (i.e., set the IF bit of the FLAGS register). Set any other desired FLAGS bit as well.

Set the appropriate MSW flags if a processor extension is present, or if processor extension functions are to be emulated by software.

Set other registers, as appropriate, to the desired initial values.

Execute. (Ordinarily, this last step is performed as an intersegment JMP to the main system program.)

5-8

Page 108
Image 108
Intel 80287, 80286 manual Real Address Mode