The Zeus Z1, Zeus Z2, and Zeus Z4 used "mechanical slotted metal strip memory". These were not stored program computers where the program is executed entirely out of main memory; rather, then program was read from a punched tape reader (Z1 and Z4) or punched card reader (Z2). The memory was used primarily for data, but it was randomly addressed.
The first clue that Z1 memory was randomly addressed is seen in this block diagram from The Z1: Architecture and Algorithms of Konrad Zuse’s First Computer, p. 4:
This illustration from p. 11 shows the working of a memory bit:
Figure 9: One mechanical bit in the memory. The pin can be stored in the zero or one position. Its position can
Diagram 9(a) shows two stored bits. In step 9(b), a control plate moves the pins up. In step 9(c) the
horizontal actuated plate is pusehd (lower bit) or not (upper bit) by the stored bit and the clocked
plate. In step 9(d) the bits are moved back to their original position, where the vertical control plate
can bring them to position 9(a). Reading a bit from this type of memory was a destructive process.
After reading a bit, the contents of the bit cell had to be restored by the movement back shown in
The Z1 and the Z2 had the same instruction set, and that instruction set could randomly address the memory. From https://history-computer.com/konrad-zuse/
The instruction set of the Z2 consisted of the same eight instructions of Z1.
and two of the instructions that randomly addressed memory:
- Two instructions for reading/writing from/to memory:
•Pr z—read the contents of the memory cell into Registers R1 or R2
•Ps z—write the contents of Register R1 to the memory cell
The memory of the Z3 was randomly addressed, as seen in the instruction set documented in this RC answer:
- Ablesebefehl, A n (e.g. A 17) - reads a memory cell into R1...
- Speicherbefehl, S n (e.g. S 18) - stores R1 in to a memory cell.