Initial Memory Reads

IA32 processors always begin operation in Real Mode. All memory addresses are formed by adding the 20-bit segment base address specified in a 16-bit segment register (“Memory Addressing” on page 71 explains how a 20-bit address is specified in a 16-bit segment register) to the 16-bit offset that is specified in:

  • the 16-bit IP (Instruction Pointer) register when the processor is forming the memory address for a code fetch.

  • the 16-bit SP (Stack Pointer) register when the processor is forming the memory address for a write into or a read from stack memory.

  • the instruction when the processor is forming the memory address for a data access.

Since the offset is a 16-bit value, all segments are restricted to a length of 64KB.

After ...

Get The Unabridged Pentium 4 IA32 Processor Genealogy now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.