51单片机data,idata,xdata,pdata的区别

来源:互联网 发布:海岛奇兵菊花升级数据 编辑:程序博客网 时间:2024/04/17 05:09

在51系列单片机中data,idata,xdata,pdata的区别:

data:固定指前面0x00-0x7F的128byte的RAM,可以用ACC直接读写的,速度最快,生成的代码也最小。
idata:固定指前面0x00-0xFF的256byte的RAM,其中前128byte和data的128byte完全相同,只是因为访问的方式不同。idata是用类似C中的指针方式访问的。汇编中的语句为:MOX  ACC,@Rx.(不重要的补充:c中idata做指针式的访问效果很好)
xdata:外部扩展RAM,一般指外部0x0000-0xFFFF空间,用DPTR访问。
pdata:外部扩展RAM的低256byte,地址出现在A0-A7的上时读写,用movx ACC,@Rx读写。
单片机C语言unsigned char code table[] code 是什么作用?
code:定义的数据要放在ROM(程序存储区)里面,写入后就不能再更改,其实是相当与汇编里面的寻址MOVX(好像是),因为C语言中没办法详细描述存入的是ROM还是RAM(寄存器),所以在软件中添加了这一个语句起到代替汇编指令的作用,对应的还有data是存入RAM的意思。
0 0
原创粉丝点击