IA-32 Modes of Operation

IA-32 Address Space

While in Protected Mode, IA-32 processors have the ability to access up to 4 GB of memory. Real Mode provides for accessing 1 MB of memory.

Question: How many bits are necessary to access 4 GB of memory?

Registers

Registers are found in the CPU and are higher speed than conventional memory. Let's examine the registers of the IA-32 processor found on pp. 42-44.

Segment Registers and Real-address Mode

An assembly language program is divided into segments whose base addesses are given the in the four segment registers. There can be many segments but only four can be active at any one time.

Memory addresses are specified by a segment origin and an offset within the segment. The adder of the BIU is used to obtain the actual physical address from the segment origin and the offset.

Question#1: How many bits wide is the segment register, say CS which is the code segment register and contains the base address of the code segment?

Question#2: How many bits wide is the IP (instruction pointer) which points to a memory offset within the code segment?

Question#3: How many bits are necessary to access 1MB of memory?

Question#4: How are the CS:IP register pair used to access 1MB of memory?

Question#5: If the CS-register contains the value FAF0 and the IP-register contains the value 0012, what is the actual physical address represented by the CS:IP register pair?


©Douglas J. Ryan