previous | contents | next

the instruction, especially if it is to be calculated only once and will have a fixed value independent of anything that happens while. executing instructions. Console activity can also be described in the interpreter, e.g., the effect of a switch that permits stepping through the program under manual control or interrogating and changing memory.

The normal statement for the simple computer interpreter is just the loop:

which corresponds essentially to the loop expressed as a flowchart in Figure Crtm-4.

Instruction-Set and Instruction Execution Process

The instruction set and the process by which each instruction is executed are usually given together in a single definition; this definition is called Instruction- execution in most ISP descriptions. This Instruction-execution usually includes the definition of the conditions for execution, i.e., the operation code, value, the name of the instruction (usually a comment), the mnemonic alias by which it is known, and the process for the instruction's execution. Thus, an individual instruction typically has the form:

With this format for the instruction, the entire instruction set is simply a list of all the instructions. On any particular execution, as evoked by the Instruction- execution process, typically one and only one operation code correlation will be satisfied, hence one and only one instruction will be executed. Instruction decoding occurs locally and in parallel as each instruction recognizes whether it is to be executed. However, if more than one operation code is satisfied then this implies that parallel activity is initiated. (This is how parallel acting microcodes are described.)

PROBLEMS

1. Write a program for Crtm-1 to compute the sum-of-integers and the Fibonacci numbers. Modify these to be subroutines. Show the numeric values for instructions of the multiply subroutine for Crtm-1 given in Ch. 4. 2. Add the Run-switch, described in the ISP description, to the RTM diagram of Crtm-1.

3. Add a link bit, L', like the PDP-8 has, together with instructions to manipulate it, to Crtm-1.

4. Since subroutines cannot be nested (i.e., call one another), nor can a subroutine find out from where it was called, their use tends to be awkward and limited in Crtm-1. Correct the design to fix this (e.g., allow L to be read into A).

5. Add an instruction to Crtm-1 to be able to load data from T(lights & switches).

6. Give Crtm-1 the capability of inputting and outputting data through T(serial interface) and T(lights & switches) under console control.

7. Add instructions to Crtm-1 to improve the performance of BCD-Binary conversion.

8. The PDP-8 design has a capability, called program interrupt, which allows an external event Boolean signal to request that a program beginning in memory location 1 be run. Modify Crtm-1 to include this capability.

307

previous | contents | next