SPDR, SPCR etc vs Port bits

I have read through the reference material about the ports: http://www.arduino.cc/en/Reference/PortManipulation and it made sense. It reinforced what I see in the spi.h file when it references PORTB and that port's associated bit registers.

What I don't understand is their connection with the hardware registers like SPDR and SPCR. In other words, if I am using two separate ports' registers and they both are using the system registers, how is all that kept straight? If there is a link someone could point me at, that would be great.

Thanks Ray

Look at the data sheet for the processor. That outlines the special purposes resisters like the SPI and the general I/O registers.

Basically when an output pin is controlled by some of the peripheral hardware like UART, A/D and so on the basic I/O port is locked out and will no work. Sometimes however, it is still enabled and you have to be careful in the software not to address port bits and mess up what the special hardware is doing with it.