4 ms·
Okay I get it now, upper 8bit always hard wired to be 0x01 which is also why lies in page 1. The stack pointer deals with lower 8bits from 00 to FF. Many thank
by SairajK19 3y ago
Okay I get it now, upper 8bit always hard wired to be 0x01 which is also why lies in page 1. The stack pointer deals with lower 8bits from 00 to FF.
Many thanks!
- simonblack 3y agoThat also restricts the stack to only 256 bytes, or 128 16-bit words. I wonder how that affects the use of a stack-machine programming language like C. Especially when running a program like 'Towers of Hanoi'. Wouldn't the 6502 run out of stack-space?
- SairajK19 3y agoYes, seems like you can easily run out of stack with 256 bytes. Maybe they used their own secondary stack along with the hardware stack. I wonder how big is modern 64bit cpu stack.
- simonblack 3y agoI wonder how big is modern 64bit cpu stack. In practical terms, I would consider it infinite. I doubt that we'd ever get to the point where we'd need even one-gigabyte of stack-space. And most modern machines have many, many gigabytes of RAM, as well as terabytes of disk storage that can be used as swap/stack/heap/cache space.