程序计数器PC(program Counter) 程序计数器在物理上是独立的,它不属于特殊内部数据存储器块中。PC是一个16位的计数器,用于存放一条要执行的指令地址,寻址范围为64kB,PC有自动加1功能,即完成了一条指令的执行后,其内容自动加1。PC本身并没有地址,因而不可寻址,用户无法对它进行读写,但是可以通过转移、调用、返回等指令改变其内容,以控制程序按我们的要求去执行。
累加器ACC(Accumulator) 累加器A是一个最常用的专用寄存器,大部分单操作指令的一个操作数取自累加器,很多双操作数指令中的一个操作数也取自累加器。加、减、乘、除法运算的指令,运算结果都存放于累加器A或AB累加器对中。大部分的数据操作都会通过累加器A进行,它形象于一个交通要道,在程序比较复杂的运算中,累加器成了制约软件效率的“瓶颈”,它的功能较多,地位也十分重要。以至于后来发展的单片机,有的集成了多累加器结构,或者使用寄存器阵列来代替累加器,即赋予更多寄存器以累加器的功能,目的是解决累加器的“交通堵塞”问题。提高单片机的软件效率。
| 表2特殊功能寄存器 | 标识符号 | 地址 | 寄存器名称 | ACC | 0E0H | 累加器 | B | 0F0H | B寄存器 | PSW | 0D0H | 程序状态字 | SP | 81H | 堆栈指针 | DPTR | 82H、83H | 数据指针(16位)含DPL和DPH | IE | 0A8H | 中断允许控制寄存器 | IP | 0B8H | 中断优先控制寄存器 | P0 | 80H | I/O口0寄存器 | P1 | 90H | I/O口1寄存器 | P2 | 0A0H | I/O口2寄存器 | P3 | 0B0H | I/O口3寄存器 | PCON | 87H | 电源控制及波特率选择寄存器 | SCON | 98H | 串行口控制寄存器 | SBUF | 99H | 串行数据缓冲寄存器 | TCON | 88H | 定时控制寄存器 | TMOD | 89H | 定时器方式选择寄存器 | TL0 | 8AH | 定时器0低8位 | TH0 | 8CH | 定时器0高8位 | TL1 | 8BH | 定时器1低8位 | TH1 | 8DH | 定时器1高8位 |
|