![]() |
An instruction format defines the layout of the bits of an instruction. The instruction can have zero, one or |
| more operands. | |
![]() |
The opcode has the addressing mode. The instruction length is one of the most important issue when design |
| the instruction formats. | |
![]() |
When the instruction length is small, space can be saved. However, the programmer prefers to increase the |
| instruction length to make the programming task easier because of the following reasons: |
![]() |
Increasing the instruction length provides more opcodes and operands which make the written | |
| programs shorter. | ||
![]() |
More available addressing modes provide flexible programs. | |
![]() |
When the operand length increases, large memory space can be addressed. |
![]() |
As the number of bits allocated to the opcode increases, the number of available operations increases but it |
| decreases the number of bits allocated for addressing. | |
![]() |
The following parameters affect the choice of addressing bits number (William Stallings, (2012)): |
![]() |
Number of addressing modes: there must be bits assigned to choose between the possible | |
| addressing modes. |
![]() |
Number of operands: to make the programs shorter, one or two operands must be allowed in one | |
| instruction. | ||
![]() |
Register versus memory: to make the programs shorter, each instruction has to be able to address | |
| more than one register. | ||
![]() |
Address range: to be able to reference to large memory space, a large number of bits has to be used. | |
| Using register and displacement addressing mode can solve this limitation. |
![]() |
PDP-8 has a simple architecture that has a fixed size instruction (12 bits). The word size is 12 bits and it has |
| single accumulator register. The instruction formats has the following characteristics (William Stallings, | |
| (2012)): |
![]() |
The number of bits used to address the memory is 7. | |
![]() |
Memory is divided into pages of size 27 = 128. | |
![]() |
3-bit opcode and three types of instructions. | |
![]() |
For opcodes 0 through 5, the format is a single-address memory reference instruction including a page | |
| bit and an indirect bit. |
![]() |
opcode 7 defines a register reference or microinstruction. | |
![]() |
The remaining bits are used to encode additional operations. For example CLA is used to clear | |
| accumulator. | ||
![]() |
The available addressing modes are indirect addressing, displacement addressing, and indexing. |
![]() |
PDP-11 has variable length instructions. The instruction formats has the following characteristics (William |
| Stallings, (2012)): |
![]() |
13 different formats are used. | |
![]() |
The opcode can vary from 4 to 16 bits in length. | |
![]() |
Register references are 6 bits in length. | |
![]() |
Three bits identify the register. | |
![]() |
The remaining 3 bits identify the addressing mode. |