It is important to distinguish the rules from the conventions when
describing 31-bit addressing. There are only two rules, and they
are associated with hardware:
- The length of address fields is controlled by the A-mode bit (bit
32) in the PSW. When bit 32=1, addresses are treated as 31-bit values.
When bit 32=0, addresses are treated as 24-bit values.
Any data
passed from a 31-bit addressing mode program to a 24-bit addressing
mode program must reside in virtual storage below 16 megabytes. (A
24-bit addressing mode program cannot reference data above 16 megabytes
without changing addressing mode.)
- The A-mode bit affects the way some instructions work.
The conventions, on the other hand, are more extensive. Programs
using system services must follow these conventions.
- A program must return control in the same addressing mode in which
it received control.
- A program expects 24-bit addresses from 24-bit addressing mode
programs and 31-bit addresses from 31-bit addressing mode programs.
- A program should validate the high-order byte of any address passed
by a 24-bit addressing mode program before using it as an address
in 31-bit addressing mode.