Recently i am confused between the difference between ram and cpu registers.I have studied 8051 arch. and in that we had addressing for cpu registers in ram level (e.g. the adddress for R0 register in bank 0 is 00h ). But in arm architecture i am confused whether cpu registers have address like that in 8051 or are they addressed using only their name like R0,R1 e.t.c.
RAM is external, while registers are internal to the logic unit. Even if the RAM is integrated into the CPU chip, it presents internally a separate physical unit on the die. The general rule is still valid in these cases: registers are for fast and specialized access (arithmetic registers, or control registers), while RAMs are general data storage units.