工作寄存器在单片机里的作用
1、在工作时需要处理大量的数据,这些数据有些要用来运算,有些要反复调用,有些要用来比较校验等。这时单片机就需要有这样的位置来暂时存放这些数据,以方便后面数据的处理,而单片机提供暂存数据的地方就是工作寄存器。
2、单片机的工作寄存器
AT89S5l/52单片机的工作寄存器有四组(O~3),每组有8个(RO~R7),总共是32个工作寄存器,安排在片内教据OOH~1FH,我们在使用这四组寄存器具体要选择哪一组,是通过程序状态字PSW中的RS1,RSO的设置来选取使用哪一组工作寄存器。单片机复位后是选中第0组为当前工作寄存器。四组工作寄存器具体选择方法看下表。
RS1和RSO的组合就决定选取哪一组工作寄存器。在程序编写的时候如需要用到多组工作寄存器时就通过赋于RS1和RSO不同的值即可。
组 | RS 1RS2 | R0 | R1 | R2 | R3 | R4 | R5 | R6 | R7 |
第0组 | 0 0 | 00H | O1H | O2H | 03H | O4H | O5H | 06H | 07H |
第1组 | 0 1 | 08H | 09H | OAH | OBH | OCH | ODH | 0EH | OFH |
第2组 | 1 0 | 10H | 11H | 12H | 13H | 14H | 1SH | 16H | 17H |
第3组 | 1 1 | 18H | 19H | 1AH | 1BH | 1CH | 1DH | 1EH | 1FH |