3 ms·
The register partitioning (eight "data" registers d0-d7 and eight "address" registers a0-a7, with a7 being the stack pointer) was probably the biggest wart.
by bewaretheirs 3y ago
The register partitioning (eight "data" registers d0-d7 and eight "address" registers a0-a7, with a7 being the stack pointer) was probably the biggest wart.
- Findecanor 3y agoI like to see it the other way around: the partitioning was a smart way of doubling the number of registers that could be expressed in a fixed-length 16-bit instruction word. There are many computational instructions that don't make much sense on addresses, especially if you have rich address modes to begin with. And if you'd need to, there was the "movea" instruction for copying between the register files.