Instructions are stored in memory in blocks of six bytes (using 48 bits). Each instruction is executed sequentially advancing up memory, unless an instruction changes the N-register.
The six-step instruction cycle is:
Hermes Computer Instruction Cycle |
To define exactly what happens when Hermes computes an effective address we need to define some terms based on the CPU registers and the field values that come from the instruction stored in memory. Here are some specific notations we will use.
Bit Field Extraction and Sign Extension Functions |
Sign extension takes the top (most significant) bit of the value
and copies it to the left until the value has 32 bits.
Thus
Instructions refer to memory by computing an effective address.
The effective address calculation is done generally by adding the
contents of a register indicated by the xr field in the
instruction and the signed contents of the 24-bit addr field
to produce a 32 bit signed number.
The value of this number is the effective address.
If the xr field of the instruction is zero
then nothing is added to the effective address
for that component of the effective address,
no matter what value is in ir[0].