uint POW(uchar i,j)
{
uchar k;uint l,a=i;
for (k=0;k<=j;k++)
{
a*=i;
l=a/100;
}return l;
}
uchar math(uchar i,j,uint k)
{
uchar l;
uint a;
a=POW(10,i-(j+1));
l=k/a%(j*10);
if(l>9) l%=10;
return l;
}
void SHOW(uchar x,y,uchar *p,uint q,uchar sz,color)
{
uchar i=0,k=0;
while (*p)
{
if(*p==32) CHN(x,y+i*8,8,&nAsciiDot[(math(sz,k,q)+16)*16],k+1==color),k++;
else
{
CHN(x,y+i*8,8,&nAsciiDot[(*p-32)*16],0);
}i++;p++;
}
}
这是本人编的一个小程序段。经过编译发现占用的 30个字节的DATA空间
《连接器提示》 Program Size: data=100.6 xdata=0 code=4735
本人百思不得其解。这明明不是很长的程序为什么这么占空间。。求大神解释。。 |