Department of Computer Science

PDP-11 Processor Handbook

Summary of Addressing Modes


Basic Addressing Modes

Binary
Code
ModeName SymbolicFunction
0000Register Rn Register contains operand.
0102 Autoincrement (Rn)+ Register is used as a pointer to sequential data, then incremented by one for byte and two for word instruction. R6-R7 are always incremented by two.
1004 Autodecrement -(Rn) Register is decremented and then used as a pointer to sequential data. R0-R5 are decremented by one for byte and by two for word instructions. R6-R7 are always decremented by two.
1106 Index X(Rn) Value X is added to Rn to produce address of operand. Neither X nor Rn is modified. X, the index calue is always found in the next memory location and increments the PC.

Indirect Addressing Modes

Binary
Code
ModeName SymbolicFunction
0011 Register
Deferred
@Rn or (Rn) Register contains the address of the operand.
0113 Autoincrement
Deferred
@(Rn)+ Register is first used as a pointer to a word containing the address of the operand, then incremented (always by two, even for byte instructions).
1015 Autodecrement
Deferred
@-(Rn) Register is decremented (always by two, even for byte instructions) and the used as a pointer to a word containing the address of the operand.
1117 Index
Deferred
@X(Rn) Value X (the index is always found in the next memory location and increments the PC by two) and Rn are added and the sum is used as a pointer to a word containing the address of the operand. Neither X nor Rn is modified.

When used with the PC, four of these modes are renamed, as you can see in the table below.

PC Register Addressing Modes

Binary
Code
ModeName SymbolicFunction
0102 Immediate #n Operand is contained in the instruction.
0113 Absolute @#A Absolute address in contained in the instruction.
1106 Relative A Address of A, relative to the instruction, is contained in the instruction.
1117 Relative
Deferred
@A Address of A, relative to the instruction, is contained in the instruction. Address of the oeprand is contained in A.

Don S. Bidulock
Department of Computer Science
University of Calgary
Calgary, Alberta
Canada T2N 1N4
Phone: 403 220-7689 Fax: 403 284-4707
email: dsb@cpsc.ucalgary.ca

University of Calgary