I am reading about the Stack Pointer which I see is one to the special function register of the CPU. I am trying to relate these register to my under standing of Port 1. I understand Port 1 has multiple 8 bit registers. Each register holds the place of one byte in memory. For example P1IN may be 0x020. Each one of the bits in each register relate to one of the pins and the value can be either a 1 or a 0. That's clear to me.
As for the Stack Pointer I am getting lost with how it works. Looking in the Family User's guide I see it is a 20 bit register which means that I have 20 places in Binary which can either be a 1 or a 0. I see the function of this register is to hold the address of the instructions which are next in line. I don't see how the the 20 bits of the stack pointer relate to these addresses. I understand the Stack Pointer is hard wired to 0 so that is takes even words, but how is it taking multiple words if it is only 20 bits or 1.5 words. I am attaching an image from the book I am reading which shows the addresses being added. I do not understand how the register has so many bytes 0x0280, 0x027e etc.?
Any clarification would be greatly appreciated.
Take care,
Jon