4 ms·
The old IMB 360 use a 'display' where you just chose a register by convention, pointed it at some memory then did your own linked list on call and return. In f
by JoeAltmaier 3y ago
The old IMB 360 use a 'display' where you just chose a register by convention, pointed it at some memory then did your own linked list on call and return.
In fact call was really jump-and-link(?) where you got the return address in a register. Anticipating that if your subroutine took more than a little code you'd just store it temporarily in your allocated 'display'.
No push/pop at all! Unless you wanted to write it that way. You were just on your own.
- wglb 3y ago> In fact call was really jump-and-link(?) Yes, technically "BALR" for Branch and Link Register. (I knew a guy who had been a 360 assembly language programmer who called his consulting firm BALR consulting, referring to that instruction.) Interestingly, Gene Amdahl was asked why the 360 architecture didn't have a stack. "Too expensive" he said. I found this amusing at the time you could buy an 8085 for $5 retail quantity one. Perhaps he meant culturally expensive?
- JoeAltmaier 3y agoThe ol 360 used core memory if I recall. A stack would likely have meant, another whole cabinet on your computer room floor!
- microtherion 3y agoJump and Link also carried over to POWER and PowerPC