Quadrants in PA-RISC Addressing
When the
Space Id field of
a PA-RISC machine instruction
is 0, the target
Space Register is selected by adding 4 to the upper two bits of
the value in
the Base Register. Two bits allows four possible values: 0 selects
SR4, 1 = SR5, 2 = SR6, and 3 = SR7.
However, to keep the hardware simple, the entire 32-bit value in the Base
Register is the byte offset within that space, not just the 30 bits after
the space selector.
This is called a short pointer
address since only
32 bits are used
to select both the space and offset within the space.
Because the upper two bits that select the Space Register are included
as part of the address, you can only address a quarter of the potential
addresses in a space using a short pointer.
For example, if a Base Register contains the hex value $40020000, Space
Register 5 is used for the Space Id and the second Quadrant of the
space is directly addressable.