通用寄存器Rn的作用提现在“通用”二字,应用与一般编程过程中,具体可由编程人员指定其含义,其主要有以下几个:1.将运算结果直接存放在寄存器中,免去转存到存储器的时间,因此可以提高程序的运行速度;2.作为CPU运算过程中的数据和指令的存放单元,为程序设计提供方便;3.由于累加器ACC和工作寄存器Rn在指令中不单独占用存储单元,故可以减少程序长度。特殊功能寄存器规定了特定的含义,编程时不能随意使用,要根据其规定的含义使用。
Rn为工作寄存器组,同一时刻,只有一组在运行,具体哪个运行,有PSW(状态寄存器决定--可以自己设置)特殊功能寄存器包括21个,其中有P0、P1、P2、P3(存放 I/O数据),PSW(状态寄存器),ACC(累加器),B(乘法寄存器),SP(堆栈指针),DPL(DPTR低位),DPH(DPTR高位),PCON(电源控制,波特率选择),TCON,TMOD,TL0,TH0,TL1,TH1(定时中断参数),IE(中断设定),IP(中断优先),SCON(串口中断),SBUF(串行缓冲区)
Rn(n=0~7)是工作寄存器,其中R0、R1可做地址指针寄存器特殊寄存器有自己特定的功能,每个值都有相对应的功能
无论啥数据,分配地址时都需用到通用寄存器,进行运算,及地址分配!地址分配时需到根据寻址的方式不同,去做不同的运算!不管是存还是取只要涉及到数据分配就会用到R0~~~R7 特殊寄存器,一般都是自己特定的!功能嘛!研发人说了算哟!