如果是用c语言编程,可以不必注意这些问题,因为编程软件会自动帮你分配,也不容易出错!!
数据指针DPTR是80C51中一个功能比较特殊的寄存器。从结构DPTR是一个16位的特殊功能寄存器,其高位字节寄存器用DPH表示,低位字节寄存器用DPL表示,DPTR既可以作为一个16位的寄存器来处理,也可以作为两个独立的8位寄存器来使用。
主要功能是存放16位地址,作为片外RAM寻址用的地址寄存器(间接寻址),故称数据指针。
访问片外数据存储器的指令为:MOVXA,@DPTR读MOVX@DPTR,A写DPTR的另一个作用是变址寻址,访问程序存储器,做查表指令:如:以dptr为基址寄存器,将dptr的内容与累加器a的内容相加得到变址地址movca,@a+dptr;(a)<-----((a)+(dptr)) 参考资料: http://www.cleaner123.com/