单片机代码DBYTE[30]是什么意思

高分请问下,单片机代码DBYTE[30]是什么意思
最新回答
薇颜浅笑

2024-04-29 01:00:02

只是一个宏定义
DBYTE[30] 就是你定义的一个数组中的元素,简单的说就是用宏定义#define命名DBYTE[30]为g
追问
这个DBYTE[0x30-0x40]十一个数的随意赋值不会的影响任何端口的i/o使用,也不会影响其他的定时中断吧??
追答
中断的端口是你自己定义的,不冲突就行,数组元素其实都对应一个指针
风花雪月夜

2024-04-29 00:48:10

DBYTE[0x30]只是个数组而已

在51系列中data,idata,xdata,pdata的区别
data:固定指前面0x00-0x7f的128个RAM,可以用acc直接读写的,速度最快,生成的代码也最小。
idata:固定指前面0x00-0xff的256个RAM,其中前128和data的128完全相同,只是因为访问的方式不同。idata是用类似C中的指针方式访问的。汇编中的语句为:mox ACC,@Rx.(不重要的补充:c中idata做指针式的访问效果很好)
xdata:外部扩展RAM,一般指外部0x0000-0xffff空间,用DPTR访问。
pdata:外部扩展RAM的低256个字节,地址出现在A0-A7的上时读写,用movx ACC,@Rx读写。这个比较特殊,而且C51好象有对此BUG,建议少用。但也有他的优点,具体用法属于中级问题,这里不提。
追问
DBYTE函数功能是什么 返回值又是什么
清羽慕

2024-04-29 01:29:32

你看一下〈absacc.h〉这个文件,里面有DBYTE的定义,是一个宏定义。