用c语言编程,求大神 5
将内部RAM30H单元存放的2字节二进制数转换为十进制数存于21H为首的单元中,长度存放于20H单元中...
将内部RAM30H单元存放的2字节二进制数转换为十进制数存于21H为首的单元中,长度存放于20H单元中
展开
2个回答
展开全部
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
uchar data *d1,*d2;
uint dat;
main()
{
uchar temp[5],i,l;
d1=0x30;
d2=0x20;
dat=*d1*256+*(d1+1);
temp[0]=dat/10000;
temp[1]=dat%10000/1000;
temp[2]=dat%1000/100;
temp[3]=dat%100/10;
temp[4]=dat%10;
for(i=0;i<5;i++)if(temp[i]!=0)break;
l=5-i;
*d2=l;
d2++;
do{
*d2=temp[i];
d2++;
i++;
}while(i<5)
while(1);
}
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询