77问答网
所有问题
data在C51中怎么不能用啊?
如题所述
举报该问题
推荐答案 2012-08-14
楼上答错了哦,data不是数据类型,是keil编译器的一个关键字,用来声明变量存储的位置的。
若一个变量声明为data,那么它就是存放在单片机低128byte的ram区的。
数据类型是char int long这些,本质上就是用来声明一个变量是占用多少字节的存储空间的。
举个例子,int a;int bdata a;int data a;a这个变量都是整形,占用两个字节的存储空间,但通过加关键字“bdata”和“data”声明了之后,存放的位置会比较确定。不加该关类键字的话,编译器有可能把它分配在bdata区或者data区。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://77.wendadaohang.com/zd/W3WvGIIYN.html
其他回答
第1个回答 2012-08-14
因为 data 在C51中是一种数据类型,你可以定义一个变量为data类型的,还有idata,bdata,xdata,这些数据类型,对于小型程序来说,一般没必要用,但是在复杂的程序中定义这些数据类型很有必要。希望对你有帮助。
相似回答
...
C51
程序出现警告:UNRESOLVED EXTERNAL SYMBOL SYMBOL:
DATA
求...
答:
警告L1:
无法
解析的外部符号 数据符号:模组::test.obj对照(CK_TEST)警告L2:未解决的外部参考 数据符号:模组::test.obj对照(CK_TEST)地址:0099H 程序大小:数据=19.0 XDATA=0代码= 521 创建hex文件从“CK测试”...“对照试验” - 0错误(次),2个警告。建议把程序贴出来,我给你分...
c语言单片机。为什么这个程序,形参为
data
时程序出错。改成其它的就对...
答:
在keil
C51
里,
data
是关键字,表示变量存储到RAM区
...变量时总是有
data
,idata,xdata等限定词,可以
不用
吗?有什么好处吗...
答:
data
: 固定指前面0x00-0x7f的128个RAM,可以用acc直接读写的,速度最快,生成的代码也最小。idata: 固定指前面0x00-0xff的256个RAM,其中前128和
dATa
的128完全相同,只是因为访问的方式不同。idata:是用类似C中的指针方式 访问的。汇编中的语句为:mox ACC,@Rx.(不重要的补充:c中idATa做指针式的...
在C51中
,定义一个数组时,为什麽要用code这个词,而
不用data
或其它的呢...
答:
数组前不加“code”或“
data
”,则默认将数组存放在程序存储器中;code 指定数据是存储在代码区,数据是在编程的时候跟代码一起写入代码存储器,运行过程
中不能
改变;xdata 指定数据是存储在外部数据存储器了;data 指定数据存储在内部低128字节数据存储器里,如果变量不指定存储位置,默认就是data型,这...
keil
c51中
sprintf一
使用
就报错?
答:
DATA
区的RAM
使用
太多了,错误信息说DATA溢出了。113个字节就溢出,看样子,你用的是89
C51
,你把使用的芯片改成89C52就可以了。
KEIL
C51
出现的问题 到底是什么情况 老是提示地址空间溢出
答:
说明
data
空间已经不够用,原因是你可能有好多函数,而函数内部的局部变量又没有定义其空间,这种情况下,系统会将变量分配到你在Otions for Target 对话框里的设置的空间。如果你在下图所示中的 Memory Model 里设置成 Small:variables in
DATA
,则DATA空间很快便用完,导致data空间不够用。解决的办法有...
单片机
C51
编程中b
data
的问题
答:
3、
不能使用
的场合:
C51中
没有位变量指针一说,比如 bit b
data
*flag1;的定义就是非法的。位变量也不能定义位数组,比如 bit bdata flag[8]也不允许。另外,返回值采用位变量有两种情况也是不允许的:一种是在函数中禁止使用中断时,第二则是函数中有类似using x这种寄存器组切换时。关于这两种...
大家正在搜
相关问题
keil C51中的data怎么设置成大一点的值?
51单片机,keilc51,如何使用data变量超过128怎...
C51中的data和idata有什么区别,谢谢了
【C51】SBUF中的数据无法提取出来怎么解决?
单片机中“DATA”是什么意思?
在C51中,定义一个数组时,为什麽要用code这个词,而不用...
keil里data字段被超出怎么办?
在keil中怎么在已经建好的工程更改单片机型号?在datab...