导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→C的编译问题[rain_cxp]

 *第24158篇: C的编译问题

  
楼 主:rain_cxp 2004年7月27日15:46
 C的编译问题
以下是我的C程序,奇怪为什么它一编译,函数调用中的参数就都跑到外部存储器中去了?
对C了解不多,请大家指点
main()
{uchar data i;
inimcu();
iniPCF8563();
delay(200);
WRonebyte(0X59,0x7103);
delay(10);
i=RDonebyte(0x0103); 
delay(1);
dsptime();
}

void inimcu(void)
{  TMOD=0x21;
   TL1=0xfa;           //22MÓÃF4H,11MÓÃFAH  
   TH1=0xfa;
   TL0=0xcc;             /*  1ms     */
   TH0=0xf8;             
   SCON1=0x50;  /*  ·½Ê½1   */
   SCON0=0x50;
   PCON=0x80;          
   TR1=1;
   TR0=1;
   IE=0x00;                   
}

void delay(uchar data  n)
{uchar data i,j;
for(j=0;j  <n;j++)
for(i=0;i  <255;i++)
{;;} 
}
以下是编译后的一部分汇编,
02C1    1203BE          LCALL  #inimcu(P:03BE)
02C4    1200CB          LCALL  #iniPCF8563(P:00CB)
02C7    7803            MOV    R0,#03H
02C9    74C8            MOV    A,#0C8H
02CB    F2              MOVX   @R0,ACC     (怎么会在外部呢??)
02CC    1203A2          LCALL  #delay(P:03A2)

  
2楼:appleboyfu 2004年7月29日15:45
 跟编译器设置有关吧
跟编译器设置有关吧,如果c51编译器的存储器模式选为large ,变量默认的存储空间在外部数据存储区
  
3楼:rain_cxp 2004年8月4日15:09
 果然是编译器设问LARGE了,谢谢了

>>>>>>对该主题发表你的看法

本主题贴数3,分页: [第1页]


[上一篇主题]:VxWorks 的默认登陆用户名和密码是什么??

[下一篇主题]:我要跳楼了!!!25045的问题!急死我了!!!!!