单片机用C语言编写的程序说定义的数据都存放在哪了? 向下面的一段定义的“U" 和“r”
#include<reg52.h>#defineuunsignedint#definerunsignedcharsbitdu=P2^6;sbitwe=P2^7;rnum;...
#include<reg52.h>
#define u unsigned int
#define r unsigned char
sbit du=P2^6;
sbit we=P2^7;
r num;
r code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
void delay(u );
宏定义这个我知道,但是具体是定义的单片机的ROM里面的地址单元,还是RAM单元呢? 展开
#define u unsigned int
#define r unsigned char
sbit du=P2^6;
sbit we=P2^7;
r num;
r code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
void delay(u );
宏定义这个我知道,但是具体是定义的单片机的ROM里面的地址单元,还是RAM单元呢? 展开
5个回答
2012-12-11
展开全部
num 放RAM中;
table[]放在ROM中
u,r 就是代表unsigned int,unsigned char意思,不占空间
table[]放在ROM中
u,r 就是代表unsigned int,unsigned char意思,不占空间
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
U和R不占程序空间。在编译器对其编译过程中,会将#define宏定义进行代替,宏定义会被代替而不产生任何的空间消耗
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这段程序里面的u和r是宏定义,就是这段
#define u unsigned int
#define r unsigned char
u指的是 unsigned int型
r指的是 unsigned char型
#define u unsigned int
#define r unsigned char
u指的是 unsigned int型
r指的是 unsigned char型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#define u unsigned int
#define r unsigned char
这个叫宏定义
建议楼主看看谭浩强的那本《C语言程序设计》
#define r unsigned char
这个叫宏定义
建议楼主看看谭浩强的那本《C语言程序设计》
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
ram里面啊
追问
但是单片机的RAM空间很小,而且大部分寄存器都用在作特殊寄存器用啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询