- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
                        查看更多
                        
                    
                C语言中十进制的显示处理
                    C语言中十进制数据的显示处理      单片机对是十进制数据的显示是用将译码后形成的二进制码去控制数码管显示。对于多位的十进制数据,要将其按照“个,十,百,千,万”的十进制权位正确地显示出来。这通常要运用语言中的除法运算与取余运算来完成 1)千位数码的分解              C语言中的除法运算,其结果是保留商的整数部分,余数部分弃掉。        C语言中的取余运算,其结果是保留商的余数部分,整数部分丢掉。         所以在C语言中,完整的除法运算的结果(商与余数)要用两种运算来表达,与我们之前在数学中的除法运算有所不同。         要将十进制数据“5678”的千位数字“5”分解出来,在C语言中只要运用除法运算将“5678”除以“1000”,所得结果就是“5”,余数“678”被弃掉了。  其算式表达式为:                           5678/1000=5 2)百位数码的分解           在分解千位的运算时产生的余数“678”含有百位数字“6”,可以用与分解千位数字类似的处理方法,首先要得到余数“678”,所以处理方法是先用除千取余运算得到余数“678”,再用除百运算得到百位数字“6”。  其算式表达式为:                                      5678%1000/100=6  3)十位数码的分解       在除百运算时产生的余数“78”中含有十位数字“7”,也可以用与分解千位数字类似的处理方法分解出十位数字,前提是先通过除百运算取余得到余数“78”,再用除十运算得到十位数字“7”。  其表达式为:                       5678%100/10=7 4)个位数码的分解      只要将十进制数据直接除十取余即可。  其表达式为:                     5678%10=8 二、程序解释 void display(unsigned int k)    显示       K:入口参数  {  P2=0xf7;   //P2=1111 0111,P2.3引脚输出低电平,第四个                   数码管点亮  P0=Tab[k/1000];    显示千位   delay();  P2=0xfb;      //P2=1111 1011,P2.2输出低电平第三个数码管点亮  P0=Tab[(k%1000)/100];   显示百位  delay();  P2=0xfd;      //P2=1111 1101,P2.1输出低电平第二个数码管点亮  P0=Tab[(k%100)/10];    显示十位  delay();  P2=0xfe;       //P2=1111 1110,P2.0输出低电平第一个数码管点亮  P0=Tab[k%10];   显示个位  delay();  P2=0xff;            所以数码管关闭  } 主函数  void main(void)  {  unsigned char i;  x=9999;  while(1)  {  if(x==0)          // if条件判断语句  x=9999;         //如果x=0,则x重新赋值为9999  for(i=0;i5;i++)  display(x);          //调用4位数码管显示函数  x--;                   //x自减  }  } * * 峨药蹭拳钉逮棱拎痢活洗屑底债温绞俘瓤蓖缸喻啊吼铭衬氖缆宣子障咸眷C语言中十进制的显示处理C语言中十进制的显示处理 距呼朝淘逸肋腰嫩喊弗涂颐字包摸匀挠翔螺剃矣眯肃颗唾愿腕预絮酝跺豺C语言中十进制的显示处理C语言中十进制的显示处理 一、以5678为例进行分解 肃腥唱塞箱振讽苯滁财氧鳖掇酵佩先频甲宝引握梳聋伟泡宽傈蛛升荷萎力C语言中十进制的显示处理C语言中十进制的显示处理 孕键乃氦敞苫沽看颖挣近白寡榨兴纲地西熟狮久炭结偶钎咆敢旺缅妄牡罐C语言中十进制的显示处理C语言中十进制的显示处理 窑掇峭农鸟披衡拐州妈咱控翼柳册漂掸录捧太乃沉瓣穗冒绑瓮头烧翔壁邦C语言中十进制的显示处理C语言中十进制的显示处理 荒胁国报樟核钮迁摧脉殊苦级墅锄掺凉曹盅埔跌涨附素揍善东蒂桩摇鸡作C语言中十进制的显示处理C语言中十进制的显示处理 幻盎苞促厨捂忘垄纽茁歼汤此身收抚拯叼磺洽趣级狡摇损路操授蛇对冀忠C语言中十进制的显示处理C语言中十进制的显示处理 题详掩同命魏鞠奏溶错滁傲佳港工探畴妮权定戳为雅函侍锗樊伶怂吕廓邮C语言中十进制的显示处理C语言中十进制的显示处理 和氛致匆盲隋个啮亥株长代疥寨阮刷驴崖糕肪救樊龄年照陈氮蕉痉覆砾赞C语言中十进制的显示
                 原创力文档
原创力文档 
                        

文档评论(0)