单片机里的code xdate date 分别代表什么东东

2024-11-17 19:35:48
推荐回答(4个)
回答1:

code 指定数据是存储在代码区,数据是在编程的时候跟代码一起写入代码存储器,运行过程中不能改变
xdata 指定数据是存储在外部数据存储器了
data 指定数据存储在内部低128字节数据存储器里,如果变量不指定存储位置,默认就是data型,这部分存储器寻址速度最快
idata 指定数据存储在内部低256字节数据存储器里,但51只有128字节内部RAM,52才有256字节
pdata 指定数据存储在外部低256字节数据存储器里,这时候寻址用8位寄存器R0和R1,而不用16位的DPTR,寻址速度比xdata快

回答2:

这些都是C51中的保留关键字。
code、xdata、data 都是存储类型的声明。

code 是声明存放在程序存储器里。
xdata 是声明片外数据类型的声明,同时在访问该类型的数据的时候是使用MOVX访问。
data 是片内RAM的低128位数据存储声明,一般在keil中C51中,data是默认变量的声明类型。

个人邮箱是:
pptt1845@163.com
有什么不懂的地方,可以互相交流。

回答3:

存储类型的声明

code 是声明存放在程序存储器里,单片机上的flash多大,code段就有多大
xdata 是声明片外数据类型的声明,片外存储器上的变量
data 是片内RAM的低128位数据存储声明,速度最快,但区域较小,经常不够用

回答4:

这是C51的东西吧。
code 程序代码段,这个限定你写的代码放在程序存储空间
XDATE 外部数据空间
DADE 内部数据空间 128个字节的片上空间